在本文中,我们将简要学习构建强大的微服务应用程序所需的各种软件组件。 在简要了解每个架构组件之前,我们将陈述设计微服务架构时出现的一般查询。

1.微服务架构组件

每当我们创建微服务应用程序时,我们都会想到以下问题

  • 我们将如何注册微服务,以便客户可以使用该注册信息(服务发现)并调用微服务?
  • 我们如何确保所构建的微服务应用程序完全容错并且高度可用?
  • 我们如何确保只有一个接口提供给客户端,从而减少了很多客户端的工作量,并使Micro Services应用程序非常易于使用?
  • 如何无缝平衡传入请求到微服务的负载?

请查看下面的架构图,让我们了解构建架构所涉及的组件是否可以解决上述所有问题:

微服务架构组件

1.1 Netflix Eureka服务器

Netflix Eureka充当发现服务器,其中出现后的微服务会将其自身注册为发现客户端。 Netflix Eureka向外部提供了一个REST接口以与之通信。 Eureka还具有另一个名为Eureka Client的软件模块,通过它与Eureka Server交互交互以进行服务发现。 Eureka Client还带有内置的Load Balancer,可以对传入的客户端请求进行负载平衡。

Netflix Eureka Server是上述问题1的答案。

1.2 Hystrix服务器

Hystrix充当容错弹性系统,用于避免软件应用程序完全失败。 它通过提供一种断路器机制来做到这一点,在这种机制中,当应用程序平稳运行而没有任何问题时,电路保持闭合状态。 如果应用程序中连续遇到错误,则Hystrix服务器电路将打开,并且任何对呼叫服务的进一步请求都将被Hystrix停止,而是将请求转移到回退服务。 这样,它提供了一个高弹性的系统。

Hystrix Server是以上问题2的答案。

1.3 Netfilx Zuul服务器

Netflix Zuul Server充当一种网关服务器,其中所有客户端请求hva都通过它,因此它充当一种客户端的统一接口。 客户端使用单个通信协议与所有微服务进行通信,Zuul服务器负责使用其适当的通信协议调用各种微服务。 Netflix Zuul还具有内置的负载均衡器,以负载均衡来自客户端的所有传入请求。

Netflix Zuul Server是上述问题3的答案。

1.4 Netflix功能区

Netflix Ribbon充当一种负载均衡器,在其中负载均衡来自客户端的所有传入请求。 尽管可以将其配置为使用任何其他备用负载平衡机制,但默认情况下,它使用基本的Round Robin负载平衡策略。 Netflix Zuul Server已内置了Netflix Ribbon。 如果要独立使用Netflix Ribbon,我们必须预配适当的Netflix Ribbon Maven软件包,以在任何应用程序中使用它。

Netflix Ribbon Server是对以上问题4的回答。

2.结论

在本文中,我们简要了解了构建Micro Services应用程序时需要使用的所有软件组件。 在下一篇文章中,我们将尝试详细了解Netflix Eureka的工作原理。

翻译自: https://www.javacodegeeks.com/2016/05/components-involved-creating-robust-micro-service-architecture.html

