如何解决使用 Foxx 微服务与 pyarango
我想设置一个 api 来查询 arabgodb。我正在争论是设置使用 foxx 微服务还是使用 pyarango 来查询数据库的后端。 这两种选择的优缺点是什么?
解决方法
优缺点在很大程度上取决于您和您的技能集(Python 与 JavaScript),但您似乎真的在询问在专用服务器 (Python) 或 ArangoDB 平台上运行 API 中间件(福克斯)。
对于单节点安装,让您的查询靠近服务器 (Foxx) 将为您提供非常低的延迟查询性能,但代价是与数据库引擎共享 CPU 和内存。
使用集群时动态会发生显着变化 - Foxx 引擎必须位于与数据库引擎不同的服务器上(请参阅 cluster architecture docs)。这缓解了 CPU/内存共享问题,还为您的 API 提供了一种高可用性,但也引入了其他更严重的集群特有的查询性能问题。
底线:如果您不完全了解(或不准备处理)集群性能,请坚持使用单个节点。如果您不愿意为 Foxx 引擎放弃 CPU/内存,那么请使用单独的中间件服务器。还有许多其他细节需要考虑,但(对我而言)这是主要决定。
另外,请注意只有“cluster”和“single”两种模式,但是有多种部署集群的方式(主/从、主动故障转移、一个分片、多分片等)。
>版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。