【发布时间】:2015-06-30 10:10:53
【问题描述】:
我正在研究 pubnub,以便在我与 Rickshaw 的实时数据可视化中使用。但我不明白是通道已经配置还是我们必须配置它们。如果是这样,我们如何为数据即配置通道?我还从 python Ceilometer API 获取数据,如何将这些数据推送到 pubnub?
【问题讨论】:
我正在研究 pubnub,以便在我与 Rickshaw 的实时数据可视化中使用。但我不明白是通道已经配置还是我们必须配置它们。如果是这样,我们如何为数据即配置通道?我还从 python Ceilometer API 获取数据,如何将这些数据推送到 pubnub?
【问题讨论】:
频道是一种抽象,类似于“聊天室”。使用 PubNub 发送的任何消息都将通过一个频道。消息由通道及其关联的数据有效负载组成。发布客户端向给定频道发布消息,订阅客户端仅接收与其订阅的频道相关联的消息。
通道是即时创建的,在您的应用程序中使用一个或多个通道不会产生任何额外费用。当您创建 PubNub 应用程序时,所有消息都将与一个频道相关联。
它的优点是网络使用最少(每个客户端只接收它需要的数据)和最少的处理(不需要过滤不需要的数据)。
为了将数据推送到 PubNub(我们称之为发布),您需要首先创建一个 PubNub 实例,并放入您的 API 密钥。 Get your keys here。
pubnub = Pubnub(publish_key='demo', subscribe_key='demo')
PubNub 使用简单的 API 来发布数据,如下所示:
def callback(message):
print(message)
pubnub.publish('my_channel', 'Hello from PubNub Python SDK!', callback=callback, error=callback)
第一个参数是你要发布数据的通道,第二个是你要发送的消息,最后两个是发布时调用的回调函数。
您可以在site 上找到有关APIs 以及如何使用get started 获取Python SDK 的详细信息。
【讨论】:
+1 Bhavana 说:-)
此外,您可以在以下位置查看带有 PubNub 示例的人力车: https://github.com/pubnub/pubnub-rickshaw
如果您的目标是使用 d3 可视化数据,并且不需要依赖 Richshaw,请尝试 EON: https://github.com/pubnub/eon
使用 EON 库,您无需 subscribe 数据,而是使用 eon.chart 将 PubNub 流中的数据直接绘制到图表上。很整洁。
【讨论】: