XXX机构XXX系统查询交易中包含实时查询和历史查询,不同的交易被当作一个功能函数被组织在一个服务中
,由该服务根据报文中的交易码字段来调用不同的函数进行处理。该模式将响应时间差别很大的处理放在了一个SERVER中,历史查询速度慢,
对实时查询造成了影响。为了提高客户体验和交易执行效率,需要将实时交易和历史交易分拆,分别部署到不同的应用服务器上,
实时查询发往生产AP服务器,历史查询发往历史AP服务器。为了不对应用程序进行分割且保持两个服务器上执行码的一致性,
希望从TUXEDO配置上进行实现此功能。
个人解决思路:
利用TUXEDO服务别名功能,使同一个服务以不同的别名发布,UBB中配置举例如下:
QuerSer SRVGRP=grp1 SRVID=1000 MIN=5 MAX=10
CLOPT="-s QueryS1,QueryS2,QueryS3:QueryS"
QuerSer SRVGRP=grp2 SRVID=1000 MIN=5 MAX=10
CLOPT="-s QueryS4,QueryS5,QueryS6:QueryS"
这样不同的查询交易调用不同的服务名,就可实现��实时交易和历史交易服务分开。
也可在编译服务时实现服务别名功能:
buildserver -f Query.c -o QuerSer -s QueryS1,QueryS2,QueryS3:QueryS 。