即时通讯源码基IM源码内核开发采用[uniapp]封装技术

即时通讯源码是基于开源IM源码内核开发的,根据业务需要改造而来。修改和扩展了很多ejaberd不支持的功能。程序实现了一个 XMPP 即时消息客户端。创建此应用程序是为了演示使用XMPP和Ember创建基于XMPP技术的高度可扩展的实时应用程序。您可以将此应用程序用作样板,以将即时消息传递组件添加到任何ember或Web应用程序。
仓库源码:im.jstxym.top
关键功能:
●分布式:去掉了依赖 mnesia 集群的代码,来支持更大的集群,以及防止由于网络分区导致的集群状态不一致。
●消息处理:通过ejabberd和kafka相连接,实现消息的路由和订阅发布,可以对消息添加更丰富的处理逻辑。


Startalk 模块
Startalk 主要包含:
●ejabberd
IM 核心组件,负责维持与客户端的长连接和消息路由
● or
IM 负载均衡组件,负责验证客户端身份,以及转发http请求到对应的后台服务
● im_http_service
IM HTTP 接口服务,负责 IM 相关数据的查询、设置以及历史消息同步(基于 tomcat 的 java 服务)
●qfproxy
IM 文件服务,负责文件的上传和下载(基于 tomcat 的 java服务)
● push_service
IM 的 push 服务,用于离线消息的推送(基于 tomcat 的 java 服务)
●serach
提供远程搜索人员和群的服务
●redis
IM缓存服务
●postgresql
IM数据库服务
安装
预设条件(如果主机名,用户名和这里的不一致,则需要将安装步骤中的换成自己的名字):
●服务器要求:centos7.x
●主机名用变量 STARTALK,可以替换成自己的主机名
●hosts 添加: 127.0.0.1 ${STARTALK} (sudo vim /etc/hosts)
●所有项目都安装到 /startalk 下面
●安装用户和用户组是:startalk:startalk,要保证 startalk 用户有 sudo 权限
● 主目录下有 download 文件夹,所有文件会下载到该文件夹下
●数据库用户名密码是 ejabberd:123456,服务地址是:127.0.0.1
●redis 密码是:123456,服务地址是:127.0.0.1
●数据库初始化 sql 在 doc 目录下
●保证可访问主机的:5202、8080 端口(关掉防火墙:sudo systemctl stop firewalld.service)
●IM 服务的域名是:startalk(大家安装线上之前,最好确定好这个值,一旦定了,之后修改的成本就很高,可以参考domain 修改来修改)
●tls 证书:默认安装用的是一个测试证书,线上使用,请更换 /startalk/ejabberd/etc/ejabberd/server.pem 文件,生成方法见 securing-ejabberd-with-tls-encryption
●出现文件覆盖提示时,输入 yes 敲回车即可
●安装文档中 # 开头输入的命令表示 root 执行的,$ 开头的命令表示普通用户
依赖包

  # yum -y install epel-release
  # yum -y update
  # yum -y groupinstall Base "Development Tools" "Perl Support"
  # yum install -y telnet aspell bzip2 collectd-postgresql collectd-rrdtool collectd.x86_64 curl db4 expat.x86_64
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值