springcloud服务调用流程图 file

角色: 提供者(库存服务,派单服务),消费者(订单服务),注册中心(Eureka)

启动提供者,消费者后,会向注册中心注册当前的服务地址,启动消费者时,消费者会定时拉取并更新注册中心到本地缓存里(因此 当注册中心挂掉一段时间服务依然可调用),当用户开始下单操作后,订单服务从本地缓存里拿到注册表的地址,如果服务有多个(即服务名对应多个地址)则根据cloud的组件Ribbon用一定的负载均衡策略进行轮训并返回一个服务地址,返回地址之后用组件feign对服务进行远程调用,feign底层即动态代理,并执行http请求调用下游系统