WARRING Spring官方宣布Netflix项目进入维护模式

2018年6月底,Eureka 2.0 开源工作宣告停止,继续使用风险自负。

Netflix 为何开始减少在开源上的投入? Netflix 是一家靠卖技术为生的公司么?答案是显而易见的,采用新技术是提升Netflix 在主营业务竞争力的有力手段。与AWS, Oracle,AZure,Google这些不同的是,卖技术和服务的开源及“云计算”并不是Netflix 要真正关注的。

而如今Netflix在开源上上削减投入,其实并不是什么不可思议的事情,一般像Netflix这种情况的公司,尤其当其主营的业务面临挑战时,首先考虑的很可能就是削减不在主线上的技术上的投资,从这个角度来讲,Netflix即使不是在现在削减开源上的投入,也会在未来的某个时间点削减。

那Netflix现在遇到挑战了么?可以从近期媒体上的几篇文章,觉得可见一斑:

Netflix大溃败:放弃算法崇拜,向好莱坞低头;

Netflix 的盛世危局;

另一篇是一位Netflix的美剧中毒者 头顶光环、骂声一片,他垮台了;神似《哈利波特》赫敏,她演砸了,在文中写到

曾几何时,我们都迷信一句话—— 网飞出品,必属精品。 网飞(Netflix)从出道以来,就走在美剧一线。 从题材到品质,严格把控,前卫又不失格调,高端又不缺人气。 可如今,慢慢走下神坛。 神话,已经变成了传说——

Netflix

netflix

Alibaba

ali

支持多协议的服务调用

Spring Cloud 默认的服务调用依赖 OpenFeign 或 RestTemplate 使用 REST 进行调用。

使用 @DubboTransported 注解可将底层的 Rest 协议无缝切换成 Dubbo RPC 协议,进行 RPC 调用。

@FeignClient("dubbo-provider")
@DubboTransported(protocol = "dubbo")
public interface DubboFeignRestService {
  @GetMapping(value = "/param")
  String param(@RequestParam("param") String param);
 
 
  @PostMapping("/saveB")
  String saveB(@RequestParam("a") int a, @RequestParam("b") String b);
}

服务限流降级

作为稳定性的核心要素之一,服务限流和降级是微服务领域特别重要的一环,Spring Cloud Alibaba 基于 Sentinel,对 Spring 体系内基本所有的客户端,网关进行了适配,

默认支持 WebServlet、WebFlux, OpenFeign、RestTemplate、Spring Cloud Gateway, Zuul, Dubbo 和 RocketMQ 限流降级功能的接入。

Sentinel应用比较简单,只需引入 starter,即可生效,可以在运行时通过控制台实时修改限流降级规则,还支持查看限流降级 Metrics 监控。

微服务消息驱动

支持为微服务应用构建消息驱动能力,基于 Spring Cloud Stream 提供 Binder 的新实现: Spring Cloud Stream RocketMQ Binder,

也新增了 Spring Cloud Bus 消息总线的新实现 Spring Cloud Bus RocketMQ。

分布式事务

使用 Seata 解决微服务场景下面临的分布式事务问题。

使用 @GlobalTransactional 注解,在微服务中传递事务上下文,可以对业务零侵入地解决分布式事务问题。

阿里云提供的商业能力

通过上面提到的OSS,schedulerx等组件,开发者可以在阿里云上实现对象存储,分布式任务调度等功能。

番外篇

受到疫情的影响,各行各业都多少进行了延迟开工, 在此之际,本人利用闲暇时间,回顾了Netflix+Cloud ,以及阿里系的全新Spring Cloud Alibaba , 截止发文时间,项目还在持续集成中, (工作之外更新 ^_^ ),敬请期待~~~ 阿里巴巴Cloudopen in new window:Spring Cloud Alibaba Spring Cloud Hoxton


本文部分素材图片来源于网络如有侵权请私信删除