小编最近想要简单的总结一下springCloud的内容,虽然在公司接触了一点小的项目,但是感觉还不是很深入所以这个内容就由浅入深慢慢的讲解了。欢迎小伙伴们的订阅与欣赏啊!废话不多说,我们来进入正题。
【什么是微服务】
微服务的提出者是马丁.福勒,这是他的博客:martinfowler.com/articles/microservices.html
微服务化的核心是将传统的一站式应用,根据业务拆分成一个一个的服务,彻底地去耦合,每一个微服务提供单个业务功能的服务,一个服务做一件事。从技术角度看就是一种小而独立的处理过程,类似进程的概念,能够自行单独启动或销毁,拥有自己独立的数据库
【微服务与微服务架构】
一、微服务:
强调微服务的大小,关注某一个点,是具体解决某一个问题、提供落地对应服务的一个服务应用
二、微服务架构:
- 一种架构模式,提倡将单一应用程序划分成一组小的服务,服务之间相互协调,相互合作,为用户提供最终价值。
- 每个服务运行在独立的进程中,服务与服务间采用轻量级的通信机制相互协作(基于http协议的restFul API)。
- 每个服务都是围绕着具体业务进行构建,并且能够被独立的部署到生产环境。
- 应当尽量避免统一的、集中式的服务管理机制,对具体的一个服务而言,应根据业务上下文,选择合适的语言,工具对其进行构建。
【微服务的优缺点】
一、优点
1、每个服务足够内聚,足够小,代码容易理解,聚集一个指定的业务功能或业务需求
2、开发简单,效率高,一个服务可能就是专一的只干一件事
3、小团队单独开发
4、松耦合,无论在开发还是部署都是独立的
5、使用不同的语言开发
6、易于与第三方集成,微服务灵活的方式集成自动部署,通过持续集成工具:如jenkins、hudson
7、易于被开发人员理解、修改和维护
8、允许你利用融合最新技术
9、每个微服务都有自己的存储能力,可以有自己的数据库。也可以统一数据库
二、缺点
1、开发人员要处理分布式系统的复杂性
2、多服务运维难,服务增加,运维压力也大
3、系统部署依赖
4、服务间通信成本高
5、数据一致性问题
6、系统集成测试
7、性能监控等
【微服务技术栈】
【为什么选择SpringCloud作为微服务架构】
一、选型依据
整体解决方案和框架成熟度、社区热度、可维护性、学习曲线
二、各大IT微服务架构有那些
三、各微服务对比--------springCloud好