大型交易系统相关技术以及总结

公司做了大型分布式现货交易系统,包括各种体系,其中涉及的技术需要深入研究下。

其中我负责,整体系统中,最核心的账户体系部分设计、架构以及整体细节实现。

一、技术方面:

1、分布式协调方面:

zookeeper

redis

2、持久化方面

分布式缓存redis

数据持久mysql

3、系统通信方面

dubbo

netty(行情系统使用)

okhttp(http通信使用)

rocketMq

4、系统搭建方面

spring,mybatis,spring boot

5、其他

jwt,高并发,分布式任务

二、业务方面:

注册签约流程:

1、注册

2、签约

支付流程(三方支付):

1、出金

2、入金

盘后交易流程:

1、认购

2、配购

3、盘后非交易过户

4、提货

盘中交易流程

1、委托

2、撮合

3、成交

4、撤单

交易所盘中状态修改流程

1、出入金状态

2、交易挂起释放状态

3、账户锁定状态

4、开市闭市状态

盘后结算流程

盘后内部对账流程

盘后外部对账流程

三、数据流转方面

1、普通用户资金数据流转

2、普通用户持仓数据流转

3、平台资金数据流转

总结:涉及业务的具体细节不方便说了,就当给自己记个流水账。但是涉及的技术,自己总结并且写出来。

收货:

技术上,就是上面写的的那些

业务上,现货交易,金融系统,三方支付等业务

运维上,包括linux系统部署调试等,shell简单的编写。

开发工具,原来一直是eclipse,现在转idea了

吐槽:如果只是上面这些治标不治本的提高,那岂不是很low,呵呵

思维上,

整体流程思维模式,即在编写代码时需要对本系统业务进行考虑,相关业务需要通盘了解并确定是否有涉及。

高度思维模式,即跳出本系统,因为大型交易系统数据量大,流转复杂,涉及到的系统很多,通信方式也不同,所以需要考虑是否涉及其他系统,对整个交易体系进行思维。

无死角思维模式,即对于思维的业务线,不可中断,中间不可以有任何不明确或者任何不清除的死角。

代码上,

对于try/catch的敏感性提高,对于消息队列的业务去重敏感性提高,对于redis读取写入以及分布式缓存设计上,查询维度上敏感度提高,对于面向对象即抽象业务提取思维敏感度提高,对于其他代码的整洁度敏感性提高。对于订阅消息造成的高并发处理敏感度提高。对于重要代码部分埋点日志填写敏感度提高。

在沈阳这个技术相对发展较差的地方,还不错,收获颇丰,再接再厉,自在极意功分很多阶段,其实还差很多,有自知之明,继续吧

再次吐槽:技术人生首先是要有前瞻性眼光,现在貌似人工智能很火,我是跟风呢?还是继续跑java呢?其实java还没跑明白呢

猜你喜欢

转载自287746074.iteye.com/blog/2400735
今日推荐