RabbitMQ 是一款基于 高级消息队列协议 (AMQP) 的功能强大的消息代理。由于 AMQP 规范的特性,可以很容易地从许多平台连接到它,包括 Python。在本博文中,我们将
- 创建一个简单的股票行情 Python 应用程序
- 创建一个经纪人 Python 应用程序,用于决定何时买卖。
- 比较 pika(RabbitMQ 团队创建的 AMQP 库)和 py-amqplib。
您可以在
http://github.com/gregturn/amqp-demo 找到此博客的所有源代码。这假设您已经根据
平台说明 安装了 RabbitMQ 并启动了它。就我个人而言,它在我的 Mac OS X 机器(雪豹)上运行。
顺便说一句
本博文中编写的代码仅用于演示目的。不要依赖这些算法来获取财务建议。
言归正传,让我们编写一些代码吧!
构建股票行情
股票行情系统是消息传递解决方案的一个很好的例子。证券交易所将消息发布到代理,指示股票名称、价格和时间。
import pickle
import random
import time
class Ticker(object):
def __init__(self, publisher, qname):
self.publisher = publisher
# This quickly creates four random stock symbols
chars = range(ord("A"), ord("Z")+1)
def random_letter(): return chr(random.choice(chars))
self.stock_symbols = [random_letter…