创建健壮的微服务架构所涉及的组件相关推荐

  1. web服务优化与健壮性改进_创建健壮的微服务架构所涉及的组件

    web服务优化与健壮性改进 在本文中,我们将简要学习构建强大的微服务应用程序所需的各种软件组件. 在简要了解每个架构组件之前,我们将陈述设计微服务架构时出现的一般查询. 1.微服务架构组件 每当我们创 ...

  2. 微服务架构和相关的组件

    点击上方"芋道源码",选择"设为星标" 管她前浪,还是后浪? 能浪的浪,才是好浪! 每天 10:33 更新文章,每天掉亿点点头发... 源码精品专栏 原创 | ...

  3. 微服务 注册中心_4.微服务架构的第二个组件:注册中心

    在微服务架构下,主要有三种角色: 服务提供者(RPC Server) 服务消费者(RPC Client) 服务注册中心(Registry) RPC Server:服务提供者,启动时根据服务发布文件se ...

  4. 创建微服务架构的步骤_如何快速搭建一个微服务架构?

    原标题:如何快速搭建一个微服务架构? 微服务火了很久,但网上很少有文章能做到成熟地将技术传播出来,同时完美地照顾"初入微服务领域人员",从 0 开始,采用通俗易懂的语言去讲解微服务 ...

  5. springcloud的简单使用_微服务架构:初识Spring Cloud

    现在无论大小公司,都会讲究微服务设计,无论应用大小,都会进行微服务架构,面试的时候,也会把微服务当成必谈的知识点.那么什么是微服务呢? "微服务"一词源于Martin Fowler ...

  6. 时下流行devops关键词:分布式架构、一体化架构和微服务架构

    技术趋势关键词:分布式架构+微服务架构(针对移动互联网)+一体式架构(前两者结合+UI等敏捷开发) [译者的话]otto.de是德国的一家网上购物网站,本篇前半部分主要介绍了几个系统架构以及它们的优缺 ...

  7. 没有银弹,微服务架构改造的一条不归路。。。

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试资料 来源:https://www.cnblogs.com/skabyy ...

  8. Re:从0开始的微服务架构--(二)快速快速体验微服务架构?--转

    原文地址:https://mp.weixin.qq.com/s/QO1QDQWnjHZp8EvGDrxZvw 这是专题的第二篇文章,看看如何搭建一个简单模式的微服务架构. 记得好久之前看到一个大牛说过 ...

  9. Java生鲜电商平台-微服务架构概述

    Java生鲜电商平台-微服务架构概述 单体架构存在的问题 在传统的软件技术架构系统中,基本上将业务功能集中在单一应用内,或者是单一进程中.尽管现代化的软件架构理论以及设计原则已推广多年,但实际技术衍化 ...

最新文章

  1. python所有变量更新_PYTHON:使用python变量更新MULTIPLE COLUMNS
  2. GDCM:DICOM PS 3.10文件格式的测试程序
  3. 把自定义的demuxer加入ffmpeg源码
  4. python发出报警声音(C#一样适用)
  5. 【CityHunter】游戏进度总控,及需求设计
  6. 根据银行卡号获取开户行和银行LOGO
  7. 如何爬取豆瓣电影?python十分钟搞定
  8. 查收你的2022书单,阅读这54本书就够了
  9. w10计算机恢复出厂设置,如何给win10系统的电脑强制恢复出厂设置
  10. greenplum数据导入导出
  11. 【Android归纳】基于XListView的下拉刷新、上拉加载更多的控件分析
  12. osgEarth示例分析——osgearth_graticule
  13. 侍魂胧月传说服务器维护,侍魂胧月传说手游7月1日停机维护更新公告
  14. GetContactInfoUtils(一个获取手机联系人名称,电话,头像的工具类)
  15. 京东最爱考的前端面试题,html5移动web开发实战
  16. 安全通道协议——SSH
  17. “互联网+”智慧农业-国稻种芯-万祥军:江西现代农业弯道赶超
  18. VLC捕获网络摄像头视频(rtsp协议)
  19. android eventbus使用,Android EventBus使用详解(一)
  20. 刺客引擎三端-四职业修复版

热门文章

  1. 推荐系统常用的推荐算法
  2. Wamp升级php到7.3版本
  3. Failed to execute
  4. 从控制台输入一个数 num 与之前定义的数 n 进行比较
  5. ssm(Spring+Spring mvc+mybatis)mybatis配置文件——mybatis-config.xml
  6. isnull PK <=>
  7. 2020蓝桥杯省赛---java---A---2(既分数组)
  8. 2015蓝桥杯省赛---java---B---6(加法变乘法)
  9. 二叉树删除节点+思路分析
  10. 约瑟夫(环)问题(Josephu)(单向环形链表)