新版统一支付技术解决方案.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
新版统一支付技术解决方案 文档标识: 当前版本: 0.1 当前状态: 草稿 发布日期: 2015/10/10 发布 修改历史 日期 版本 作者 修改内容 评审号 变更号 目 录 第1章. 项目理解 6 1.1. 需求分析 6 第2章. 总结架构 7 2.1. 系统伸缩性 7 2.2. 逻辑架构 8 2.3. 技术架构 10 第3章. 核心组件 11 3.1. Web层 11 3.1.1. 负载均衡 11 3.1.2. Session管理及缓存 15 3.2. 应用层 16 3.2.1. 服务框架 16 3.2.2. 注册中心 21 3.2.3. 消息框架 22 3.2.4. 数据缓存 28 3.3. 数据访问层 29 3.3.1. DAL 29 3.4. 管理层 30 3.4.1. 系统监控告警 30 3.4.2. 网络管理 31 第4章. 关键技术 32 4.1. WEB系统扩展 32 4.2. 缓存访问接口 32 4.3. 前后端事务一致性 32 第5章. 软件部署 33 5.1. 部署结构 33 5.1.1. 简单式基本型 33 5.1.2. 分布式扩展型 33 5.2. 部署方式 33 5.2.1. 手工化部署 33 5.2.2. 自动化部署 33 5.2.3. 服务化部署 33 项目理解 需求分析 统一支付做为各个使用系统的关键功能模块,承担着极其重要的交易角色,同时支付做为一个独立的产品,与任何业务系统无关,其中包括的功能有支付、退款、查询、对帐、报表等等,由于各个业务子系统接入支付的请求数量很大,对支付模块本身的设计、性能、响应、数据一致性、容错性、稳定性及可用性等提出了巨大的挑战。 总结架构 本解决方案假设业务管理子系统以千万级请求访问为基础,通过使用通行证以及认证的管理来实现各个应用的统一管理。本项目是基于互联网模式来设计,抛弃传统企业设计的厚重,大集中的理念,而采取互联网的轻薄,分布式的理念,分层分块,各个层次和组件各司其职、彼此协作,用层次化搭建的方式构建能力平台,形成当前适用,将来可扩展的模式。 考虑到本系统需要极大的访问量以及系统的未来可伸缩性,下面分别从展现层,应用层,数据层来阐述系统伸缩性的实现,从而实现互联网应用的3大特点:大并发、可伸缩、高可用。 系统伸缩性 所谓伸缩性就是在系统负荷大的时候,能够通过增加服务器/虚拟机来缓解压力;同样的,当不需要多台机器的时候,可以减少服务器的数量来。而这些改变,最终用户是透明的。 可伸缩性-前端 系统需要对外提供统一的访问入口,采用Nginx+keepalived能很好的实现高可用、可扩展以及负载均衡的要求。Nginx提供负载均衡的能力,keepalived提供健康检查,故障转移,提高系统的可用性。采用这样的架构以后很容易对现有系统进行扩展,只要在后端添加或者减少服务器,只要更改配置文件,并能实现无缝配置变更。在本项目中建议采用由Nginx充当LoadBalancer的职责,Keepalived实现Nginx的HA的架构模式。 对session的管理,在集群服务器不多时,可采用Session复制的方式进行扩展,因为广播式复制到其他服务器有一定延时,会带来一定网络开销;在服务器数据较多以及需要水平扩展的模式下,需要有新的session管理模式:session从web服务器中被保存在缓存服务器中,所有的web服务器对统一从存有session的缓存服务器进行读写,分离了session和web服务器之间的对应关系,从而实现web服务器的线性扩展。 伸缩性-应用层 应用层采用无状态分布式模式,借助服务框架实现展现层和应用层的前后端分离,另外应用层自身可根据业务的划分,分解为多个模块,实现把调用分解到各个服务器上,从而降低每台服务器的调用压力。 前端在调用后端服务的时候,先查询注册服务器,得到后端服务的节点、接口信息等,并把配置信息缓存在前端应用中,减少查询服务的次数,提高访问的性能。在注册服务器修改了服务节点和接口等信息,可以采用观察者模式,对各个客户端缓存的信息进行强制刷新。 【基于服务框架的分布式部署方式】 这里展现的是一种前后端分离模式的部署,前端是多台web,

文档评论(0)

335415 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档