使应用程序适用于网络
如果你正好计划用P H P开发你自己的服务程序(或者其他一些相似的东西),请重新思考一下。你可能已经对这些思想有些迷惑了:实现一个聊天服务程序意味着实现一个网络服务程序。这是我们实际上介绍给大家的东西,但这并不是要大家去做,因为这些是不必要的,现在各个系统已经有了许多很好的服务器软件。那么怎样使用现有的服务器?怎样把它作为一个客户端连接到网络上呢?我们唯一需要做的就是给网络添加另一个抽象化的布局,如图所示。
互联网服务器将运行P H P聊天服务程序。对于其接收的每一个用户连接,它都将创建一个从客户端到I R C服务器的连接。每一个聊天进程只负载单独的一个用户,并不需要担心其他用户。
用户的坐标、信息流的控制等等可以由I R C服务程序完成,这样我们只需要使用一台空闲的服务器就行了。
这项技术也有这样的优点:聊天服务应用程序可以被用作I R C网络的一个安全的网关(参看图3 - 5)。许多公司和私有网络利用网络防火墙过滤I R C端口。既然这个聊天程序只是通过H T T P与它的用户交流(没有被过滤),那么只有这个聊天服务程序本身需要一个到I R C服务器的开放连接。
因此,我们要做的唯一事情就是去编写这个客户端的软件,另外,在我们的互联网服务中客户端也需要这个软件。I R C知道所有设置一个完美的聊天程序所必需的命令,这个网络问题可以通过使用标准的服务软件来解决,这些软件就像架上的书一样唾手可得。因此,假设我们的接口能以很方便的方式支持所有I R C特性的话,那么我们就完成了任务。