GKE与RTX的可扩展性对比

     GKE与RTX都是优秀的企业即时通讯产品,各有千秋,例如GKE内置的功能更丰富,RTX界面更清爽、操作更方便。由于二者都提供了二次开发接口,可以利用接口来增加原本没有的功能,所以本文不打算在功能上对二者进行对比(因为通过扩展都可以实现对方没有的功能,例如消息监控),而是准备把二者均视为企业级应用整合的平台,从系统整合需要解决的问题的上来对它们的扩展性做一下对比。

1 环境要求

1.1 运行环境

     GKE有分别适用于Windows和Linux的版本。

     RTX只能运行在Windows上,这也是目前RTX的一项不足。但考虑到大部分pc机装的都是Windows操作系统,所以这个问题的影响比较小。另外,可以在Linux上利用Wine等软件运行Windows程序。

1.2 支持的开发语言

1.2.1 服务端SDK

     GKE服务端SDK提供http通讯接口支持各种开发语言

     RTX服务端SDK以COM组件的形式支持各种开发语言

1.2.2 客户端SDK

     GKE客户端SDK只提供所谓的“CTT”协议,换句话说,只能在html格式的页面上用CTT标记,有很大的局限性。

     RTX客户端SDK以COM组件形式支持各种开发语言。

1.3 接口跨平台支持

     这里的跨平台指的是调用方和IM服务器处于不同平台,例如运行在Linux上的程序调用运行在Windows操作系统上的IM服务器。这里只进行服务端的比较,客户端SDK不存在跨平台的情况,因为调用客户端SDK的插件始终与客户端处于同一台机子上。

     GKE服务端SDK提供http通讯接口,所以可以跨平台

     RTX服务端SDK虽然以COM组件的形式对外提供接口,但提供了CGI程序,我们也可以在它COM接口的基础上封装web service,所以也可以跨平台

2 单点登录

2.1 正向登录

     正向登录指的是从IM客户端单点登录到应用系统。

     GKE点GKE客户端的相应系统对应的频道时,GKE把gid+passport以url的query string的方式传递给应用系统,应用系统取得gid和passport之后,再调用GKE的接口验证passport,如果验证通过,应用系统就根据gid找出本系统对应的帐号,并登录。

     RTX在应用系统页面中用javascript调用RTX客户端SDK的COM接口得到RTX客户端的帐号和签名,并发送到应用系统服务端中,服务端再调用RTX服务端SDK验证帐号和签名是否匹配,如果匹配的话,应用系统就根据这个帐号找出本系统对应的帐号,并登录。

     从上面的分析来看,这两个产品都支持正向登录,但是,我们不妨把正向登录的需求弄的再苛刻一点:只要登录了IM客户端,不管用户是通过点IM的频道进入应用系统,还是直接打开IE收藏夹里的应用系统链接进入系统,都应该直接登录进去,无需再次输入帐号和密码。

     这个需求看似苛刻,但它是合理的,因为只有这样,才能体现出把IM产品作为应用整合平台的优越性。但GKE无法满足这个需求,因为用户的IE收藏夹内的链接可不会带gid和passport参数。但RTX可以很好的满足这个需求,因为它并不受url的限制。

2.2 反向登录

     反向登录指的是从应用系统单点登录到IM。

     GKE通过CTT协议,在应用系统页面上添加一个标记,例如<a href= elava://login?gid=5000.33854266&pwd= E10ADC3949BA59ABBE56E057F20F883E>登录GKE</a>

     RTX在应用系统服务端调用RTX Server SDK,得到想要登录帐号的SessionKey,并输出一段html到客户端,这段html文本中用javascript调用RTX客户端SDK提供的COM接口,实现登录到RTX。

     从上面的分析来看,GKE的CTT协议局限性很大,它要求要在应用系统的某个页面上放置一个超链接才行。但我们在实际应用有可能需要在登录应用系统的时候就同时登录IM,又或者在执行某个操作的时候登录IM,GKE无疑无法做到这一点。但RTX就可以,因为它的这种反向登录方式是非常灵活的。

3 用户/组织机构/角色/权限

     我们基于GKE或者RTX开发的应用,难免要用到用户、组织机构和角色权限等。当然我们可以额外再开发一套自己的用户/组织机构/角色/权限的模块,也可以直接用GKE或RTX的用户/机构/角色/权限模块。但不论我们用自己开发的(因为要数据同步),还是用GKE或RTX的,都需要GKE或RTX的SDK能够提供足够的接口。好,让我们看一下这两个产品的SDK都提供了哪些关于这个问题的接口。

      GKE组织机构的增删改查、用户的增删改查、关联用户和组织机构

      RTX组织机构的增删改查、用户的增删改查、关联用户和组织机构、角色的增删改查、关联用户和角色、权限的查询,关联角色和权限

     可以看到,GKE提供的关于这个问题的接口实在太少。

4 结论

     通过对上面这些具体问题的分析,我们可以得出如下结论:RTX更适合作为企业级的整合平台,它有着非常良好的扩展性和丰富的接口。

原文地址:https://www.cnblogs.com/default/p/1726366.html