微服务如何统一返回格式 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
a1lenyang
V2EX    Java

微服务如何统一返回格式

  •  
  •   a1lenyang 2022-04-22 11:10:43 +08:00 3121 次点击
    这是一个创建于 1268 天前的主题,其中的信息可能已经有所发展或是发生改变。

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

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

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

    微服务在一些场景下可以降低开发成本、提升性能,但同时又引入了其他问题,具体可以看看微服务治理相关的概念。
    Kilerd
        7
    Kilerd  
       2022-04-22 13:22:04 +08:00
    service mesh ,可以用 sidecar 模式,让 sidecar 帮忙
    EastLord
        8
    EastLord  
       2022-04-22 13:23:49 +08:00
    要不参考一下 jhipster 生成的微服务
    wolfie
        9
    wolfie  
       2022-04-22 18:30:45 +08:00
    统一规范的东西,为什么要网关做。
    Akiya
        10
    Akiya  
       2022-04-23 09:36:58 +08:00 via iPhone
    毕业设计就一个人做完的的东西真有必要上微服务吗
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2476 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 01:44 PVG 09:44 LAX 18:44 JFK 21:44
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86