一、
与东方通TongEASY
有关的基本概念
东方通中间件的组成:由三层组成。通信管理模块、事务管理模块、应用开发API。
u
节点:是中间件的提供服务的基本单位,独立配置,独立启动,提供服务。可以进行集群配置。配置时分为上下级节点,下级节点调用上级节点所提供的服务。
u
客户端:分为节点客户端(胖客户端)和瘦客户端。
u
连接:分为常连接和动态链接,上下级节点之间的连接为常连接;瘦客户端采用动态连接,调用时需设置代理节点。
u
事务:分为全局事务,分支事务。东方通支持XA式两阶段提交,由中间件管理事务的中间状态;也支持有应用自己管理事务的非XA方式。
二、TongEASY
的安装和配置
接下来我们学习的是TongEASY的安装和配置,安装过程非常的简单,只需要将TongEASY的压缩包解压就可以,在配置四个环境变量。
系统要求:对于AIX,只需要检查系统参数maxuproc > 1000就可以了,其他平台还需要调整共享内存、消息队列、信号量、打开文件数、并发进程数等参数。
环境变量:需要配置4个系统参数
TONGEASYHOMEDIR(指向TongEASY安装目录)
TONGEASYDIR(指向TongEASY配置文件存放目录etc)
TEFILESDIR(指向TongEASY发送、接收文件的目录file)
TELOGDIR(指向TongEASY日志文件的存放目录log)
编译环境:系统需要有CC编译器,C标准库,多线程支持库,PROC编译。
配置文件:
通信管理模块配置文件
srcpara.txt 中间件参数配置文件
TongLINK.conf 节点配置文件
route.txt 路由配置文件
事务管理模块
dbdesc.txt 数据库配置文件
svcdesc.txt 服务配置文件
常用命令:
tminit 中间件启动
tmend 中间件结束
tlmenu 节点配置工具
loadnode 重新加载配置文件
三、
应用Demo
介绍
今天还介绍了一个同步调用的Demo,来了解TongEASY的开发过程。
配置服务有以下步骤:
配置数据库连接配置文件dbdesc.txt
配置服务配置文件svcdesc.txt
编译客户端,编译方法跟普通的PROC程序没有分别。
编译服务端,需要使用Tebuild命令进行编译服务
四、TongEASY
提供的API
TongEASY面向不同的数据库(Oracle,Informix,Sybase)提供不同的编译库,但是具有相同的编程接口。对于语言支持上,不但提供了C库,还提供了供Java调用的类库。
C程序会应用到的API:
TE_tpinit() 应用注册
TE_tpterm() 应用注销
TE_tpcall() 同步方式调用服务
TE_tpacall() 异步方式调用服务
TE_tpgetrply() 接收异步请求应答
TE_tpreturn() 服务端返回
TE_tpforword() 转发请求
五、
与TUXEDO
相比TongEASY
的优劣
在中间件的产品中,TongEASY算是后期之秀,很多面有着比TUXEDO更方便的应用,更灵活的设计。尤其是它拥有的节点的概念,是中间件集群配置更加的方便,他的名字服务给了服务逻辑别名,使得配置更加灵活。同时名字服务集成的负载均衡功能,更有利于它的这种分布式设计结构。
和
TUXEDO
相比,他也存在着一些不足。①
TongEASY
不支持服务级重启,只支持节点级重启,这样对于
7*24
系统可能会有一些影响②
TongEASY
不支持按照服务分别记录日志。一个节点上的日志,会记录到一个日志文件中。这样大型的系统会造成日志文件相当的大,并且不利于通过日志文件查找问题。