传统单体架构
传统单体架构问题:互联网化带来了对应用快速迭代、灵活伸缩及高可用的需求。而传统单体架构无法满足这类需求, 且交付周期长,可伸缩性差,新人培养周期长,技术造型成本高,急需各个方面的突破。
微服务架构
微服务能解决了单体应用以及SOA带来的的问题,易于开发和维护。一个微服务只关注一个特定的业务功能,所以它的业务清晰、 代码量较少。整个应用是由若干个微服务构建而成,所以整个应用也会维持在可控状态。
微服务能解决了单体应用以及SOA带来的的问题,但是微服务使整个应用服务增多,服务间通讯更复杂,也会带来大量的问题。比如单体如何拆分成多个微服务,团队间沟通更多,运维成本增高,分布式事务问题,依赖管理变得复杂,测试更加困难,故障更难于定位等等。
微服务所面对的问题,有些是纯软件技术问题,有些涉及管理模式,软件工程方法,流程规范等,需要一个适配企业客户IT运维和开发现状与环境的综合解决方法。而微服务咨询服务,凭借在多个不同企业客户的项目中落地实施的经验总结,可协助企业客户实施达到预期效果的微服务开发模式。
我们提供什么服务
博云为客户构建定制化的微服务基础架构, 并且从服务拆分方法、开发流程与方法、 技术选型与问题解决等方面指导客户开发微服务应用。
组织流程
系全功能小团队组建;开发运维一体化;DevOps理念开发运维。
技术架构
服务注册与发现/动态配置/API网关/服务跟踪/服务容错/调度/应用监控等SpringCloud/Dubbo/Istio的框架;微服务化开发技术指导
工程方法符
DDD/RUP/UML建模方法;绞杀式或修缮式演进方案;微服务测试方法。
平台工具
基于容器云平台;CI/CD工具,版本管理,自动化测试/部署工具
微服务应用开发指导
安全认证方案、分布式事务、版本管理、分库分表、已有代码改造等
流程和工具指导
团队组建,角色职责,测试方法,版本发布规范,DevOps工具集成等
服务拆分设计指导
基于DDD方法论,指导客户进行服务拆分、分层模型设计。
定制化选型部署
考虑集成客户组件选型方案的框架部署,含Dubbo、Springcloud、GRPC、Istio等的部署
配置文件统一管理
集成Apollo组件做配置中心统一化管理,提供配置空间管理、灰度发布、历史和回滚等功能。
API网关功能
提供独立的API网关功能,包括API鉴权、API发布管理、流量控制、负载均衡等,以及API编排能力
标准框架部署
在客户无特殊需求情况下,在容器云上部署我司优化加固的微服务治理平台(含经优选的Spring cloud各组件)
二次开发服务
基于客户需求,开发微服务组件的扩展功能