TcpClient 在两种情况下会自动重连。1. Connector::connect 返回的 error 中需要重连;2. TcpClient::removeConnection 中判断需要重连;最终都会调用 Connector::retryvoid Connector::retry(int so...
分类:
其他好文 时间:
2015-11-09 12:31:02
阅读次数:
227
最近在学习muduo网络库源码,小结一下日期和时间计算。概念 GMT(UT)、UTC、AD、CE、BC等略。参考:http://www.hermetic.ch/cal_stud/jdn.htm 儒略日(Julian day number, 这里简称为JD)起始时间为GMT -4712-01-01(....
分类:
其他好文 时间:
2015-11-08 22:21:16
阅读次数:
262
方案0:accept+read/write,阻塞,一次服务一个客户。方案1:accept+fork,阻塞,采用多进程,长连接,并发性低,开销高,process-per-connection方案2:accept+thread,阻塞,采用多线程,长连接,并发性中,开销中,多连接互通,thread-per...
分类:
其他好文 时间:
2015-11-04 22:45:14
阅读次数:
276
一、简介Muduo(木铎)是基于 Reactor 模式的网络库。二、安装从github库下载源码安装:https://github.com/chenshuo/muduomuduo依赖了很多的库,所以在安装muduo之前应该安装这些库,包括:curl、c-ares、protobuf。前面两个在cent...
分类:
其他好文 时间:
2015-10-18 19:46:57
阅读次数:
346
根据上一次的测试,有缓存的日志类性能会更好。用到了time.h类函数,所以在linux下就要改动一下了,windows环境下写的。思路采用(参照muduo库的日志,不过认为他线程不安全,和没用缓存,就改造了下)1.有一个总的缓存,logboss,为一个恶汉模式的单例类,指针对象为智能指针,析构函数讲...
分类:
编程语言 时间:
2015-09-26 22:43:30
阅读次数:
293
一. TcpServer分类:管理所有的TCP客户连接,TcpServer对于用户直接使用,直接控制由用户生活。用户只需要设置相应的回调函数(消息处理messageCallback)然后TcpServer::start()就可以。主要数据成员: boost::scoped_ptr accept...
分类:
其他好文 时间:
2015-09-21 09:12:16
阅读次数:
265
总结说的有的过大,算是对自己学习的一个总结,后续会不断补充。
咱定为Reactor模型总结和使用的技术总结...
分类:
其他好文 时间:
2015-08-12 01:28:13
阅读次数:
342
muduo是由陈硕(http://www.cnblogs.com/Solstice)开发的一个Linux多线程网络库,采用了很多新的Linux特性(例如eventfd、timerfd)和GCC内置函数。其主要特点为: 线程安全,支持多核多线程 不考虑可移植性,不跨平台,只支持 Linux,不支持 W...
分类:
其他好文 时间:
2015-08-11 07:04:49
阅读次数:
223
Connector用来发起连接,TcpClient封装了Connector方便编写客户端程序...
分类:
其他好文 时间:
2015-08-11 01:28:38
阅读次数:
176