博客专栏  >  综合   >  UNP Notes

UNP Notes

好吧,我其实已经将这本书读过一遍啦,不过现在正在读书,用到这本书的知识的时候非常少,所以还是等到自己真正需要这个东西的时候再来更新吧!

关注
0 已关注
16篇博文
  • Ubuntu 16.04虚拟网络设备tun安装

    Ubuntu 16.04虚拟网络设备tun安装最近编写网络程序,需要用到tun模块,但是官方给的发行版中压根就没有这个模块.不信的话,你可以测试一下:root@ubuntu:~# modinfo tu...

    2017-04-20 21:23
    430
  • 开始读redis的源码了

    Redis是一个很简单的nosql类型的数据库,代码量相对来说是比较少的.但是代码风格确实比较漂亮. 我打算花一段时间剖析一下它的代码,不光是看啦,看的话,收获是不大的.我打算从Redis那纷繁复...

    2016-11-24 15:54
    613
  • 一起来写ftp server 03 -- 加强版本

    这一次的版本我们在第一版的基础上添加了一些有意思的东西,增强了我们的功能.下载限速和上传限速代码的实现里有一些很有意思的地方,下载限速和上传限速就是其中一例,这些东西听起来非常高大上,可是如果你真的做...

    2016-11-15 22:42
    335
  • 一起来写ftp server 02 -- 一次失败的尝试

    上一个版本之中,最基本的功能已经实现了,但是可以明显地看得到, CmdHandle这个类过大,而DataHandle这个类又过小,所以,我想平衡一下,将CmdHandle这个类的数据传输部分分散至Da...

    2016-11-15 21:59
    265
  • 一起来写ftp server 01 -- 简易版本

    一些坑,踩了就好了. 写这个ftp server只是为了练一下手,写这种文章只是想记录一下我在编写这个ftp server的过程中的一些想法和收获.虽然编写这个玩意有点耗时,但是有一些坑,你不踩,你永...

    2016-11-15 21:27
    530
  • 一起来写web server 09 -- 最终版本

    这次的代码是在前一次代码的基础上做一些点滴的修改.实现更好的封装,更漂亮的抽象.同时也是我们这个web server的最后一个版本了.这次的版本应该修改的幅度是最大的.EPOLLONESHOT 即...

    2016-11-04 14:37
    417
  • 一起来写web server 08 -- 多线程+非阻塞IO+epoll

    到了多线程,一些东西就变得耐人寻味了. 这个版本是在前面单线程epoll的基础上引入了线程池,当然不是前面玩具一样的线程池,而是一个通用的组件,生产者消费者队列.生产者消费者队列生产者消费者问题是操作...

    2016-11-04 10:24
    426
  • 一起来写web server 07 -- 单线程非阻塞IO加强版本

    这次的这个版本相对于前面的第6个版本有些许加强,那就是将epoll由LT模式变成了ET模式. 对于采用了LT工作模式的文件描述符,当epoll_wait检测到其上有事件发生并且将事件通知应用程序后...

    2016-11-04 09:24
    349
  • 一起来写web server 06 -- 单线程非阻塞IO版本

    阻塞IO的效率是在是低下,你如果要写高性能的web server的话,你必须使用非阻塞IO.非阻塞IO的读写在谈到非阻塞IO之前,必须先谈一谈阻塞IO,在网络编程中,我们假设有一个监听套接字的sock...

    2016-11-04 08:44
    1278
  • 一起来写web server 05 -- 多线程进阶版本

    这个版本的web server比第4版稍微做了一点改进,那就是由主线程统一接收连接,然后连接的处理由子线程来完成.因此,这里就引入了条件变量以及同步互斥的问题.同步机制muduo库中有一个关于同步机制...

    2016-11-04 01:22
    235
  • 一起来写web server 04 -- 线程池版本

    从这个版本开始,后面的代码差不多是越来越难啦.这个版本,我们主要是要实现一个线程池版本的web server.这个版本的设计出自UNP.思想思想非常简单,那就是父线程首先构建n多子线程,这些子线程全部...

    2016-11-04 00:33
    384
  • 一起来写web server 03 -- 多线程版本

    一起来写web server 03 – 多线程版本 错误的代码和正确的代码总是非常相似的! 好吧,我们继续开干,这一次,我们来写一个多线程版本的web服务器.这次代码的思想十分简单,那就是一旦从客...

    2016-11-03 23:54
    351
  • 一起来写web server 02 -- 多进程版本

    在UNP的第30章客户/服务器程序设计范式中提到了这种模型.主要的思想这种模型的思想非常简单,具体来说,就是,没当用户connect到来之后,立马fork一个子进程去处理连接,代码如下:int mai...

    2016-11-03 23:21
    457
  • 一起来写web server 01 -- 单进程版本

    csdn的markdown编辑器就是一个傻逼. web server的原理如果说,你仅仅是要实现一个简单的网页服务器,ok,这非常简单,用不了多少代码,因为它的原理实在是非常简单.客户端首先通过tcp...

    2016-11-03 12:52
    413
  • 一起来写web server 00 -- 准备工作

    这篇文章是一个序言,我接下来想用9篇文章来记录一下我逐步迭代完成的这个不算漂亮的作品.server我早已经写完了,代码最后执行的效果如下图所示: 上面的http://192.168.44.221:...

    2016-11-03 00:28
    381
  • 开始之前...

    摘要首先会更新一些书中用到的文件,如ourhdr.h,以及ourhdr.c文件,然后会简要地介绍一下里面用到的函数.书中用到的一些文件首先是要用到头文件:/*ourhdr.h*/ /*一下子写不了那么...

    2015-10-16 00:19
    635

img博客搬家
img撰写博客
img专家申请
img意见反馈
img返回顶部