标签:之间 code rgs 内聚 join 通信 操作系统 https ted
生产者与消费者模型
import time,random,multiprocessing
def produce(name,q):
for i in range(20):
time.sleep(random.randint(1,2))
q.put(‘包子{}‘.format(i))
print(‘{}生产了包子{}‘.format(name,i))
# q.put(‘q‘)
def consumer(name,q):
while True:
time.sleep(random.randint(1,2))
date=q.get()
if date==‘q‘:
break
print(‘{} 吃了 {}‘.format(name,date))
if __name__ == ‘__main__‘:
q=multiprocessing.Queue()
p=multiprocessing.Process(target=produce,args=(‘egon‘,q))
c=multiprocessing.Process(target=consumer,args=(‘alex‘,q))
p.start()
c.start()
p.join()
q.put(‘q‘)
生产者与消费者两个子进程,同时开启,通过队列q,进行数据上的通信。q在主进程创建,作为参数传给生产者,消费者两个子进程。
程序中两类角色:生产者,消费者。
功能:通过引用第三方队列q,平衡生产者与消费者之间的速度差异。
分布式系统
分布式系统(distributed system)是建立在网络之上的软件系统。正是因为软件的特性,所以分布式系统具有高度的内聚性和透明性。因此,网络和分布式系统之间的区别更多的在于高层软件(特别是操作系统),而不是硬件。内聚性是指每一个数据库分布节点高度自治,有本地的数据库管理系统。透明性是指每一个数据库分布节点对用户的应用来说都是透明的,看不出是本地还是远程。在分布式数据库系统中,用户感觉不到数据是分布的,即用户不须知道关系是否分割、有无副本、数据存于哪个站点以及事务在哪个站点上执行等。 ——百度百科
标签:之间 code rgs 内聚 join 通信 操作系统 https ted
原文地址:http://www.cnblogs.com/654321cc/p/7657231.html