1

istio

 2 years ago
source link: https://yanhang.me/post/2019-03-25-istio/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

整个容器化浪潮诞生了三个胜利者,分别是 docker, kubernetes, istio。 一个额外的胜利者是 golang。

Docker

docker 的作用是:

  1. 用标准语法描述出一个服务的静态/运行时环境,无关语言与操作系统

被打死的是 lxc, 它有资源隔离的功能,但是缺点太明显:

  1. 没有上面的 docker 提供的第一个功能
  2. 架构不如 docker 的 cli/server 的简洁明了,易于学习

受威胁的是 VM

  1. 性能损耗大
  2. 无法 API 化

Kubernetes

真正的 DCOS,核心优势:

  1. 统一资源模型
  2. 统一 API 模型 (引导业务 API 向其靠拢)
  3. Node 横向扩展

被打死的是 Mesos/Marathon,缺点

  1. 两层架构的低效率 (仁慈独裁与低效民主)
  2. C++ 导致的难以 debug
  3. 难以扩展以增加新功能

另一个被打死的是 swarm/compose, 缺点

  1. 架构不清晰
  2. 自下而上地缓慢地堆功能

受威胁的是 YARN, 不如 kubernetes 通用性强

Istio

微服务相比于单体服务的一切问题都应该在这层解决, trace, 限流, metrics 等等

  1. 不需要修改业务代码
  2. 比手工的实现更完善,功能更强

受影响的:微服务业务代码

Golang

  1. 可读性最好之一
  2. 性能好到不用自己刻意关注

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK