gpt4 book ai didi

architecture - zeromq 服务和数据访问

转载 作者:行者123 更新时间:2023-12-04 06:30:46 26 4
gpt4 key购买 nike

我目前正在试验 zeromq 并构建一个面向服务的分布式架构。每个服务都需要处理来自公共(public)数据库的数据。

最好的方法是什么:

  • 在定义模型的所有服务中使用共享库。每个服务都连接到数据库
  • 使用抽象数据库的数据服务。所有其他服务都通过该服务访问数据。可以使用 Protocol Buffer 传输数据。

  • 第二个选项对我来说似乎更干净,但我担心对性能的影响,因为每个数据请求都有一个网络通信。

    将来,可能会有数据库以外的数据源。这就是为什么我想到了第二种选择,但我害怕过度设计它。

    最佳答案

    既然你要“做对了”,构建一个面向服务的分布式系统,启动 zeromq,我想说你应该一路走下去,把服务放在数据库前面。

    关于性能,请记住 Knuth 的建议,即过早优化是万恶之源。最好使用更清洁的选项,然后根据需要进行优化,除非您事先知道您将遇到性能问题。
    此外,如果将来需要,抽象数据库应该允许您更轻松地扩展(例如通过分发、缓存等)。

    话虽这么说,如果您正在考虑的另一个选项是共享库,并且假设它也是实现更快的选项,那么您总是可以以这种方式开始并稍后更改它 - 只需更改共享库以使用服务而不是直接使用数据库,您的所有服务都应该没问题。

    关于architecture - zeromq 服务和数据访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5442161/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com