由于Python设计的限制(我说的是咱们常用的CPython)。最多只能用满1个CPU核心。
Python提供了非常好用的多进程包multiprocessing,你只需要定义一个函数,Python会替你完成其他所有事情。借助这个包,可以轻松完成从单进程到并发执行的转换。
1、新建单一进程
如果我们新建少量进程,可以如下:
import multiprocessing
import time
def func(msg):
for i in xrange(3):[......]
由于Python设计的限制(我说的是咱们常用的CPython)。最多只能用满1个CPU核心。
Python提供了非常好用的多进程包multiprocessing,你只需要定义一个函数,Python会替你完成其他所有事情。借助这个包,可以轻松完成从单进程到并发执行的转换。
1、新建单一进程
如果我们新建少量进程,可以如下:
import multiprocessing
import time
def func(msg):
for i in xrange(3):[......]
1、在图结构中,结点关系是任意的:任意两个数据元素(结点)之间都可能有关系。
2、有向图可以表示为G={V, A},V是顶点集合,A是关系(边)的集合,也可称作VR。关系(边)用有序对<v, w>表示。图形表示是一条有向弧。v是初始点(弧尾),w是终端点(狐头)。
3、无向图一般表示为G={V, E},V还是顶点集合,E是边集合。边用无序对(v, w)表示。图形表示是一条边(无向)。
有向图G1:
A1 = {[......]
继上周发现了SSHClient这个Python包,使用了几天后,现在吐糟无力。
1、不支持循环拷贝,即scp -r这种。这个也忍了吧。
2、ssh执行command后,一旦断开连接,进程马上退出……由于我的shell脚本可能要运行好几个小时,一旦网络不稳定就悲剧了。
经过多方查证,终于解决了第二个问题,其实还是用shell解决的。
nohup your_shell.sh > /dev/null 2>&1 &[......]
写一个函数,它的原形是:
int continumax(char *outputstr,char *intputstr)
功能:
在字符串中找出连续最长的数字串,并把这个串的长度返回,并把这个最长数字串付给其中一个函数参数outputstr所指内存。
例如:
"abcd12345ed125ss123456789"的首地址传给intputstr后,函数将返回9,outputstr所指的值为123456789。
注意很多答案是错的,未考虑末尾不是字母的情况!
int[......]
Mongod DB中有Sharding(分片)和Replication(副本)两个功能。
前者主要是将数据水平分割到各个结点上,达到负载均衡的目的。
后者用于故障恢复。即一般一个Sharding有若干个Replication。
本文只讨论Sharding的情况,因为我们的环境机器本来就不够,不会拿来做Replication的。
配置Sharding有如下三个要素:
1、1~1000个Sharding。
2、1~3个mongo config服务器。
3、1[......]