a1lenyang
V2EX  ›  Java

微服务如何统一返回格式

  •  
  •   a1lenyang · Apr 22, 2022 · 3593 views
    This topic created in 1508 days ago, the information mentioned may be changed or developed.

    最近在做毕业设计,关于微服务也是自己在摸索当中: 微服务一般是每个服务自己处理返回一个全局统一的格式,还是统一由网关处理返回一个统一的格式好呢?以下哪个方式比较合适? 1 、微服务直接对外的接口返回统一格式,RPC 调用的则直接返回原始数据。 2 、微服务直接对外接口和 RPC 接口都返回原始数据,由网关处理返回统一格式

    10 replies    2022-04-23 09:36:58 +08:00
    codefever
        1
    codefever  
       Apr 22, 2022   ❤️ 1
    建议走网关,这样将来维护也方便
    chendy
        2
    chendy  
       Apr 22, 2022
    统一格式,网关只做转发和认证
    转格式啥的……当 ESB 用么……
    fkdog
        3
    fkdog  
       Apr 22, 2022
    @chendy 网关能干的东西多了,请求合并、协议转换 /适配、数据格式转换都是网关力所能及的范围。
    ZCPgyer
        4
    ZCPgyer  
       Apr 22, 2022
    走网关试试?
    luckyrayyy
        5
    luckyrayyy  
       Apr 22, 2022
    微服务不应该有直接对外的接口啊
    libook
        6
    libook  
       Apr 22, 2022
    软件架构上的事情,抛开场景谈好不好,不太严谨,你最好看看不同的方案在什么场景下合适,在什么场景下不合适。

    服务是否要返回统一格式和用不用网关不矛盾。
    多数情况下微服务在一些方面做到统一,会比较方便管理,尤其是团队协作的时候。
    微服务的域太多的话,前端和运维方面处理可能会比较麻烦,所以可以使用网关把多个微服务的接口整合成一套。
    多个前端产品对应同一套后端微服务池的时候,后端为每种前端产品做定制会使得服务变复杂,那么可以分出一个 BFF 层让每个产品的前端开发自己写一个后端服务,把微服务接口封装成适合当前产品的接口,并融入当前产品的一些业务逻辑。

    微服务在一些场景下可以降低开发成本、提升性能,但同时又引入了其他问题,具体可以看看微服务治理相关的概念。
    Kilerd
        7
    Kilerd  
       Apr 22, 2022
    service mesh ,可以用 sidecar 模式,让 sidecar 帮忙
    EastLord
        8
    EastLord  
       Apr 22, 2022
    要不参考一下 jhipster 生成的微服务
    wolfie
        9
    wolfie  
       Apr 22, 2022
    统一规范的东西,为什么要网关做。
    Akiya
        10
    Akiya  
       Apr 23, 2022 via iPhone
    毕业设计就一个人做完的的东西真有必要上微服务吗
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5921 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 67ms · UTC 02:26 · PVG 10:26 · LAX 19:26 · JFK 22:26
    ♥ Do have faith in what you're doing.