0

我已经阅读了一些关于编写套接字服务器的好文章,但我想我会在这里询问是否有关于我实际需要的任何进一步的知识/想法。

我为在同一台服务器上运行的客户端运行多个网站,连接到同一个数据库等。每个客户端网站都有一个表单,用户可以在其中提交他们的详细信息以获取我们提供的服务。这些用户分布在世界各地,但我想要构建的是一个监控系统,我的界面显示用户 IP 地址、他们所在的客户端网站、他们所在的页面等。从 IP 我将做一个国家/状态查找(我知道它不是 100% 准确但足够接近是好的)。

我希望访问站点向套接字服务器发送一个数据包,该服务器又将输出信息实时发送到我的屏幕(在我执行一些操作之后)。我想你可以说我正在构建一个迷你 NOC 来监控网站活动。我还希望输出信息是屏幕顶部的最新活动,但还显示滚动条以查看所有活动。

套接字是该系统的最佳机制吗?关于如何实现结果的任何其他建议或教程?

非常感谢。

4

1 回答 1

0

在您开始这条路之前,您是否检查过 Google Analytics 的实时部分?它可以满足您的大部分需求。

当有人访问您的网站时,您通常不会建立持久连接。我建议不要创建一个,而是解析您的服务器日志或将用户信息存储在数据库中,并查询最后x几分钟的访问者。

为了实时更新您正在查看的页面,如果您需要非常快的响应时间,Web Sockets 是最好的选择,但目前在 PHP 中这样做很麻烦。此外,浏览器支持不是很广泛。如果您坚持使用 PHP,我建议您通过 AJAX 进行轮询。否则,请考虑将Node.JS与Socket.IO一起使用。Socket.IO 封装了很多与 web sockets 类似的方法,可以毫不费力地达到同样的效果。仍然为您的应用程序使用 PHP……只需将 Node.JS/Socket.IO 部分用于您的监视器界面。

最后,我建议再次质疑你为什么想要这个。您可以在这样的项目上花费大量时间,而事实是,随着时间的推移,您的分析数据比您查看时的快照更有价值。

于 2012-07-10T23:49:55.177 回答