Skip to content

playniuniu/drchat_server

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Drchat

简介

Drchat 共分成2个部分,一部分是 Server 端,一部分是 Client 端,共同完成一个基于微信通信的聊天软件

Client 端

Client 端采用 Framework7 做为界面,采用 Socket.io 做 Websocket,实现通信

Server 端

Server 端采用 python-socketio 作为 Server,后台使用了 redis 支撑消息服务, 详细说明见 这里, 对于 python-socketio 参见 这里

系统架构

系统架构

这里有一下几点需要注意:

  • 整个后台的 Redis 服务,由云端 redis 支撑,其余所有 redis 都与其同步
  • socketio server 负责从 redis 读取消息并发送用户
  • socketio server 同时包含了一个 REST API,用于用户登录,消息记录等
  • socketio server 最终由 supervisor 负责启动和监管

Server 端安装

本程序采用 Python3, 依赖于 requirements.txt, redis-server, supervisor

  • 使用 virtualenv 配置 python 运行环境,并使用 pip install -r requirements.txt 安装相应包
  • 安装 redis 和 supervisor sudo apt-get install redis-server supervisor
  • 将 resource 文件夹中的配置文件,根据服务类型,依次拷贝并作相应修改
  • 开启 sockeio server, 在 virtualenv 模式下运行 python run.py 测试服务运行情况
  • 重启计算机,看 supervisor 是否正确配置并运行

About

dingrui chat demo server

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages