V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
yeqiu
V2EX  ›  问与答

关于领域驱动和微服务设计中,创建对象(实体)的花销问题

  •  
  •   yeqiu · Aug 31, 2021 · 1202 views
    This topic created in 1704 days ago, the information mentioned may be changed or developed.

    例如在微服务的设计中,某一个服务公开了一个对象 book,有五个属性( id 、name 、author 、pagecount 、Producer )而某一个应用层仅需要两个属性( id 、name ),也是要获取整个 book 实例的,那获取 author 、pagecount 、producer 这三个属性的花费(数据库、内存、cpu )岂不是白白浪费了?

    我可以想到的解决方案是,给 book 增加一个 viewmodel,例如 book_selectoption 仅返回两个属性( id 、name )。但有两个问题,1 、大概率会有很多 viewmodel,一个一个手动处理太麻烦了。2 、在编写服务的时候,不可能事先知道会有哪些 viewmodel,只能在造成了后果之后才亡羊补牢。

    ddd 设计中应用层和领域层之间使用 dto 传输数据,也存在一样的问题。

    小伙伴们,你们是怎么考虑的?

    1 replies    2021-09-02 10:57:30 +08:00
    neilq
        1
    neilq  
       Sep 2, 2021
    个人观点,没有必要,1kb 能放 512 个汉字,性能瓶颈一定不是在这里
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1312 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 16:54 · PVG 00:54 · LAX 09:54 · JFK 12:54
    ♥ Do have faith in what you're doing.