周报
TUXEDO
系统在账务和接口出现得比较频繁,
除了
ATM
编程?/p>
域的配置也是比较重要的,
这周就结合下账务和接口现有的架构总结下我对域的理解吧?/p>
域的作用主要是实现系统间的交互,
一台或者多台服务器都可以构成一个域?/p>
你可以把
一个域看成域名
+IP+PORT
。账务这边的
tuxedo
系统,正常会配置两个或者三个对外的域:
第一个是给账务前台使用,账务前台使用?/p>
weblogic
服务器,这时前台?/p>
weblogic
系统?/p>
己可以看成一个域,后台的
tuxedo
也是一个域?/p>
Weblogic
侧和
tuxedo
侧都要配置好对方?/p>
自己的域名,不光是地址和端口号要一样,连域名也要两边一致?/p>
要配置地址和端口号,这
个是很好理解的,
这是不同主机间交互的必要条件?/p>
但是为什么域的两边都要加入对方的?/p>
址和端口呢?当我服务为单侧调用时,只调用端加入被调用方的地址不就行了么?这就?/p>
socket
通信?/p>
客户端只要知道服务端的地址就行?/p>
服务端可以接收到请求时自动知道客户端
的地址,而不用配置客户端的地址?/p>
一开始我不知道是什么原因,
后来知道了原因,系统?/p>
交互是要讲究安全减小风险了,
两侧都要配置进对方的域是为了仅仅只和对方通信?/p>
这也?/p>
域名两边也要一直的原因。如果账务的
tuxedo
服务随便什么域都能调用,那还得了?第二
个域是用来调用计费侧的实时欠费的,这时候账务侧?/p>
tuxedo
和计费侧?/p>
tuxedo
分别是一
个域?/p>
预付费用户要计算余额得减去实时欠费,
总账表中其实就有数据?/p>
账务侧自己就能算
实时话费?/p>
何必要劳烦计费侧呢?这个原因是不是为了提升缴费时的查询速度?我们都知道
计费侧的事实欠费时放在内存中的,
从它那去肯定要比账务侧快?/p>
其实这样做的目的并不?/p>
为了账务前台的查询,
而是为了满足停复机的需求,
账务侧缴费会触发停复机,
缴费的数?/p>
量是很大?/p>
对时间的要求很高?/p>
即使现在这种优化了的办法有时候还是满足不了短期内高数
据量的需求,比如说批扣。第三个域是?/p>
VC
充值接口用的,当然有的地方没有,这种情?/p>
类似欠费前台,都?/p>
WTC
互联,就不再说了?/p>
下面说下
tuxedo
侧域的配置的方法,一个简单的配置文件如下?/p>
*DM_RESOURCES
VERSION=U22
*DM_LOCAL_DOMAINS
test_tux
GWGRP=GROUP3
TYPE=TDOMAIN
DOMAINID="test_tux"
BLOCKTIME=240
MAXDATALEN=204800
MAXRDOM=89
CONNECTION_POLICY=ON_STARTUP
*DM_REMOTE_DOMAINS
bank_135 TYPE=TDOMAIN
DOMAINID="bank_135"
*DM_TDOMAIN
bank_135 NWADDR="//135.161.24.135:5438"
*DM_LOCAL_SERVICES
#server[SQL_AGENT]
SHORT_SQLAGENT
##service in
SERVER [sqlagent_s_serv] 03.05.29 ADD