-
Notifications
You must be signed in to change notification settings - Fork 0
/
rss2.xml
90 lines (44 loc) · 12.4 KB
/
rss2.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"
xmlns:atom="http://www.w3.org/2005/Atom"
xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
<title>study hard</title>
<link>http://example.com/</link>
<atom:link href="http://example.com/rss2.xml" rel="self" type="application/rss+xml"/>
<description>学点东西不容易</description>
<pubDate>Wed, 31 Jan 2024 12:15:27 GMT</pubDate>
<generator>http://hexo.io/</generator>
<item>
<title>小小的开始</title>
<link>http://example.com/2024/01/31/%E5%B0%8F%E5%B0%8F%E7%9A%84%E5%BC%80%E5%A7%8B/</link>
<guid>http://example.com/2024/01/31/%E5%B0%8F%E5%B0%8F%E7%9A%84%E5%BC%80%E5%A7%8B/</guid>
<pubDate>Wed, 31 Jan 2024 11:23:32 GMT</pubDate>
<description><p>&emsp;&emsp;学点东西可真不容易。想我一直以来的学习,都是跟着老师一步步走过来的,最然也有过自己的学习技巧,但大方向确实不需要我费脑筋,只需把眼前的东西学好就行。当我终于要靠自己决定学习方向和学习路线时,才发现这真不是一个简单的事情,往往不知道自己要学什么,也不知</description>
<content:encoded><![CDATA[<p>  学点东西可真不容易。想我一直以来的学习,都是跟着老师一步步走过来的,最然也有过自己的学习技巧,但大方向确实不需要我费脑筋,只需把眼前的东西学好就行。当我终于要靠自己决定学习方向和学习路线时,才发现这真不是一个简单的事情,往往不知道自己要学什么,也不知道自己要怎么学习,上网看看别人的经历经验,用到自己身上却总也行不通,或许计算机本身不太适合我,这是个同时需要逻辑思考与动手能力的学科。我自以为逻辑思考还算可以,但动手能力就真的不行了,每到写代码的时候,那些理论就无法转化为代码,在理论与实际之间总是隔了一层墙一般,而实践对我来说由如此困难,印象最深刻莫过于Linux系统,我已经不记得我当时在做什么了,只记得我要解决一个问题,然后在解决的过程中要用到什么工具还是要运行什么命令,然后这个工具和命令也报了错误,于是我先去解决这个错误,解决的过程中又出现了新的错误,如此循环,实在让人心累。或许也正是因为实践与理论相差太大,每当我想要去学点新东西时,不是实践拖累理论,就是理论拖累实践。当我看书时,因为不懂书中的实现,哪怕看着代码也很难理解它是怎么实现的,因为这些实践往往用到了其他理论,而我去学其他理论又会遇到同样的问题。当我想写点代码时,哪怕是照着代码抄都没办法抄好,因为我抄过来的代码往往运行不起来,或者结果错误,而我又不懂它的具体功能实现。这样相互拖累,导致我的学习进度一直提不上去,断断续续学了好几次,每次提升一点,没准还会掉下去。只能感叹学习真难呀,但哪怕是乌龟一样的速度,也终于让我爬了出来,这个月我照着代码写了web-server项目,虽然代码量很少,运行结果也有问题,但凭着以前琐碎的知识,总算是把它的大部分功能搞懂了,当我再看《Linux高性能服务器编程》这部书时,忽然有种豁然开朗的感觉。上大学,上研究生,在我的自学经历中这还是第一次有这种学会了的感觉。真不容易呀,可惜开窍的太晚,如果早几年,可能我的人生会不同吧。但过去的就过去吧,如今只希望这作为一个新的起点,可以让我学会更多的,不止计算机的知识。</p>]]></content:encoded>
<category domain="http://example.com/tags/%E6%97%A5%E8%AE%B0/">日记</category>
<comments>http://example.com/2024/01/31/%E5%B0%8F%E5%B0%8F%E7%9A%84%E5%BC%80%E5%A7%8B/#disqus_thread</comments>
</item>
<item>
<title>Linux高性能服务器编程</title>
<link>http://example.com/2024/01/31/Linux%E9%AB%98%E6%80%A7%E8%83%BD%E6%9C%8D%E5%8A%A1%E5%99%A8%E7%BC%96%E7%A8%8B/</link>
<guid>http://example.com/2024/01/31/Linux%E9%AB%98%E6%80%A7%E8%83%BD%E6%9C%8D%E5%8A%A1%E5%99%A8%E7%BC%96%E7%A8%8B/</guid>
<pubDate>Wed, 31 Jan 2024 11:23:32 GMT</pubDate>
<description><div style="background-color: rgb(242, 242, 242)"><font face="楷体"><i>学如逆水行舟,不进则退;心似平原跑马,易放难收。</i></font></div>
<div style="background-color</description>
<content:encoded><![CDATA[<div style="background-color: rgb(242, 242, 242)"><font face="楷体"><i>学如逆水行舟,不进则退;心似平原跑马,易放难收。</i></font></div><div style="background-color: rgb(242, 242, 242)"><font face="华文行楷"><i>学如逆水行舟,不进则退;心似平原跑马,易放难收。</i></font></div><img src="/image/Linux高性能服务器编程.jpg" alt="Linux高性能服务器编程" style="width: 50%; height: auto;"><p>  Linux高性能服务器编程是第一本我认为读进去的一本书。这本书让我重拾了学习的信息。我要记录下来我阅读这本书的经历,留作纪念。(虽然对我来说这本书读的很通畅,但看其他人的评论,这本书可能不适合初学者入门。)</p><p>  我读这本书的契机是想要学习网络相关的知识,虽然我学这个的时候秋招都结束了,但学还是要学的。我上网找了一个相对简短web-server程序的代码,然后不管三七二十一,直接上手抄,在找的过程中去理解代码,但遇到不会的就跳过去。当然在这过程中不会一开始就找到对的代码,我上网搜了很久,也抄过几种代码,但当我大致浏览代码时,如果代码没有明确的分类和介绍(不需要多),或是没有运行结果,那我就会找下一个代码。于是终于让我找到一版合适的,动手抄了下来,别说,大部分代码都能理解。于是我初步对这个程序有了印象。</p><p>  当我想对代码和网络知识有更深入的了解时,我便深入去看代码的解析,于是在GitHub上找到了qinguoyi大佬的代码,我看了大佬对代码的解释,但愚笨如我根本没读懂,以前迷糊的地方现在还是迷糊。他那篇”小白视角:一文读懂社长的TinyWebServer”,我就是读不懂。为什么代码这么写?为什么这么写生效了?当时着实让人有些心灰意冷。</p><p>  好在柳暗花明又一村,在文章下面的推荐文件中出现了《Linux高性能服务器编程》一书,当然我一开始没看这本书,因为以前看书没有学成过。兜兜转转几次后,我还是下载了这本书,连带着也下了其他基本Linux网络书籍。看了才发现,原来我之前的代码就是从书上抄下来的。</p><p>  我没有从头看这本书,而是直接从第八章“高性能服务器程序框架”看起,reactor、proactor两种事件处理模式,半同步/半异步、领导者/追随者两种并发模式看的迷迷糊糊,但也大致有了个概念,直到有限状态机这一节,我才发现之前写的代码和书里的一模一样。顺着往下读,第九章的时候我了解了select/poll/epoll这几种系统调用和i/o复用,这一章有许多代码,几乎全部解释了我之前抄代码不懂的地方,读完这一章,我才明白自己写的代码是什么,这本书讲了什么。之后我便折了回去,从第五章开始看起,一直看到最后,这次看到顺畅了许多,许多不懂得地方上网搜搜资料就能改动,结合自己之前写的代码和书中的代码,终于理解了书中的内容。当看完了书的后半部分后,我才看了一到四章,这部分关于网络分层、IP、TCP的知识我在其他地方学过几遍,只有这一次结合着书本后面的知识理解了每一层在干什么,每一层的协议是什么。</p><p>  本书的精华自然是后半段,第五章介绍了如何调用函数进行网络连接,第六章是I/O函数,第七章我没细看,主要讲规范,第八张是承上启下,介绍了服务器模型,如何用之前介绍的函数建立服务器,该服务器要实现之后章节介绍的功能。第九第十第十一算是服务器要实现的功能。第十二章要将前三章的功能进行整合。第十三第十四介绍了多进程/多线程编程的问题,第十五则是前两章更进一步的应用。第十六、第十七则介绍了一些工具。本书的前半段介绍了基础协议,这几章给我的最大帮助就是它通过实例让我理解了这些协议具体是如何运作的。</p><p>  至此,整本书终于看完并学完了,不敢说百分百学透,至少能合格了。本书算是一个起点,让我燃起了读书的信心,希望自己能孜孜不倦,坚持下去。</p>]]></content:encoded>
<category domain="http://example.com/categories/Linux/">Linux</category>
<category domain="http://example.com/tags/%E5%AD%A6%E4%B9%A0/">学习</category>
<comments>http://example.com/2024/01/31/Linux%E9%AB%98%E6%80%A7%E8%83%BD%E6%9C%8D%E5%8A%A1%E5%99%A8%E7%BC%96%E7%A8%8B/#disqus_thread</comments>
</item>
<item>
<title>Hello World</title>
<link>http://example.com/2024/01/28/hello-world/</link>
<guid>http://example.com/2024/01/28/hello-world/</guid>
<pubDate>Sun, 28 Jan 2024 03:44:25 GMT</pubDate>
<description><p>Welcome to <a href="https://hexo.io/">Hexo</a>! This is your very first post. Check <a href="https://hexo.io/docs/">documentation</a> for</description>
<content:encoded><![CDATA[<p>Welcome to <a href="https://hexo.io/">Hexo</a>! This is your very first post. Check <a href="https://hexo.io/docs/">documentation</a> for more info. If you get any problems when using Hexo, you can find the answer in <a href="https://hexo.io/docs/troubleshooting.html">troubleshooting</a> or you can ask me on <a href="https://github.com/hexojs/hexo/issues">GitHub</a>.</p><h2 id="Quick-Start"><a href="#Quick-Start" class="headerlink" title="Quick Start"></a>Quick Start</h2><h3 id="Create-a-new-post"><a href="#Create-a-new-post" class="headerlink" title="Create a new post"></a>Create a new post</h3><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">$ hexo new <span class="string">"My New Post"</span></span><br></pre></td></tr></table></figure><p>More info: <a href="https://hexo.io/docs/writing.html">Writing</a></p><h3 id="Run-server"><a href="#Run-server" class="headerlink" title="Run server"></a>Run server</h3><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">$ hexo server</span><br></pre></td></tr></table></figure><p>More info: <a href="https://hexo.io/docs/server.html">Server</a></p><h3 id="Generate-static-files"><a href="#Generate-static-files" class="headerlink" title="Generate static files"></a>Generate static files</h3><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">$ hexo generate</span><br></pre></td></tr></table></figure><p>More info: <a href="https://hexo.io/docs/generating.html">Generating</a></p><h3 id="Deploy-to-remote-sites"><a href="#Deploy-to-remote-sites" class="headerlink" title="Deploy to remote sites"></a>Deploy to remote sites</h3><figure class="highlight bash"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">$ hexo deploy</span><br></pre></td></tr></table></figure><p>More info: <a href="https://hexo.io/docs/one-command-deployment.html">Deployment</a></p>]]></content:encoded>
<comments>http://example.com/2024/01/28/hello-world/#disqus_thread</comments>
</item>
</channel>
</rss>