mumumuwudi的博客

  • 首页
  • 归档
  • 分类
  • 关于
  • 标签

ub 网络框架的几种线程模型

发表于 2015-08-27   |   分类于 linux

ub是公司不错的网络框架, 使用C语言开发,清晰易懂,不像sofa-rpc使用c++ 开发,语言层面的技巧较多.
个人还是喜欢ub的简单. 本文通过ub框架介绍一下server端开发的常见的几种线程模型.

ub包含5种线程模型,我们挑选了三个比较典型和简单的来讲解一下

xpool   \\ 最简单同步模型

cpool \\ 生产者消费者模型

appool \\ 异步模型

xpool最简单的线程模型:

阅读全文 »

父进程waitpid子进程的一般实现

发表于 2015-08-26   |   分类于 linux
web后台开发中很多框架都是prefork的进程模型的, 包括 php-fpm / flup / gunicorn 等等由主进程 fork 出一堆工作进程, 主进程监督工作进程的存活状态和数量,按照需要重启工作进程主进程的主要工作:1) 回收僵尸子进程2)重启子进程(重启策略看需求),逻辑比较简单, ...
阅读全文 »

Tokyo Cabinet Hash数据库存储和索引结构

发表于 2015-07-31   |   分类于 Tokyo Cabinet

先看图:

阅读全文 »

FreeBSD Kqueue的实现原理

发表于 2015-07-30   |   分类于 freebsd
kqueue/epoll 是两个网上出现频率比较高的关键字,epoll实现原理及源码网上已经有很多blog分析,关于select/poll/epoll、kqueque的优缺点也不再解释。kqueue实现原理的文章网上资料比较少, 基本上就JonathanLemon的一篇论文, Jonathan Le ...
阅读全文 »

linux 内存中buffer 和cache 的区别

发表于 2015-07-30   |   分类于 linux
page cahce 缓存了页面用来优化文件I/O, buffer cache 缓存了磁盘块用来优化 block I/O.在linux kernel2.4之前,这两个缓存是不同的: 文件在page cache里, 磁盘块在buffer cache里. 这样某些系统调用(mmap)数据需要在两层cac ...
阅读全文 »

LINUX程序(进程)在内存中的布局

发表于 2015-07-30   |   分类于 linux
翻译自: http://duartes.org/gustavo/blog/post/anatomy-of-a-program-in-memory/ 感谢作者, 尤其一些图很漂亮,建议读者亲自读一遍英文.     内存管理是操作系统的核心; 是编程和系统管理的关键部分,在接下来的几 ...
阅读全文 »

linux 内核如何管理内存

发表于 2015-07-30   |   分类于 linux

翻译自 http://duartes.org/gustavo/blog/post/how-the-kernel-manages-your-memory/ 感觉作者的精美图片
建议读者对一遍英文原文
    在介绍完了进程虚拟地址空间的布局后, 我们来看一下内核是如何管理内存的:


阅读全文 »

LVS RS节点健康检查

发表于 2015-07-28   |   分类于 linux
LVS RS健康节点检查一般交由keepalived来做. 当然也可以自己写一个脚本来检查,通过tcp_connnect或者curl get 方式定期检测RS节点,如果检测失败则在LVS上删除该RS节点. 下面介绍一下百度内部的LVS(又叫做BVS) RS默认健康检测方式. 服务上线到BVS后,BV ...
阅读全文 »

lvs 负载均衡fullnat 模式clientip 怎样传递给 realserver

发表于 2015-07-26   |   分类于 linux
关于LVS和FULLNAT的介绍可以看一下 淘宝吴佳明(普空)的视频 http://blog.aliyun.com/1750 ,FULLNAT模式很大简化了LVS的配置和部署,目前淘宝和百度基本上都在使用FULLNAT模式来作为接入侧的负载均衡模式. 百度的LVS叫做BVS, Baidu Virt ...
阅读全文 »

google linux kernel tcp reuseport patch

发表于 2015-07-25   |   分类于 tcp/ip
This patch implements so_reuseport (SO_REUSEPORT socket option) forTCP and UDP. For TCP,so_reuseportallows multiple listener socketsto be bound to the ...
阅读全文 »
1234
mumumuwudi

mumumuwudi

35 日志
10 分类
44 标签
© 2025 mumumuwudi