【问题标题】:Realtime data processing in Django/PythonDjango/Python 中的实时数据处理
【发布时间】:2010-12-02 00:42:39
【问题描述】:

我们正在开展一个涉及实时数据处理的项目。我们计划使用 Django/Python。实际过程是:

  1. 数万台设备每秒采集 4 个样本(0、0.25、0.5、0.75)并不断发送回我们的 Django 服务器,基本上它们是带有时间戳和值的时间序列
  2. 我们需要根据时间戳对齐来自所有设备的样本(需要具有毫秒精度)并对所有时间序列进行简单平均
  3. 所有这些都需要实时完成(最多延迟 1 秒)并使用另一个线程发送出去

我们正在研究 RRDTool 和 scikits.timeseries,但它们没有毫秒级的精度,因此无法对齐我们的时间序列。

只是想知道是否有任何工具/数据结构可以与 Django/Python 一起用于这种类型的实时数据处理。线程安全很重要,因为发送结果将在另一个线程中完成。

提前致谢。

【问题讨论】:

    标签: django real-time time-series


    【解决方案1】:

    您在 python 中的实时 Web 服务选项是:TwistedTornadoEventlet

    您可以将所有这些集成到 Python/Django 中。 Tutorial on that.

    【讨论】:

    • 参加聚会为时已晚,但我想节点也应该添加到您的选项列表中
    【解决方案2】:

    您可能想查看Tornado,这是一个非阻塞并使用 epoll 的 Web 服务器框架。应该比 Django 等更高级别的框架更适合您的实时要求。

    【讨论】:

      【解决方案3】:

      简短回答:不。Django 不会帮你解决这个问题。

      长答案:听起来像是一些直接来自网络服务器的自定义代码的工作。我在想一个直接挂在 wsgi 上的 python 脚本,甚至是一个用 C 编写的 apache 模块!

      【讨论】:

        【解决方案4】:

        您应该考虑查看Celery Project。它可以很好地插入 Django,但不确定它是否对毫秒精度要求敏感。您也可以考虑退出 django 堆栈,将 Brubeck 与 Mongrel2 和 ZeroMQ 一起使用。

        【讨论】:

          猜你喜欢
          • 2021-12-17
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2021-08-05
          • 2018-01-17
          • 2017-11-03
          • 2011-08-03
          • 1970-01-01
          相关资源
          最近更新 更多