单元化后,其实需要考虑对dubbo的源码修改和扩展。因为A系统需要根据passid确认调用的B系统的机器,这样才能真正实现单元化的改造。
金融业务需要考虑全体一本帐的概念。
passid-》walletId->cId之间的概念。一个cid对应一个实体的人,可以理解为身份证。一个passid为一个登陆的用户名,一个实体的人可以有多个用户登录名。在一个登陆名登陆后,其实该登陆名下面有多个银行的账户挂接。这多个银行账户的挂接就是walletId。
用户的cid如果可以在注册时就确认好,在cid中确认几位为分库分表位。同样这几位,在walletId和passid以及在币,在流水号
中,都有对应的这几位,这样最终流水数据和passid相关数据都可以很清楚的存储,也方便查询。
今天还有个问题,是否在做多IDC的时候,IDC之间的mq集群需要做feedover。例如:A IDC的proxy没问题,但是该IDC的mq集群
全挂了,需要将proxy路由到远程的其他IDC的mq进行处理。其实这是不需要的,主要是远端时延不可接受,同时,mq已经是集群
全部挂了,而proxy没问题的可能性不需要考虑,正常采用单元化,并且在单元化内一个挂了,自动切换到其他单元上就可以了。
同时注意,单元的概念并非对应一个数据库,可能还是一个set对应多个数据库的,只不过这个数据库集群不是全量的数据库集群而已
本文探讨了单元化架构在金融系统中的应用,重点介绍了如何通过修改dubbo源码实现系统间的调用,以及在多IDC环境下单元化设计的考虑。文中详细解释了passid、walletId和cId在金融业务中的角色,以及如何在注册时预设分库分表位,确保数据存储和查询的高效性。
381

被折叠的 条评论
为什么被折叠?



