微服务架构 脚手架形成

微服务架构实施契机

  • 业务高速发展

  • 业务逻辑耦合

  • 业务场景复杂

  • 用户规模爆发

  • 研发人员扩张

  • 代码规模膨胀

实施服务的几个关键点

  • 以服务为中心,一切都是服务,每个服务都针对单一业务进行封装,保证功能的单一性和完整性

  • 松耦合性,服务之间功能独立,能够独立部署,服务之间互相依赖

  • 高扩展性,分散资源,团队协作,可无限扩展,更高的代码重用率

微服务框架选型


  • 成熟的高性能分布式框架,比较稳定

  • 无缝接入Spring框架

  • 具备服务注册、发现、路由、负载均衡、降级、权重

  • 代码开源,可以定制化

微服务扩展之授权服务



  • 为每一个服务分配一个APPID,consumer通过attachment把appid传递给provider

  • consumer:RpcContext.getContext().setAttachment("appid","123")

  • Provider读取attachment


微服务扩展之统计中心

  • 接口耗时排行

  • 接口失败排行

  • 系统访问量排行

  • 接口访问量排行

微服务架构平滑演进(非真实项目)



微服务架构-用户通行证微服务

  • 用户数据一致性,用户逻辑都由服务通行证服务提供

  • 用户数据解耦,用户数据库独立部署,方便扩容和性能优化

开发测试发布部署

  • dev

  • test

  • uat

  • prd


微服务治理之配置中心

  • 配置发布统一化

  • 配置信息存储在云端

  • 在线发布、更新配置信息

  • 定制化研发、配置信息加密、避免账号、密码信息泄露

微服务治理之任务调度平台

全链路跟踪

  • 采用cat实时跟踪

  • 通过traceID将全链路日志串联起来

  • 全链路web请求、dubbo服务、redis缓存等

微服务技术架构(最终形成,可做参考)

  • APP

  • API能力开放

  • 存储

  • 业务微服务

  • 基础服务

  • 支付能力服务

  • 微服务治理

  • 搜索能力

  • 基础运维

  • 基础管理平台

  • 大数据服务


请使用浏览器的分享功能分享到微信等