微服务架构深度解析与最佳实践
作者:kimmking
秦金卫,现某公司高级技术总监/Apache Dubbo Committer,前阿里架构师/某商业银行北京研发中心负责人。关注于互联网电商,金融,支付等系统领域,10多年研发管理和架构经验,对于中间件、SOA、微服务,以及各种开源技术非常热衷,活跃于Dubbo,Fastjson,Mule,ActiveMQ等各类开源社区。
微服务架构的概念,现在对于大家应该都不陌生,无论使用 Apache Dubbo、还是 Spring Cloud,都可以去尝试微服务,把复杂而庞大的业务系统拆分成一些更小粒度且独立部署的 Rest 服务。但是这个过程,具体应该怎么做?现有的条件下到底要不要做微服务?服务拆分成什么粒度才是合适的?遗留的老系统需要如何考虑重构改造?有哪些坑需要我们注意?系统怎么在分布式服务下实现数据的一致性和服务的高可用可伸缩?拆分的过程中系统数量增多,测试、部署、运维、监控,又应该如何处理?
本文将从这些问题的深度分析出发,阐述微服务架构落地的一些设计原则和利弊取舍,结合微服务架构过程的很多最佳实践经验,希望给读者带来一定的启发和思考,避免在实际应用过程中走弯路,能够多快好省的落地实现微服务架构。内容涉及:
微服务架构的发展过程简介
微服务架构的特点与常见特性
使用微服务架构的常见技术与简单示例
微服务架构存在的一些问题
如何合理拆分微服务
遗留系统应该如何改造
怎么考虑拆分后的数据一致性
系统和服务的高可用可伸缩如何实现
拆分过程的测试和部署如何处理
拆分后的运维和监控如何处理
点击阅读原文,查看 Chat