Python 为许多客户机提供动态数据

Python 为许多客户机提供动态数据,python,vb.net,Python,Vb.net,我正在编写一个客户机-服务器类型的应用程序。服务器端从其他硬件收集不断变化的数据,然后需要将其传递给多个客户端(比如说10个)进行显示。服务器数据收集程序将用Python 3.4编写,并在Debian上运行。客户端将使用运行在Windows上的.net framework 4上的VB Winforms构建 我的想法是在服务器端运行一个轻量级web服务器,并在客户端使用system.net.webclient.downloadstring调用来接收它。这样,所有的多线程异步工作都由web服务器为我

我正在编写一个客户机-服务器类型的应用程序。服务器端从其他硬件收集不断变化的数据,然后需要将其传递给多个客户端(比如说10个)进行显示。服务器数据收集程序将用Python 3.4编写,并在Debian上运行。客户端将使用运行在Windows上的.net framework 4上的VB Winforms构建

我的想法是在服务器端运行一个轻量级web服务器,并在客户端使用system.net.webclient.downloadstring调用来接收它。这样,所有的多线程异步工作都由web服务器为我完成

问题:

  • 这似乎是一个好方法吗
  • 让我的数据收集程序为web服务器编写一个文本文件似乎是不必要的。有没有一种方法可以将数据存储在内存中,并让服务器只为其服务,这样就没有磁盘文件中介?设置ramdisk是我想到的一个解决方案,但这似乎有些过头了
  • web服务器将如何处理频繁更新的数据,例如每秒更新一次?Web服务器是否能够优雅地处理此问题,或者在写入文件时是否有可能提供此文件
  • 谢谢

    1)我对Python不是很熟悉,但对于.net应用程序,您可能希望将更改通知推送到它,而不是拉。system.net.webclient.downloadstring是一个请求(pull)。因为我不是Python开发人员,所以我不能在这方面提供帮助

    3) 当您请求数据时,可能会在更新和读取的同时产生一些读/写错误。即使这种情况没有发生,您的数据可能会在您阅读后立即过期。这是一个可以接受的问题,这取决于数据的重要性


    这就是为什么我会做推送通知而不是拉送通知。如果工作正常,这可以保持数据同步并避免一些时间问题。

    dmshow:感谢您的回复。我不明白为什么从服务器推送到客户端会更好。你会用肘吗?数据的年龄并不重要,但在从一个客户机读取数据的过程中,通过重写数据来定期损坏数据是一个问题。