前天和朋友在一起聊天,聊到在做什么,听着他滔滔不绝地,真佩服他的记忆力,后面他说他都有记笔记的习惯,一篇篇的,什么CSDN、javaeye、博客园,还自建博客。确实东西做久了,自然慢慢地也就淡忘了,回想一下以前做过的事,能记起来的还真屈指可数。
看看上次写博文的时间是在2013年8月27日,距今已经4年了,这4年我在干什么??
今天就说说支付服务的那些事吧。以此来对过去几年做个小结。
新的业务系统初建时,业务逻辑相对简单,业务量也比较小,为了能够快速实现功能,发布上线,大多数团队都会把所有的逻辑都耦合在一个系统。这对于初期业务的快速迭代是有一定好处的。毫不例外,前公司的支付交易系统也采用了这样的方式。
单体架构简便快速,然而这种架构的缺点也很明显,姑且不说高并发访问,逻辑分散,随着需求的迭代,后期难以维护。初接项目,问题很多,每天就是排查问题,和第三方确认交易等。好在深陷泥泞不久,就开始着手新支付服务设计实现。那么,支付要解决的问题有哪些呢?
做系统时,我们往往需要先明确需求,所以我们先来看看支付服务需要解决的问题有哪些。
监控与预警。要保证系统的高可靠和高可用,监控必不可少。业务上,监控异常的交易。监控银行和渠道的可用性。手续费预警,避免坐扣发生。系统运行情况监控等。
资源分配。按交易来源的不同,交易可以分为两类:一类是用户发起,一类是系统定时批量交易。用户发起的交易一定得先得到保证,然后又要兼顾系统定时批量交易。
总之,需求很明确,就是适应互联网应用的场景,也没啥特别之处。后面有时间再理一下系统的演进实现吧。
转载请注明出处!!!
http://blog.csdn.net/stuqbx