微服务(架构)
微服务架构概念:一种架构风格,将一个应用服务,拆分为多个小服务,每个微服务运行在各自的进程中,每个微服务提供单个业务功能。
微服务优点:高内聚,低耦合,易维护、易开发,易于集成第三方和部署,可以跨语言(例如发布webService接口服务),前后端分离只关注业务逻辑,可以根据业务连接多个数据库等。
微服务缺点:数据一致性,系统集成测试,运维成本以及依赖部署,监控,通信成本等。
技术栈:服务治理,服务注册,服务调用,服务监控,服务负载均衡等……..
微服务技术栈落地技术:
服务开发(springBoot等spring家族)
服务配置与管理(Archaius、Diamond)
服务注册与发现(Eureka、zookeeper等)
服务的调用(Restful、Rpc、gRpc等)
服务熔断器(Hytrix、Envoy等)
负载均衡(Ribbon、Nginx等)
客户端调用工具(Feign等)
消息队列(kafka,rocketMq等)
服务配置管理中心(SpringCloudConfig、chef等)
服务路由API网关(Zuul等)
服务监控(Zabbix、Metrics等)
链路跟踪(Zipkin、Brave等)
服务部署(Docker、K8s等)
数据流操作开发包(SpringCloud stream等)
事件消息总线(SpringCloud Bus等)以及其他具体技术。