本发明专利技术公开了多租户高并发的即时通讯云平台,包括服务端以及嵌入在不同租户的APP中的客户端SDK;搭载被嵌入客户端SDK的APP的移动终端通过传输通道与服务端建立数据连接,即时通讯云平台同时为多个租户的嵌入客户端SDK的APP提供即时通讯服务。本发明专利技术能够通过客户端SDK便捷嵌入到用户组APP,构建支持该APP通过SDK实现即时通讯功能的云平台,将即时通讯功能和服务以打包的形式提供给APP开发单位和企业用户,确保即时通讯功能的便捷嵌入和服务的低成本使用;能够为多个租户的APP提供即时通讯服务,能够满足高并发的使用需求;通过加密的信息传输,确保了租户的信息安全。
【技术实现步骤摘要】
【专利说明】一种多租户高并发的即时通讯云平台
本专利技术涉及一种为APP提供即时通讯的平台,具体涉及一种多租户高并发的即时通讯云平台。
技术介绍
即时通讯是目前Internet上最为流行的通讯方式,对于各种APP的开发和企业通讯的需求,往往需要提供能够便捷嵌入到具体APP用户端的SDK,以将该即时通讯功能便捷高效的嵌入,同时利用云平台为多个APP的用户组提供即时通讯功能和服务。而目前的即时通讯领域,还没有提供即时通讯功能便捷嵌入、云平台提供即时通讯服务的即时通讯云平台,对于普通的APP研发和企业通讯需求的研发,往往需要研发者针对即时通讯的功能进行单独设计和研发,同时再去寻找或建设支持即时通讯的服务器,造成研发成本和维护成本极大的提高,不利于广大APP开发单位和企业用户的应用研发和使用。因此,需要设计一种能够便捷嵌入到用户组APP内的SDK,构建支持该APP通过SDK实现即时通讯功能的云平台,将即时通讯功能和服务以打包的形式提供给APP开发单位和企业用户,确保即时通讯功能的便捷嵌入和服务的低成本使用。
技术实现思路
本专利技术需要解决的技术问题就在于克服现有技术的缺陷,提供一种多租户高并发的即时通讯云平台,能够通过客户端SDK便捷嵌入到用户组APP,构建支持该APP通过SDK实现即时通讯功能的云平台,将即时通讯功能和服务以打包的形式提供给APP开发单位和企业用户,确保即时通讯功能的便捷嵌入和服务的低成本使用;同时,能够为多个租户的APP提供即时通讯服务,能够满足高并发的使用需求;通过加密的信息传输,确保了租户的信息安全。为解决上述问题,本专利技术采用技术方案为: 一种多租户高并发的即时通讯云平台,所述即时通讯云平台包括服务端以及嵌入在不同租户的APP中的客户端SDK ;每一个APP的使用群体构成一个租户,每个租户的APP中嵌入客户端SDK使该APP具备即时通讯的功能; 搭载被嵌入客户端SDK的APP的移动终端通过传输通道与服务端建立数据连接;月艮务端为相对应的移动终端的APP提供即时通讯服务;传输通道可以采用3G、4G、wifi, VPN、VPDN的方式。所有使用同一个搭载被嵌入客户端SDK的APP的用户为一个租户;所述即时通讯云平台同时为多个租户的嵌入客户端SDK的APP提供即时通讯服务,每个租户在服务端产生的数据信息均隔离单独保存,确保数据信息存储的安全;客户端SDK能够嵌入至Andorid操作系统、1S操作系统的APP中以及Windows操作系统的应用程序中,即本专利技术的客户端SDK能够在三个平台中实现多平台使用,同一个APP使用者的账号能够在三个平台的APP中使用,实现三个平台的兼容使用; 服务端包括若干个数据中心,根据APP移动终端的地理方位通过智能DNS系统把用户的请求定位到一个距离移动终端近的数据中心,以节省数据传输的成本,提高数据传输效率,减少网络延时,提高网络服务的速度;每个数据中心包括两个入口,分别为基于TCP的聊天服务集群和基于HTTP的API接入服务器;基于TCP的聊天服务集群采用SSL加密的方式与移动终端进行数据通信,基于HTTP的API接入服务器采用HTTPS的方式进行加密;API接入服务器提供了简单的无状态服务,并不负责具体的业务处理,对于每个业务请求,会调用后台的服务集群中的对应的业务服务,并且会对每个请求做访问权限控制。任意两个数据中心之间具有跨数据中心数据同步功能;实现将多个数据中心进行数据同步,提高即时通讯服务的时效性和准确性; 服务端还包括数据分析中心,数据分析中心为数据分析集群; 每个数据中心的功能模块包括:授权服务、认证服务、好友服务、群组服务、文件服务、反垃圾服务、消息路由服务和黑名单服务,每个功能模块的服务均由一个相对应的服务器提供相应服务; 每个客户端SDK的功能模块包括:社交组件、传输加密服务、存储加密服务、用户集成服务、数据压缩服务、语音优化服务、定位优化服务、电量优化服务、宽带优化服务。优选的,每个数据中心的数据存储在NoSQL数据库系统中;任意两个数据中心之间的跨数据中心数据同步通过NoSQL数据库系统实现。本专利技术优选选择使用cassandra数据库系统,提供了跨数据中心的数据复制功能,并且提供了高性能的读写请求和水平扩展,能够满足即时通讯云平台是数据存储和同步的要求。优选的,每个数据中心通过Flume数据系统与数据分析中心实现非实时数据同步。Flume是一个高可用的、高可靠的、分布式的海量日志采集、聚合和传输的系统,Flume支持在系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接受方的能力,能够满足本专利技术的即时通讯云平台的数据同步需求。优选的,搭载被嵌入客户端SDK的APP的移动终端与距离该移动终端近的数据中心的负载均衡器连接,负载均衡器分别与该数据中心的聊天服务集群、API接入服务器连接。通过负载均衡器,能够使用户组的APP的访问和数据要求进行均衡,使各个数据中心的服务器能够较为均衡的运行,保证即时通讯云平台运行的稳定性和高效性;同时,当用户组的数量增大时,能够通过负载均衡器扩展更多的数据中心实现大量用户的使用需求。优选的,每个数据中心设有用于保存聊天服务集群的离线消息的MySQL集群,在等待接受该离线消息的用户上线后进行离线消息的发送。对于离线消息,离线消息保存到MySQL集群当中,等待用户上线再发送,确保消息不丢失。优选的,每个数据中心设有用于缓存聊天服务集群的数据的基于内存的数据缓存集群,本专利技术中优选使用Redis集群。聊天服务集群通过心跳包来实现掉线检测,保持与APP的长连接,通过Redis集群来管理会话。优选的,每个数据中心设有KafKa数据分发集群,数据分发集群接收聊天服务集群和数据中心功能模块的聊天消息和统计数据;KafKa数据分发集群具有高吞吐量和拉模型的消息消费者模型,能够满足即时通讯云平台的数据统计和分发要求; 数据中心的KafKa数据分发集群通过Flume数据系统与数据分析中心实现非实时数据同步。优选的,每个数据中心设有与KafKa数据分发集群连接的Storm流式业务处理单元。Storm流式业务处理单元提供了高可靠的流式计算框架,通过在storm上部署的计算单元,我们的系统能够根据业务的增长情况有水平伸缩,在用户组和使用者较多的情况下,能够扩展服务规模,满足大量用户高并发的使用要求。优选的,每个数据中心还设有用于进行消息查询的ElasticSearch搜索服务器。能够为用户提供信息查询和搜索服务。优选的,数据分析集群包括用于与每个数据中心实现数据同步的Flume数据系统,以及与该Flume数据系统连接的KafKa数据分发集群;数据分析集群还包括用于存储数据分析结果的Cassandra数据库系统、用于存储时间序列数据的OpenTSDB监控系统、用于存储原始数据和执行批处理数据分析任务的Hadoop分布式文件系统; KafKa数据分发集群通过Streaming数据传送方式分别与Cassandra数据库系统、OpenTSDB监控系统和Hadoop分布式文件系统连接; 服务端采用Zookeeper管理各个集群。本专利技术的优点和有益效果为:本专利技术多租户高并发的即时本文档来自技高网...
【技术保护点】
一种多租户高并发的即时通讯云平台,其特征在于,所述即时通讯云平台包括服务端以及嵌入在不同租户的APP中的客户端SDK;搭载被嵌入客户端SDK的APP的移动终端通过传输通道与服务端建立数据连接;所有使用同一个搭载被嵌入客户端SDK的APP的用户为一个租户;所述即时通讯云平台同时为多个租户的嵌入客户端SDK的APP提供即时通讯服务;客户端SDK能够嵌入至Andorid操作系统、iOS操作系统的APP中以及Windows操作系统的应用程序中;服务端包括若干个数据中心,根据APP移动终端的地理方位通过智能DNS系统把用户的请求定位到一个距离移动终端近的数据中心;每个数据中心包括两个入口,分别为基于TCP的聊天服务集群和基于HTTP的API接入服务器;任意两个数据中心之间具有跨数据中心数据同步功能;服务端还包括数据分析中心,数据分析中心为数据分析集群;每个数据中心的功能模块包括:授权服务、认证服务、好友服务、群组服务、文件服务、反垃圾服务、消息路由服务和黑名单服务;每个客户端SDK的功能模块包括:社交组件、传输加密服务、存储加密服务、用户集成服务、数据压缩服务、语音优化服务、定位优化服务、电量优化服务、宽带优化服务。...
【技术特征摘要】
【专利技术属性】
技术研发人员:马晓宇,刘少壮,
申请(专利权)人:北京易掌云峰科技有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。