1、什么是微服务?
微服务化的核心就是把一站式应用,根据业务拆分为一个一个的服务,实现降级耦合度,每一个微服务提供单个业务功能,能够单独启动或销毁,拥有单独的数据库。一个服务做一件事。这些服务可以使用不同的编程语言书写,以及不同数据存储技术,并保持最低限度的集中式管理。
2、微服务架构
微服务,强调的是服务的大小,能完成单一、具体的任务或功能。
微服务架构,是一种架构模式,它提倡将单一应用程序划分为一组小的服务,服务之间相互协调、相互配合,为用户提供最终价值。微服务之间通过轻量级机制通讯,比如基于 http 的 RESTful api、dubbo。这些服务围绕业务能力来构建,每个服务运行在独立的进程中,并通过完全自动化部署机制来独立部署。
3、优缺点
优点
每个服务足够小,足够内聚,代码容易理解。
单个的服务开发简单、效率高。
松耦合,无论在开发或者部署阶段都是独立的。
可以使用不同的语言开发。
每个微服务都可以拥有独立的数据库,也可以公用。
微服务可以只管逻辑代码,不管前端页面。缺点
整体复杂性
运维难度
部署依赖
通讯成本
数据一致性
集成测试
性能监控等相对单一应用都成为缺点。
4、微服务技术栈
- 服务开发
- 服务配置管理
- 服务注册与发现
- 服务调用
- 服务熔断
- 负载均衡
- 消息队列
- 服务路由
- 服务监控
- 服务配置中心管理
- 服务接口调用
- 服务部署
- 全链路追踪
- 数据流操作开发包
- 。。。
5、初识