金融信息服务平台项目技术方案_第1页
金融信息服务平台项目技术方案_第2页
金融信息服务平台项目技术方案_第3页
金融信息服务平台项目技术方案_第4页
金融信息服务平台项目技术方案_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、金融信息服务平台项目技术方案xx金融信息服务平台项目技术方案xxx有限公司二一四年七月目录一、简介 . 5 二、系统总体架构. 5 三、技术选型 . 5 3.1 开发语言 . 5 3.2 数据库 . 6 3.3 基础技术架构. 6 3.3.1 spring框架 . 6 3.3.2 ibatis数据访问框架 . . 6 3.3.3 redis缓存框架 . 7 3.4 前端开发 . 7 3.4.1 pc 端网站 . 7 3.4.2 pc 端后台 . 7 3.5 第三方开发 . 7 3.5.1 微信开发 . 7 3.5.2 支付开发 . 8 3.5.3 资金托管开发 . 8 3.6 安全体系 . 8

2、 3.6.1 数据加密机制 . 8 3.6.2 jwt 认证标准 . 8 3.6.3 完善的日志机制. 9 3.7 集群方案 . 9 四、工作量估算 . 10 五、参与人员 . 10 3.1 技术总监 . 11 3.2 架构师 . 12 3.3 开发团队 . 13 3.3.1 项目经理 (1 人) . 13 3.3.2 前端开发工程师 (4 人) . . 14 3.3.3 后台服务开发工程师 (3 人) . . 15 3.3.4 ui设计工程师 (2 人) . 16 3.3.5 数据库开发工程师 (2 人) . . 17 3.3.6 质量控制工程师 (2 人) . . 18 六、经费预算 .

3、19 一、简介本技术方案是由华夏标准信用管理有限公司设计,目的是为金担当信息服务平台提供技术上可实施的方案。本方案从技术选型、工作量估算、参与人员和经费预算几个方面做了详细评估,是充分分析了客户需求并结合自身行业经验做出的成果。二、系统总体架构本系统使用三层架构和基于web 的访问界面,以便于前端业务用户的使用。先进、可靠、稳定的架构可以有效降低系统间耦合度,使系统复杂度分割合理,保证系统可维护性与可管理性。系统架构如下图所示:三、技术选型3.1 开发语言选择 java 体系的最大的优势在于其庞大而完善的生态系统,其学习成本和技术风险是比较低的。 java 生态系统的完善性主要体现在一下几个方

4、面:数量丰富的从业人员完善的第三方技术体系和社区功能强大的开发工具选择 java 体系能为项目的持续开发和维护提供一个平稳的成长曲线。3.2 数据库mysql 数据库相对 oracle 、sqlserver等数据库优势如下:免费多种存储引擎可灵活适应不同的业务场景分布式集群有成熟的方案可供实现能与 java 很好的集成选择 mysql 不仅可以节省一大批license 费用, 也能为平台在初期成长时提供良好的存储支持。3.3 基础技术架构3.3.1 spring框架spring 框架作为轻量级ioc 容器,现在已经是行业标准,其适应范围很广。作为粘合剂, spring 框架有很多优点:spri

5、ng mvc 为分层构建和管理代码提供良好支持。为 restfulapi 设计提供良好支持,使得构建集群系统更为容易。spring aop 为垂直领域构建代码提供良好支持使代码隔离后更容易管理spring 声明式事务事务的控制更为简单3.3.2 ibatis数据访问框架是最简单的一种持久化框架, 其结构清晰,灵活配置。相对 hibernate和 apache ojb 等“一站式” orm 解决方案而言, ibatis 是一种“半自动化”的orm 实现。其主要优点如下:把 sql 语句从 java 源程序中独立出来,放在单独的文件中编写,给程序的维护带来了很大便利。封装了底层 jdbc api

6、的调用细节,并能自动将结果集转换成java bean对象,大大简化了java 数据库编程的重复工作。简单易于学习,易于使用,非常实用。需要程序员自己去编写sql 语句,程序员可以结合数据库自身的特点灵活控制 sql 语句,因此能够实现比 hibernate等全自动 orm框架更高的查询效率,能够完成复杂查询。3.3.3 redis缓存框架由于使用了 ibatis作为数据访问框架而没有使用hibernate , 因此选择了额 redis作为主要的缓存容器。 redis 是一个基于 key-value的高速缓存系统,能支持更多复杂的数据结构,并且有持久化的功能。并且redis 也是集群系统中的重要

