美文网首页
服务网格-Envoy学习笔记:Envoy架构总览(1)

服务网格-Envoy学习笔记:Envoy架构总览(1)

作者: 宋雾代 | 来源:发表于2019-02-26 16:19 被阅读0次

    术语

    在我们深入了解架构文档之前,我们需要了解一些术语。有些定义在行业内部可能有争议,不过在Envoy的文档和代码中就是这么定义的,所以c’est la vie(这就是生活)。

    主机(Host):能够进行网络通信的实体 (手机、服务器等上的应用程序)。在本文档中,主机是一个逻辑网络应用程序。一个物理硬件可能有多个主机在上面运行,只要每个主机都可以独立寻址。

    下游(Downstream):一个下游主机连接Envoy,向Envoy发送请求,并收到响应。

    上游(Upstream):一个上游主机收到来自Envoy的连接和请求,并给出响应给Envoy。

    监听器(Listener):一个监听器是可由下游客户端连接的命名网络位置 (例如,端口、unix 域套接字等)。Envoy可以同时开放一个或多个供下游主机连接的监听器。

    集群(Cluster):群集是Envoy连接的逻辑上相似的上游主机组。Envoy通过服务发现发现集群的成员。它可以选择通过健康检查来确定群集成员的运行状况。Envoy根据负载平衡策略将请求路由到确定的群集成员。

    网格(Mesh):一组互相协调以提供一致的网络拓扑的主机。在本文档中, "Envoy 网格" 是一组Envoy 代理, 它为由许多不同服务和应用程序平台组成的分布式系统提供消息传递网络。

    **运行时配置(Runtime configuration):与 Envoy 一起部署的额外的实时配置系统。可以更改配置设置影响操作,而无需重新启动 Envoy 或更改主配置。

    线程模型

    Envoy 使用具有多个线程体系结构的单个进程。单个主线程控制各种零星的协调任务,而一些工作线程执行监听、筛选和转发。一旦监听器接受了连接,连接就会将其生存期的剩余时间绑定到单个工作线程。这使得 Envoy 拥有大量的工作线程(令人尴尬的并行),在工作线程之间进行少量更复杂的代码协调处理。通常 Envoy 是100% 非阻塞的,对于大多数工作负载,我们建议将工作线程的数量配置为计算机上的硬件线程数。

    相关文章

      网友评论

          本文标题:服务网格-Envoy学习笔记:Envoy架构总览(1)

          本文链接:https://www.haomeiwen.com/subject/eoiayqtx.html