HTML5技术

互联网保险O2O平台微服务架构设计 - lzhou666(2)

字号+ 作者:H5之家 来源:H5之家 2015-12-15 08:01 我要评论( )

日访问量5000万和产品并发2000 TPS是我们假设的,客户信息和案卷信息是随订单数据量变化而变化,在前面我们虽然假设了总共每年产生2亿个订单,但是根据保险种类,短险(旅游险、伤残险)明显产生了90%的订单量,这

  日访问量5000万和产品并发2000 TPS是我们假设的,客户信息和案卷信息是随订单数据量变化而变化,在前面我们虽然假设了总共每年产生2亿个订单,但是根据保险种类,短险(旅游险、伤残险)明显产生了90%的订单量,这一点需要特殊处理。除此之外车险和长险(主要指寿险等)无论是投保还是售后服务都有明显不同,所以也需要特殊处理。

  那么我们按照上面的需求,进行系统分析,首先按大的职责将职责相同的划分为一个服务。并且有了上面这个性能需求,所有功能需求都需要增加一项“质量”特性,那就是“高并发”,高并发会影响到所有设计。另外如果要将互联网保险平台质量特性排个序,最重要的是可扩展性、安全性,因为保险的种类多而且处理方式不同,除此之外,高并发和可靠性也会直接影响功能的实现,但并没有可扩展性影响大。深入分析职责后把每一种功能的实现关键技术列出,如下:

需求分类

实现需求

实现子系统及服务

软硬件实现技术

客户端

B2C电子商务网站

B2C Web客户端

集群部署、高速缓存、分布式缓存、搜索引擎技术、静态化

B2C电子商务网站手机客户端

B2C App客户端

 

代理人管理

代理人Web客户端

集群部署、高速缓存、分布式缓存、搜索引擎技术、静态化

代理人管理手机客户端

代理人App客户端

 

案卷处理管理

案卷处理Web客户端

集群部署、分布式缓存

客户管理管理

客户管理Web客户端

集群部署、分布式缓存

保险公估管理

保险公估Web客户端

集群部署、分布式缓存

运维产品管理

产品管理Web客户端

集群部署、分布式缓存

报表及财务统计

报表及财务统计Web客户端

集群部署、分布式缓存

公共服务

运维产品管理、Web前端产品访问

产品服务

集群部署、分布式缓存

电子商务或代理人订单管理

订单服务

集群部署、分布式缓存

电子商务或代理人等涉及财务操作

总账服务

集群部署、分布式缓存

报表及财务统计

报表服务

集群部署、分布式缓存

业务服务

B2C电子商务网站及手机客户端个人账户

B2C个人账户服务

集群部署、分布式缓存

代理人管理

代理人管理服务

集群部署、分布式缓存

案卷处理管理

案卷处理管理服务

集群部署、分布式缓存

客户管理

客户管理服务

集群部署、分布式缓存

保险公估管理

保险公估管理服务

集群部署、分布式缓存

短险开放式接入

开放式接入平台服务

集群部署、分布式缓存

工具性服务

保险公司产品对接

产品对接服务

集群部署、消息队列

在线支付

第三方支付服务

集群部署

短信邮件通知

通知服务

集群部署、消息队列

性能监控

日志采集服务

集群部署、消息队列

文件服务器

文件服务

集群部署、消息队列

服务授权与审计

服务授权与审计服务

集群部署

分布式事务管理

分布式事务管理服务

集群部署

定时任务管理

定时任务服务

集群部署

 

       各个子系统及模块的关系如下图。

   

 

       其中订单服务、产品服务、财务服务、工具服务为基础服务,其它各个业务模块的服务会调用这些基础服务。各个业务模块的服务都是根据业务领域进行划分的,同一业务领域下实现技术不同会被划分为两个服务,比如产品展示和订单原本属于同一个大的领域,但其因为实现技术和质量要求不同需要划分为两个服务。因为短险接入量大,而且大部分是跟第三方合作接入,因此设计短险接入公共接口服务平台处理大量短险订单。

 

l 存储及缓存架构

  对于大型的高并发系统来讲,最重要的当属数据的架构。我们在前面也提到过,web系统业务处理模块本身就可以集群部署,当用户出现高并发时最先遇到的瓶颈就是数据库访问的瓶颈。这也是我们说数据架构最为重要的原因。其实web系统是典型的“计算机信息系统”,也就是说一切以数据(信息)为基础,所有的功能都是围绕着数据来的。这也是我们在这里说数据是web系统最重要的,很多公司在做少用户量web系统时直接设计好数据库就可以开发了。

  按照上面划分的业务领域我们设计多个数据库,技术选项包括“是否读写分离”、“是否水平切分”及“路由键”。其中路由键是指在进行水平切分后,我们使用那个“标识”去查询数据库,一般来说会使用该业务领域聚合根对象的主键作为路由键。

数据库

是否读写分离

是否水平切分

水平切分路由键

产品数据库

 

 

订单数据库

 

客户ID

公共数据库(元数据、公共数据)

 

 

客户管理数据库

 

客户ID

案卷管理数据库

 

客户ID

代理人服务数据库

 

代理人ID

B2C电子商务个人账户数据库

 

客户ID

保险公估数据库

 

客户ID

工具数据库(短信、支付、文件)

 

客户ID

报表数据库

 

 

日志采集服务数据库

 

日志ID

 

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • 期待微软平台即服务技术Service Fabric 开源 - 张善友

    期待微软平台即服务技术Service Fabric 开源 - 张善友

    2017-03-27 18:00

  • 跨平台的.NET邮件协议MailKit组件解析 - 彭泽0902

    跨平台的.NET邮件协议MailKit组件解析 - 彭泽0902

    2017-03-17 13:01

  • 推荐15个很优秀的跨平台的移动开发工具 - 梦想天空(山边小溪)

    推荐15个很优秀的跨平台的移动开发工具 - 梦想天空(山边小溪)

    2017-03-12 13:02

  • 基于 socket.io, 简单实现多平台类似你猜我画 socket 数据传输 - HOWIE-CH

    基于 socket.io, 简单实现多平台类似你猜我画 socket 数据传输 - HO

    2017-03-09 17:00

网友点评
o