7、组件之一。本系统使用 redis 来应对高并发访问下对数据库造成巨大压力的问题。3.4 前端开发3.4.1 pc 端网站pc 端网站由于需要兼顾各种访问者,而访问者使用的浏览器众多,标准不一,所以在兼容各浏览器版本上的工作量会比较大。其中主要是 html4 、xhtml1 和 html5 的兼容工作量。由于一些比较知名的框架的新版本已经明确表示不再支持ie6-8 ,在 js 框架使用上还是以jquery1.11.3 为主。jquery 1.11.3 3.4.2 pc 端后台pc 端后台是各个机构和平台维护者使用,可以对浏览器有较高要求,比如使用谷歌浏览器的最新版,可以完美支持 html5 的相

8、关特性,在 js框架上可以使用 jquery2.1 ,easyui1.3.6 以及各种 jquery 小插件。罗列部分主要组件如下:jquery 2.1.4 easyui 1.3.6 base64 2.1.7 fancybox 2.1.5 uploadify 3.2.1 3.5 第三方开发3.5.1 微信开发企业号企业号,是微信为企业用户提供的移动应用入口,也可以连接组织与个体间相互认可且稳定的关系。 微信企业号与公众号最主要的区别是,只有限定范围内的用户才可以关注对应的企业号,使用企业号发送的信息数量几乎不受限制。企业号开发社区比较成熟, 腾讯提供了详细的开发文档, 在 github 上也有

9、基于 java开发的 sdk :weixin-java-tools。3.5.2 支付开发现在国内第三方支付平台众多,必须要对用户受众、第三方支付的知名度、支付接口的形式、第三方支付服务的稳定性、接口规范、费率等进行考察,在做好以上的调研分析后,结合自身的需求,才能最终确认接入哪家(或者几家)第三方支付。不同形式的支付方式可能会形成不同的产品呈现方式。下面提供几家我们做过的第三方支付平台。汇付宝中金支付宝付支付3.5.3 资金托管开发资金托管是银监会对p2p 平台做出的要求,其选择过程与选择第三方支付过程一样,本系统的资金托管方和第三方支付方都是同一个厂商,这样处理在实现上可以更为统一。3.6

10、安全体系3.6.1 数据加密机制在保障信息安全各种功能特性的诸多技术中,密码技术是信息安全的核心和关键技术,通过数据加密技术,可以在一定程度上提高数据传输的安全性,保证传输数据的完整性。我们通过下列方法来提升web安全性。所有敏感信息存储时全部加密,使用对称加密算法aes 。所有敏感信息传输时全部加密,使用非对称加密算法rsa 。所有口令只存储签名后的内容,使用数字签名算法dsa 。3.6.2 jwt 认证标准认证是任何 web 应用中不可或缺的一部分。jwt 代表 json web token ,它是一种用于认证头部的 token 格式。这个 token 帮我们实现了在两个系统之间以一种安全

11、的方式传递信息, jwt认证方式比 oauth2 认证标准实现起来更为简单也有效。我们在以下场景使用 jwt 。单点登录移动端请求数据其它第三方请求数据3.6.3 完善的日志机制日志系统是一个成熟java 应用所必不可少的,在开发和调试阶段,日志可以帮助我们更好更快地定位bug;在运行维护阶段,日志系统又可以帮我们记录大部分的异常信息,从而帮助我们更好的完善系统。本系统主要是使用log4j 及其扩展组件来实现日志机制,记录用户、第三方服务的每一步操作。3.7 集群方案每个大型网站都会有不同的架构模式,而架构内容也就是在处理均衡负载,缓存,数据库,文件系统等,只是在不同的环境下,不同的条件下,架

