程序框架

服务器端

  • server_main.py 服务器主程序,分响应者和巡逻者两个进程。 响应者负责接收客户端传输的全部数据,及时做出应答。 巡逻者负责监视用户的在线状态。
  • server_database.py 数据库管理者,负责存取数据库。
  • server_config.py 服务器接口配置

 

客户端

  • client_main.py 客户端主程序,打印菜单,接收用户输入。

进入聊天室后程序分为三个进程,分别是:

连接者:每秒告知服务端响应者客户端的连接状态。

发送者:负责告知服务端响应者用户的聊天信息。

接收者:负责接受服务端响应者发来的信息。

  • client_comm.py 应用层通讯协议指令工厂
  • client_udp.py 客户端与服务器的连接层,提供发送和接听方法
  • client_config.py 客户端配置文件,包括服务器地址和客户端端口

 

https://github.com/jarork/chatroom/tree/master

 

Google Lighthouse

 

第一步:选用更恰当的服务器和线路

船长针对中英文语言使用者,因此目标访客来自全球。由于大陆和海外世界之间的连接不畅,海外用户访问大陆服务器速度很慢且大陆用户访问海外服务器速度慢,因此杰克船长选择了谷歌云香港服务器,以实现最高性价比。

 

第二步:使用GZIP、CSS、JS和字体压缩

船长的小破站基于Joomla! CMS以及T3框架,可以很容易的实现上述功能。