一个理财平台可以从不同的维度来看。对于一个消费者来说,最宏观的看法,P2P公司的理财平台相当于一个中介,一边用于对接用户,一边用于对接产品提供商。这个中介系统负责用户和产品提供者之间的交互。对于一个P2P理财公司来说,最核心的两个模块是财务账目模块和运行模块。其他的模块都是基于这两个核心来扩展的。
什么是好的架构系统?看上面的业务架构图,它严格的定义了各个模块的边界。对于一个需求,我们写在哪个系统的哪个部分,都唯一确定,而不会产生模棱两可的状况。码农所做的工作就是在相应的格子中填充代码,完成相应的单元测试。架构的设计要解耦,比如一个客户购买P2P公司的一款理财产品,他在H5端下单付钱,P2P公司的理财平台要对接到银行,从客户的银行卡扣钱,银行扣钱成功要通知P2P平台,这个通知很大概率是收不到的。这就涉及到了消息传递的同步和异步。我们先举个例子,A在微信上向B发了一条微信消息,A立即接受到了发送成功,但是此时消息只是到达了A服务器,(假如A服务器有足够策略保证把接受到的消息发送到B服务器,再递推到B客户)。这就是简单的同步和异步问题。如果你问我同步好?还是异步好,一般公司的是先采用同步方式,后采用异步方式,因为异步方式需要单独的开发消息传送机制。而且是当数据体量特别大的时候,才去采用异步方式来提高效率。
OP平台的全称是Operation Platform,看上面的图:
如上图所示,是P2P理财平台的表结构的设计:
上图的表示详细的表结构,应该蛮详细的,尤其是对设备号的跟踪,登陆token的记录等。
接下来,再来回顾一下系统依赖图, 对于用户来说,他们的视角是ios、android、pc、h5四个入口,这四个入口用于对外展现公司的产品目录,大部分情况下他们的交互是与后台通过接口来交互,也有少部分情况需要不同的设备之间进行交互。对于后台的交互,Controller对于相应的请求request,做出相应的业务逻辑处理后,封装到response返回给四个终端。
上图所示,定义的接口规范是用于终端和后台进行的数据交互,最常用的可以使用jQuery封装好的Ajax来获取请求。下面是一个Android客户端需要调用H5的时候定义的一些公共接口文档。
新闻热点
疑难解答