微服务架构 - Netflix 技术栈

3

我们正在启动一个新项目,它将基于微服务架构。我们正在考虑使用netflix技术栈。为了开发rest服务,我们将使用dropwizard。到目前为止一切顺利。但是在阅读一些资料后,我变得很困惑。下面是关于

  • hystrix
  • eureka
  • ribbon

的不同用例。我知道现在问题非常模糊,我会在有人有疑问时添加更多细节。

1个回答

4

这篇文章详细解释了Eureka和Ribbon

Netflix Eureka - 服务发现服务器 Netflix Eureka允许微服务在运行时注册自己,以便它们出现在系统环境中。

Netflix Ribbon - 动态路由和负载均衡器 服务消费者可以使用Netflix Ribbon在运行时查找服务。Ribbon使用Eureka中可用的信息来定位适当的服务实例。如果找到多个实例,则Ribbon将应用负载平衡以将请求分散到可用实例上。Ribbon不作为单独的服务运行,而是作为每个服务消费者中的嵌入式组件运行。

Netflix Hystrix - 断路器 Netflix Hystrix为服务消费者提供断路器功能。如果服务没有响应(例如由于超时或通信错误),Hystrix可以将调用重定向到服务消费者中的内部备用方法。如果服务重复无法响应,则Hystrix将打开电路并快速失败(即在每个后续调用中调用内部备用方法而不尝试调用服务),直到服务再次可用。为了确定服务何时再次可用,Hystrix允许一些请求尝试使用服务,即使电路已打开。Hystrix在其服务消费者中执行。

http://callistaenterprise.se/blogg/teknik/2015/04/10/building-microservices-with-spring-cloud-and-netflix-oss-part-1/


Spencer Gibb还有一个非常好的演示应用程序和演示幻灯片,可以在高层次上介绍这些工具。这些幻灯片很好地分解了每个部分。https://github.com/spencergibb/oscon2015 - Nick DeFazio
我为我们公司构建了一个非常基本的、没有花哨的概念验证,使用了jaxrs/resteasy、ribbon接口和eurekaserver。该代码在Wildlfy 9上运行,但通常也很有用。没有观察者和任何花哨的东西。https://github.com/Bjond/ribbon-resteasy-poc - sagneta

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接