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

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

一般常见的解决思路是:

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

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

继续阅读

[转] MySQL 建库 建用户 相关命令

转载自:MYSQL建库建用户命令

1、登陆MySQL:mysql -u root -p password:输入密码

2、查看用户信息select user,host,password from mysql.user;select user,host from mysql.user;

3、设置密码set password for root@localhost=password(‘在这里填入root密码’);

4、修改密码方法1:mysqladmin -u root -p p[......]

继续阅读

Linux根据端口号确定进程pid

命令为:

截取某一行,如下所示:

其中,3306就是本地server打开的端口号,1137是进程pid。

Python获取外网ip地址

备注:这个IP有可能被墙,可以换一个国内的,呵呵。。

如果是NAT出口的,显示的是NAT的IP地址。