目前市场上主流的三套微服务架构解决方案:
1、网飞:Spring Boot + Spring Cloud Netflix + Eureka注册中心(Eureka 2.0已闭源)2018 年的双12,Netflix 宣布 Spring Cloud Netflix 系列技术栈进入维护模式(不再添加新特性)
2、阿里:Spring Boot + Dubbo + Zookeeper+Proxy+Restful
分布式消息中间件:KafKa+Flume+Zookeeper
分布式缓存:Redis 分布式文件:FastDFS
负载均衡:Keepalived+Nginx+Proxy(三重负载)
3、阿里融合Spring Cloud:Spring Boot + Spring Cloud Alibaba(依赖Dubbo+Nacos) 。 Nacos /nɑ:kəʊs/会完全兼容 Spring Cloud,支持 Kubernetes DNS-based Service Discovery,填补 Spring Cloud 体系与 Kubernetes 体系的鸿沟。
在Euraka的GitHub上,宣布Eureka 2.x闭源,原文截图如下:
微服务简介
Spring Cloud 是一个相对比较新的微服务框架,2016 才推出 1.0 的 Release 版本,Spring Cloud 提供的全套的分布式系统解决方案。为开发者提供了在分布式系统(配置管理,服务发现,熔断,路由,微代理,控制总线,一次性 Token,全局锁,Leader 选举,分布式 Session,集群状态)中快速构建的工具,使用 Spring Cloud 的开发者可以快速的启动服务或构建应用、同时能够快速和云平台资源进行对接。
SOA面向服务架构(Service-Oriented Architecture):
Dubbo (阿里、Apache);
Spring Cloud(Spring);
Service comb ([kəʊm] 鸡冠、梳子,华为、Apache);
lstio(Google、IBM、Lyft(类似Uber的公司) 这三家联合开源);
Dubbox(当当网,基于dubbo),新功能特性:
1、支持REST风格远程调用(HTTP + JSON/XML);
2、支持基于Kryo和FST的Java高效序列化实现;
3、其它新功能特性:升级Spring;支持基于嵌入式Tomcat的HTTP remoting体系,减少项目中版本冲突带来的麻烦;升级ZooKeeper客户端。