Category Archives: Linux

搭建simpledns作为dns服务器并自定义hosts映射

1、安装
pip install simpledns
2、配置hosts文件

注意,这里可以使用一个自己定义的hosts文件,而不一定要用系统的,这一点是很赞的。

因为你可以做一个第三方的dns给其他人使用而不会污染自己的电脑:-)
# vim my_hosts
xx.xx.xx.xx abc.com
3、启动simpledns
sudo simpledns -b 0.0.0.0 -p 53 --hosts-file ./my_hosts
在上面的命令中,0.0.0.0[......]

继续阅读

使用mmap+文件在进程之间共享数据

在服务端的开发中,经常会有这种需求:不重启进程的状态下,更新数据。

一般常见的解决思路是:

(1) 全量加载其初始版本v1到内存中
(2) 设置更新接口update,当更新到来时,通过这个接口在内存中更新,并定时刷新到本地磁盘中(由于磁盘io较慢,一般不可能每次更新都及时回写磁盘)。

这种做法的好处是实现思路比较简单直观,但也存在一些缺点:
(1) update时存在资源的竞争,例如需要mutex lock,若更新频繁的话,对性能存在较大影响。
(2) 若进程crash,[......]

继续阅读