socketref,再见!高德

https://github.com/adoggie

  C++博客 :: 首页 :: 联系 :: 聚合  :: 管理
  246 Posts :: 4 Stories :: 312 Comments :: 0 Trackbacks

常用链接

留言簿(54)

我参与的团队

搜索

  •  

最新评论

阅读排行榜

评论排行榜

easymq 用于替代qpid的消息中间件。
通信基础采用tce引擎,提供topic和queue两种队列。
mq服务器启动加载mq条目,建立mq内存对象,提供认证,客户程序连接时指定mq名称和认证口令,
管理程序可以动态增加、删除和监视队列。
mq持久化支持,根据创建参数控制durable。
easymq第一个版利用可以用python实现,之后考虑资源利用和系统会用c++实现
easymq是tce一个很好的应用。
定位够轻,够简单,暂不考虑负载均横和自动路由。

实例化mq服务器
1 def start(self):
2         tce.RpcCommunicator.instance().init('easymq.server')
3         ep = tce.RpcEndPoint(host=self.default_host,port=self.default_port)
4         adapter = tce.RpcCommunicator.instance().createAdapter('first',ep)
5         servant = self
6         adapter.addServant(servant)
7         print 'wait for shutdown..'
8         tce.RpcCommunicator.instance().waitForShutdown()

1 server = Server.instance()
2 print 'easymq server launched..'
3 server.init().start()

接收消息
 1 import easymq
 2 
 3 def readThread(conn):
 4     while True:
 5         m = conn.read( )
 6         print 'got one:',m
 7 
 8 if __name__=='__main__':
 9     easymq.init()
10     conn = easymq.Connection(('127.0.0.1',12301),'test',mode=easymq.READWRITE)
11     conn.open()
12     readThread(conn)

发送消息到接收者
 1 import easymq
 2 
 3 if __name__=='__main__':
 4     easymq.init()
 5 
 6     conn = easymq.Connection(('127.0.0.1',12301),'test',mode=easymq.WRITE)
 7     conn.open()
 8     for n in range(100):
 9         conn.write(str(n)*10)
10     # waitForShutdown()
11     gevent.sleep(2)





posted on 2013-09-23 18:09 放屁阿狗 阅读(951) 评论(0)  编辑 收藏 引用 所属分类: Rpc

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   博问   Chat2DB   管理