网络编程
yjlongg
这个作者很懒,什么都没留下…
展开
-
高性能服务器架构
高并发服务器架构 1. 请求队列 + 连接池2. 主要的业务逻辑挪到应用服务器处理,数据库只做辅助的业务处理3. 缓存4. 缓存更新(同步),缓存失效(time out),重新去数据库中查询,实时性较差5. 一旦数据库中数据更新,立即通知前端缓存更新,实时性较好6. 缓存换页(内存不够,将不活跃数据换出内存),FIFO(先进先出),LRU(最近最少使用least原创 2015-10-25 16:39:15 · 306 阅读 · 0 评论 -
muduo_base 源码分析:AtomicIntegerT
muduo_base 源码分析:AtomicIntegerT为什么需要原子性操作? 所谓原子操作是指不会被线程调度机制打断的操作;这种操作一旦开始,就一直运行到结束,中间不会有任何context switch (切换到另一个线程)。 以前见过一道面试题:i++ 是否为原子操作? 答案是i++ 不是原子操作,i++ 操作可分为三步,(1)从内存中读i 的值到寄存原创 2015-11-22 21:30:00 · 512 阅读 · 0 评论 -
muduo_base 源码分析:Timestamp
muduo_base 源码分析:Timestamp{public:原创 2015-11-21 21:33:11 · 459 阅读 · 0 评论 -
信号和 TIME_WAIT 对大并发服务器的影响
信号和 TIME_WAIT 对大并发服务器的影响如果客户端主动关闭套接字(close),而服务器调用了一次write,服务器会接收一个 RST Segment(复位报文段,TCP传输层),如果服务器再次调用write,这个时候就会产生SIGPIPE信号,进程对SIGPIPE 信号的默认处理方式是关闭,因此在服务器程序中应忽略这个信号。sigaction(SIGPIPE, IGN);原创 2015-10-27 23:05:42 · 1347 阅读 · 0 评论