内容简介:J-IM 3.0.0 发布了,J-IM是一款极度轻量、高性能、易扩展的IM中间件,它的主要目标降低即时通讯门槛,使用者基于它可以极快速、低成本的打造接入自己的高性能即时通讯服务器,并且通过极简洁的消息格式(JSON)就可...
J-IM 3.0.0 发布了,J-IM是一款极度轻量、高性能、易扩展的IM中间件,它的主要目标降低即时通讯门槛,使用者基于它可以极快速、低成本的打造接入自己的高性能即时通讯服务器,并且通过极简洁的消息格式(JSON)就可以实现多端不同协议间的消息发送如内置(Http、Websocket、Tcp自定义IM协议)等,并提供通过Http协议的api接口进行消息发送无需关心接收端属于什么协议,一个消息格式搞定一切!
说明:本次J-IM为了追求初衷极度轻量、易扩展、可用性强进行了一次模块化大重构
本次修改点重构如下:
一、项目结构相关:
1、项目jim-common重命名为->jim-core
2、增加jim-client项目(IM客户端开发依赖jar包)
3、增加jim-client-demo客户端演示项目
本次重构完项目模块化结构如下:
jim-core(核心包)
jim-server(IM服务端所依赖)
jim-client(IM客户端所依赖)
jim-server-demo(官方提供的服务端demo项目)
jim-client-demo(官方提供的客户端demo项目)
二、重构设计相关:
1、ImServerAioListener->ImServerHandler
2、ImServerAioListener->ImServerListener
3、增加ImChannelContext
4、Command相关命令内部处理及回调接口优化
5、CmdProcessor->ProtocolCmdProcessor
6、重构ImConfig,包括ImServerConfig、ImClientConfig
7、重构ImGroupListener群组监听器
8、增加ImUserListener用户监听器
9、重构Chat命令相关的BaseAsyncChatMessageProcessor业务异步处理消息队列
10、重构Chat命令持久化相关代码设计
12、重构Login登录命令回调接口设计
13、集群Cluster重构优化
14、IM持久化相关优化设计
15、ImAio由core项目分别重构到jim-server和jim-client项目中,分别更名为:JimServerAPI、JimClientAPI
16、ImServerStarter更名为->JimServer
17、增加JimClient
18、增加自动化部署一键打包命令package.sh,在jim-server-demo项目根目录下,一键发布部署
19、重构多协议包转换器IProtocolConverter,性能更强
20、升级t-io版本为3.5.8.v20191228-RELEASE
21、其他一些内部设计重构优化等等N多,不一一列举了
本次重构完J-IM实现真正模块化、内部设计更加简洁优雅、用户接口可扩展性更强、更加易用、性能更强。
最新pom:
服务端(快速开发自己的高性能IM服务器):引入jim-server,在你的pom.xml中加入如下代码片段:
<dependency>
<groupId>org.j-im</groupId>
<artifactId>jim-server</artifactId>
<version>3.0.0.v20200501-RELEASE</version>
</dependency>
客户端(快速开发自己的IM客户端):引入jim-client,在你的pom.xml中加入如下代码片段:
<dependency>
<groupId>org.j-im</groupId>
<artifactId>jim-client</artifactId>
<version>3.0.0.v20200501-RELEASE</version>
</dependency>
如果感觉J-IM给您带来了帮助,别忘了给 https://gitee.com/xchao/j-im 点个赞 (Star) 哦。
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 蚂蚁金服 mPaaS 模块化开发与架构重构深度解析
- Android模块化改造以及模块化通信框架
- Laravel 模块化开发模块 – Caffienate
- ASP.NET Core模块化前后端分离快速开发框架介绍之4、模块化实现思路
- 前端模块化架构设计与实现(二|模块接口设计)
- JavaScript模块化
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。