专栏首页性能与架构服务网关 Service Gateway

服务网关 Service Gateway

微服务架构把网站从一个单体结构拆分为多个独立服务的集合

单体结构,各个模块都在一起

微服务结构,各服务模块独立部署

带来了很多好处,例如,提高了系统稳定性、使资源利用最大化、提高了开发部署效率等等(更详细介绍请看“微服务架构”) 同时也产生了一个问题,例如客户端要展示商品信息页面,页面中需要有:商品详情、用户评论、相关商品推荐、购物车信息 在单体结构中,这个需求的实现很简单,客户端发起一个商品详情的请求,如 http://api.xxx.com/product/id

网站收到请求后进行查询计算等操作,把需要的信息组合成一个结果集,返回给客户端

而在微服务架构中,这个需求中的数据是分布在不同的微服务中,例如: 商品详情 - 商品信息服务 用户评论 - 评论服务 商品推荐 - 推荐服务 购物车信息 - 购物车服务 这就需要客户端调用不同的服务来获取数据

这种方式中,客户端需要了解很多api,服务端如果产生微服务的再次拆分或合并,客户端都需要跟着变动,维护复杂,而且每个页面都可能需要发起多次请求,性能不好 对于这些问题,就可以采用“服务网关”的方式来解决 服务网关也是个服务器,作为网站的入口,客户端不再自己调用N个服务获取数据,还是像单体结构一样,客户端发送一个请求给服务网关,服务网关负责调用多个微服务聚合结果,返回给客户端

优点 (1)外部系统从服务网关上看到的就像是一个统一的完整服务,网关屏蔽了后台服务的复杂性,同时也屏蔽了后台服务的升级和变化 (2)外部请求必须经过服务网关,网关可以集中对访问进行安全控制,如认证授权、防爬虫等 (3)在流量高峰期,服务网关可以限制流量,在内部系统出现故障时,网关可以集中做容错,保持外部良好的用户体验 (4)便于收集访问日志 缺点 服务网关本身形成了一个系统,需要开发、部署、维护管理,成本较高,而且,服务网关可能会成为系统瓶颈 但服务网关方式的优势明显,已被普遍采用

本文分享自微信公众号 - 性能与架构(yogoup),作者:杜亦舒

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2016-03-05

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Medium 微服务策略

    微服务架构的目标是帮助技术团队更快、更安全、更高质量的推动产品,服务解耦可以让团队快速迭代,对系统的影响最小。

    dys
  • 微服务架构

    微服务产生的背景 在网站初期,网站的架构比较简单,通常把所有代码统一打包部署的服务器上 以java项目为例,例如有5个程序员,他们各自开发自己的功能模块,然后...

    dys
  • 使用 NodeJS 实现反向代理

    为什么使用 Node.js 实现反向代理 提到 反向代理 时我们通常会想到 Nginx,它配置简单,性能很好 那么使用 Node.js 实现反向代理有什么必要呢...

    dys
  • 微服务架构案例(05):SpringCloud 基础组件应用设计

    知了一笑
  • 【微服务架构 】微服务简介,第3部分:服务注册表

    在微服务系列的这篇文章中,我们将讨论服务注册表。在第2部分中,我们讨论了API网关,其中我们提到服务已在数据库中注册。网关根据该数据库中包含的信息调度请求。下面...

    首席架构师智库
  • 微服务架构下的服务调用与鉴权——某保险公司微服务平台实施案例分享

    根据保险行业发展趋势,目前保险交易已经呈现高频化、碎片化、场景化等特点,对系统的处理能力、容量、业务连续性、需求相应速度、运维响应速度提出了更高的要求。业务模式...

    yuanyi928
  • 『互联网架构』软件架构-zuul微服务网关(上)(100)

    1. 客户端会多次请求不同微服务,增加客户端的复杂性。2. 存在跨域请求,在一定场景下处理相对复杂。(有的公司服务比较微服务都是通过内部的域名的方式,分类的微服...

    IT故事会
  • 对微服务架构设计实践中若干问题的探讨

    今天讨论下在微服务架构实践中经常遇到的一些问题的思考,其中有些来源于我们自己的微服务改造项目,有些来源于客户现场微服务架构实施项目和售前方案沟通。

    xcbeyond
  • Dubbo集群容错与负载均衡策略

    当我们进行系统设计时候,不仅要考虑正常逻辑下代码该如何走,还要考虑异常情况下代码逻辑应该怎么走。当服务消费方调用服务提供方的服务出现错误时候,Dubbo 提供了...

    加多
  • 京东技术沙龙系列之二 | 深度解析京东微服务组件平台

    京东技术

扫码关注云+社区

领取腾讯云代金券