Tag: 服务服务发现

从本地开发到docker化的微服务

我正在开始使用dockerized微服务。 其中几个正在运行(请参阅下面的代码段)。 在我的本地testing设置中,每个服务在localhost:somePort都可用。 例如,前端将尝试连接到localhost:backend1的后端API。 现在在集装箱化的世界里,这已经不起作用了。 我应该运行一个完整的服务发现解决scheme,如consul或etcd ? 还是应该尝试使用docker的命名服务从前端访问后端? https://docs.docker.com/compose/networking/ version: '2' services: service1-backend: image: service1:0.0.1 links: – service1-frontend service1-frontend: image: service1-frontend:0.0.1 links: – service2-frontend ports: – "8080:80" service2-backend: image: service2-backend:0.0.1 links: – service1-backend – service2-frontend – service3 service2-frontend: image: service2-frontend:0.0.1 ports: – "8081:80" service3: image: service3:0.0.1

微服务和随机端口服务发现

我的问题是关于在几个主机之间传播的服务的微服务和服务发现。 设置如下: 2个docker主机(主机A和主机B) Consul服务器(服务发现) 假设我有两项服务: 服务A 服务B 服务B部署10次(随机端口):主机A 5次,主机B 5次。 例如,当服务A与服务B通信时,它向服务B.example.com发送请求(硬编码)。 为了获得IP和端口,服务A应该向Consul服务器查询SRVlogging。 它将得到10个ip:port对,为此客户端应该使用一些负载均衡逻辑。 有没有一个更简单的方法来处理这个问题,而我没有为这个问题开发一个客户端parsing器(+ LB)库? 有没有像已经实施的地方? 我做错了吗?