12、构的模型不一样,目的旨在提高网站的性能。在本系统中,我们设计的集群架构图如下:本架构结构清晰, 在系统成长初期可以很好的在阿里云上实现这样的架构,阿里云也提供了该架构中的主要组件, 在中后期脱离阿里云后可以通过的增加低成本服务器来应对业务发展需要。四、工作量估算工作量估算有多种方式,有的以页面数量为基础,有的以人员代码效率为基础,有的以功能为基础, 我们则以数据表数量为基础,用这种方式评估工时需要建设方对需求认识比较透彻,在初期建设时能较好反应真实的结果。其具体算法如下:10 个字段以内的表设为1 工作时。10 个字段以上的表,每增加5 个(包含 5 个以内)的字段,工时加0.3 每一个分类字

13、段按分类数量多少来计算工时4 个以内的分类数,工时加0.5 4 个以上 8 个以下的分类数,工时加2 8 个以上的分类数,工时加5 每一个外键字段工时加1 每一个时间字段工时加0.5 每一个排序字段工时加0.5 多个平台展示时,每增加一个平台工时加1 由于所有约束全由代码实现,整体工时x1.3 基于代码迭代、质量控制的情况,整体工时x1.5 需求变更时, 增加的表的工时按以上算法,修改的表的工时则在原基础上 x1.5 总工时表如下:合计总工时约为: 1700人/ 天五、拟参与人员组织架构示意图如下:3.1 技术总监技术总监为技术的最高负责人。负责技术管理体系的建设和维护,制定技术,准确判断行业

14、技术发展趋势和管理现状。同时把控项目的长远目标和长期技术方向,根据项目的发展变化组建合适团队。姓名年龄专业计算机应用拟担任项目职务技术总监最高学历本科毕业学校长沙大学从业时间2001 工作及项目经历时间项目内容所在公司职务教育背景时间毕业院校专业技能自我评价3.2 架构师系统架构师将掌控整体又需要洞悉局部瓶颈并依据具体的业务场景给出解决方案的人。确认和评估系统需求,给出开发规范,搭建系统实现的核心构架,并澄清技术细节、扫清主要难点的技术人员。他负责设计系统整体架构,考虑从需求到设计的每个细节,把握整个项目,提高项目的设计效率,使开发容易,维护方便,升级简单等。姓名年龄专业拟担任项目职务最高学历

15、大专毕业学校从业时间工作及项目经历时间项目内容职务教育背景时间毕业院校专业技能自我评价3.3 开发团队3.3.1 项目经理 (1 人) 项目经理为具体项目工作的管理者,主要对项目进行背景调查, 收集整理项目相关资料,进行需求策划,撰写项目调查报告和信息综述,对项目组成部分或模块进行完整系统设计,联系项目相关单位和相关技术专家,制定项目可行性研究报告,协同配合制定和申报立项报告材料, 组织项目团队完成项目任务, 保证项目的完成时间和完成质量。姓名年龄专业拟担任项目职务最高学历毕业学校从业时间工作及项目经历时间项目内容职务教育背景时间毕业院校专业技能自我评价3.3.2 前端开发工程师 (4 人)

16、前端开发熟练掌握html(4,5)、css(2,3) 、javascript这三门语言。其不仅在pc端能做 web页面,在移动端的混合开发中也占据很重要的位置。知名框架如jquery,bootstrap等需要非常精通。姓名年龄专 业拟 担 任 项目职务最 高 学历毕业学校从业时间工作及项目经历时间项目内容职务教育背景时间毕业院校专业技能自我评价3.3.3 后台服务开发工程师 (3 人) 后台服务开发工程师熟练掌握java及其相关技能,对于第三方框架也要能灵活运用,特别是对于restfulapi 的设计。姓名年龄专业拟担任项目职务最高学历毕业学校从业时间工作及项目经历时间项目内容职务教育背景时间

17、毕业院校专业技能自我评价3.3.4 ui设计工程师 (2 人) ui 设计工程师精通 photoshop、 illustrator、 flash 等图形软件,html 、 dreamweaver等网页制作工具, 能够独立完成静态网页设计工作;熟悉 html , css , javascript, ajax ;对通用类软件或互联网应用产品的人机交互方面有自己的理解和认识。姓名年龄专业拟 担 任 项目职务最高学历毕业学校从业时间工作及项目经历时间项目内容职务教育背景时间毕业院校专业技能自我评价3.3.5 数据库开发工程师 (2 人) 数据库开发工程师熟练掌握mysql 、 sql server 2000 、oracle ,使用主流的数据

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论