我的网络服务器如何发送信号(包括数据)到我的本地运行的应用程序


How can my webserver send a signal (including data) to my local running applications

我想有一个网站(在互联网上)构建在PHP和应用程序(在c#)安装在我的个人电脑上。例如,当我点击一个按钮(来自网站),应用程序弹出一个消息。

一个解决方案,当我点击该按钮命令(文本)保存在数据库和我的应用程序检查数据库(在互联网上)每2秒,如果有一个新的命令。

但是我认为这个解决方案在性能上是最差的,在大多数情况下,应用程序将运行12h/day,并且可能在该按钮上点击5次。

另一个解决方案是我点击按钮后(从网站),去我的应用程序,并单击一些按钮,以查找是否有新的命令;但我不喜欢这个解决方案。

我想要一个解决方案,在我打开应用程序后,我没有任何事情要做。

如果没有从服务器到客户端的通道,只有两种选择:

  1. 使用轮询(这是你所描述的)
  2. 使用某种Comet web应用模型

由于服务器没有连接到客户端,它不能发送信号通知客户端新数据准备好了。对于具有实时更新功能的web应用程序(例如聊天应用程序)来说,这是一个众所周知的问题。Comet web应用程序模型是facebook或twitter等大型网站用来解决这个问题的模型之一。

相关文章: