为许多客户提供动态数据

时间:2015-06-04 15:24:51

标签: python vb.net

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

我有想法在服务器端运行轻量级Web服务器,并在客户端使用system.net.webclient.downloadstring调用来接收它。这样就可以通过Web服务器为我完成所有多线程异步内容。

问题:

  1. 这看起来像是一种好方法吗?
  2. 让我的数据收集程序为Web服务器写一个文本文件来提供服务似乎是不必要的。有没有办法让数据在内存中并让服务器只是服务,所以没有磁盘文件中介?设置一个ramdisk是我想到的一个解决方案,但这似乎有些过分。
  3. Web服务器如何处理经常更新的数据,比如每秒一次?网络服务器是否优雅地处理这个问题,还是有可能在写入文件时提供文件?
  4. 感谢。

1 个答案:

答案 0 :(得分:0)

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

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

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