莊周夢蝶

          生活、程序、未來
             :: 首頁 ::  ::  :: 聚合  :: 管理

          淘寶開源metaq的python客戶端

          Posted on 2012-03-21 19:08 dennis 閱讀(5562) 評論(1)  編輯  收藏 所屬分類: javamy open-sourceHadoop與分布式
              前面一篇博客介紹了我在github上的一個metaq分支,今天下午寫了個metaq的python客戶端,目前僅支持發送消息功能,不過麻雀雖小,五臟俱全,客戶端和zookeeper的交互和連接管理之類都還具備,不出意外,我們會首先用上。第一次正兒八經地寫python代碼,寫的不好的地方請盡管拍磚,多謝。
              項目叫meta-python,仍然放在github上:https://github.com/killme2008/meta-python

              使用需要先安裝zkpython這個庫,具體安裝這篇博客,使用很簡單,發送消息:
              from metamorphosis import Message,MessageProducer,SendResult
              p=MessageProducer("topic")
              message=Message("topic","message body")
              print p.send(message)
              p.close()

              
          MessageProducer就是消息發送者,它的構造函數接受至少一個topic,默認的zk_servers為localhost:2181,可以通過zk_servers參數指定你的zookeeper集群:

          p=MessageProducer("topic",zk_servers="192.168.1.100:2191,192.168.1.101:2181")

          更多參數請直接看源碼吧。一個本機的性能測試(meta和客戶端都跑在我的機器上,機器是Mac MC700,osx 10.7,磁盤沒有升級過):
          from metamorphosis import Message,MessageProducer
          from time import time
          p=MessageProducer("avos-fetch-tasks")
          message=Message("avos-fetch-tasks","http://www.taobao.com")
          start=time()
          for i in range(0,10000):
              sent=p.send(message)
              if not sent.success:
                  print "send failed"
          finish=time()
          secs=finish-start
          print "duration:%s seconds" % (secs)
          print "tps:%s msgs/second" % (10000/secs)
          p.close()

           結果:


          duration:1.85962295532 seconds
          tps:5377.43415749 msgs/second

          評論

          # re: 淘寶開源metaq的python客戶端[未登錄]  回復  更多評論   

          2012-11-28 17:11 by colin
          大俠,你們metaq的java客戶端性能測試如何,
          我試用了下,
          單線程的話,
          發送 tps: 50 msgs/second
          接收 tps: 28000 msgs/second

          發送接收差異這么大,感覺很奇怪,是不是還有一些特殊的設置?
          主站蜘蛛池模板: 大厂| 隆昌县| 神木县| 淳安县| 漳浦县| 桃园市| 日土县| 延边| 泸州市| 准格尔旗| 融水| 洛隆县| 保德县| 郎溪县| 瑞金市| 商丘市| 内黄县| 亚东县| 钟山县| 惠东县| 突泉县| 沈丘县| 永济市| 泰兴市| 通辽市| 陇西县| 洞口县| 长治市| 朝阳区| 定远县| 洛浦县| 平顺县| 潮安县| 新巴尔虎左旗| 如皋市| 谷城县| 玛纳斯县| 雅江县| 莎车县| 江都市| 龙陵县|