全部文档

架构介绍

# 基础架构介绍

融云提供的即时消息传输服务,不在 App 之外建立并行的用户体系,不需要同步用户帐户,不影响 App 现有的系统架构与帐号体系,与现有业务体系能够实现完美融合。

融云的架构设计上具有如下特点:

  • 无需改变现有 App 的架构,直接嵌入现有代码框架中;
  • 无需改变现有 App Server 的架构,独立部署一份用于用户授权的 Service 即可;
  • 专注于提供通讯能力,使用私有的二进制通信协议,消息轻量、有序、不丢消息;
  • 安全的身份认证和授权方式,无需担心 SDK 能力滥用(盗用身份的垃圾消息、垃圾群发)问题。
App -> AppServer: 通过客户应用服务器维护应用中业务数据,如:用户信息、好友关系等 AppServer --> App: 返回用户、好友及其他业务数据 App -> AppServer: 使用 IM 服务时,需要请求应用服务器,由应用服务器向融云服务器进行身份授权 AppServer -> RongCloudServer: 应用服务器和融云服务器进行身份授权,不需要提交用户资料 RongCloudServer --> AppServer: 返回授权状态 AppServer --> App: 返回授权状态 App -> RongCloudServer: 授权成功后,通过融云 SDK 直接向融云服务器转发送消息

说明:

  • 应用(App)需要同应用服务器(App Server)之间进行信息交互,如:获取用户数据(User Data)、用户好友关系(Friend Relationship Data),融云不维护 App 的用户系统和好友关系;
  • 应用服务器(App Server)只需要和融云服务器(RongCloud Server)进行身份授权,不需要提交详细用户资料。
  • 应用(App)发送消息需要经过融云服务器(RongCloud Server)转发(IM 的离线、通知等逻辑决定了消息必须经由服务器进行一次转发);

SDK 体系架构

本文档将详细介绍融云的 SDK 产品架构和消息体系,以便于您更深入的了解融云并更快速的开发自己的产品。

IMKit

IMKit 的功能主要是封装各种界面对象,服务于开发者快速实现自己的产品,主要特点是是支持快速集成,支持丰富的界面定制功能。

IMLib

IMLib 的功能是提供基本通信能力库,封装了通信能力和 Conversation,Message 等各种对象,服务于需要根据自己的产品去自己实现界面的开发者。主要特点是封装清晰,轻量,便于使用。

Protocol

Protocol 是融云的核心协议栈,使用融云自定义的私有二进制协议。主要特点是是轻量化,有序可靠,不丢消息。Protocol 部分使用 Native 语言开发,在 Android 和 iOS 平台上保证业务一致性,便于开发者商用化自己的产品。

# SDK 集成流程

文档是否解决您的问题 ?

如果遇到产品相关问题,您可 提交工单 寻求帮助