【文件属性】:
文件名称:openresty-im:一个运行在OpenResty上的web聊天软件
文件大小:455KB
文件格式:ZIP
更新时间:2021-05-06 00:51:12
Lua
OpenResty IM
一个运行在上的客服聊天软件。
特点
简洁
高性能
代码完全采用ngx-lua + redis实现
支持心跳包,已读/未读数,历史消息同步,断线重连等
采用redis发布、订阅做推送
采用TLV协议格式,保持与B站开源项目协议一致
c10K以内的并发连接完全够用
描述
适用于中小型项目,新项目直接上goim推送,维护成本太高,短时间内很难驾驭,于是折中一下写了这个demo。既能应对当前开发工作量,也确保了后期无缝切换后端推送服务
案例
项目目录简介
api: http api服务代码 (负责组装/验证参数 跳转到聊天页面的接口,接收新消息的接口)
comet: 推送服务代码 (负责下发消息, 客户端通过http协议,将新消息POST到api服务,写入redis,再由推送服务读取redis 下发)
dist: 前端htm