现在的位置: 首页 > 数据库 > 正文

Karait怎么用python写队列?Karait怎么用Ruby读队列

2020年07月02日 数据库 ⁄ 共 1345字 ⁄ 字号 评论关闭

  Karait目前提供Python和Ruby的客户端操作包,也就是说你可以使用Python或Ruby来写消息,用Python或Ruby来读队列。下面学步园小编来讲解下Karait怎么用python写队列?Karait怎么用Ruby读队列?

  Karait怎么用python写队列

  importtime

  fromkaraitimportMessage,Queue

  print'Startingpythonwriter.'

  messages_written=0

  start=time.time()

  queue=Queue()

  whileTrue:

  queue.write({

  'messages_written':messages_written,

  'sender':'writer.py',

  'started_running':start,

  'messages_written_per_second':(messages_written/(time.time()-start))

  },routing_key='for_ruby_reader_writer')

  messages_written+=1

  Karait怎么用Ruby读队列

  require'rubygems'

  require'karait'

  require'yaml'

  puts"Startingrubyreader/writer"

  messages_read=0.0

  start_time=Time.now().to_f

  queue=Karait::Queue.new

  whiletrue

  messages=queue.read:routing_key=>'for_ruby_reader_writer',:messages_read=>15

  messages.eachdo|message|

  messages_read+=1.0

  message.messages_read=messages_read

  message.messages_read_per_second=messages_read/(Time.now().to_f-start_time)

  if(messages_read%250)==0.0

  puts"MessageRead:\n#{message.to_hash.to_yaml}"

  end

  end

  queue.delete_messagesmessages

  end

  输出结果:

  ---

  sender:writer.py

  messages_read_per_second:1653.29212369982

  started_running:1314790290.33488

  messages_written_per_second:1900.18564215637

  messages_written:106199

  messages_read:110250.0

  以上就是关于“Karait怎么用python写队列?Karait怎么用Ruby读队列”的内容,希望对大家有用。更多资讯请关注学步园。学步园,您学习IT技术的优质平台!

抱歉!评论已关闭.