【问题标题】:ArangoDB Foxx application vs native client [closed]ArangoDB Foxx 应用程序与本机客户端 [关闭]
【发布时间】:2015-12-01 17:48:48
【问题描述】:

我想知道您是如何开发您的自定义 Foxx 应用程序,该应用程序将包含所有逻辑并通过 HTTP API 访问它,或者使用本机 ArangoDB 客户端并完全在所需平台上构建所有内容。

即您可以使用 .Net arangodb 客户端并使用其 API 或构建一个 FOXX 应用程序并直接通过 HTTP 使用它。

【问题讨论】:

  • 除了foxx 性能优势(减少网络请求,没有.net 对象序列化的成本,...),我认为这更多的是关于您的应用程序架构,您可以在.net 上拥有微服务,但是您应该根据这两种解决方案的维护、安全性、横向扩展等事情来做出决定。

标签: .net asp.net-web-api arangodb nosql


【解决方案1】:

这就是为什么我们将术语从 Foxx-'application' 替换为 Foxx-'service' 的原因之一 - 它遵循 Microservice definition

它不是排他的或 - 因为您不必决定反对或支持 Foxx 和本机应用程序。 通常,您宁愿在也可能使用 AQL 的客户端内部实现业务逻辑。

在 Foxx 中,人们宁愿定位以数据为中心的任务,例如:

  • 增强的访问控制
  • 聚合多个集合
  • 减少结果集以传输给客户端
  • 将多个查询组合到一个事务中
  • 正如 raoof hojat 已经指出的那样,如果您想节省网络带宽,这是一件好事。
  • Foxx 可以在数据序列化和通过网络传输之前处理数据

与在客户端而不是在数据库中执行此操作相比,这可能会给您带来性能优势。

【讨论】:

  • 这些正是我最初的想法。如果您使用 Foxx 服务进行大量以数据为中心的查询,可以帮助您节省到服务器的往返行程,并为您在服务器上执行提供性能优势。感谢 Raoof 和 @dothebart 的回复。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-07-06
  • 1970-01-01
相关资源
最近更新 更多