【问题标题】:Fiware Orion performance variationsFiware Orion 性能变化
【发布时间】:2018-08-24 09:51:23
【问题描述】:

我需要关于性能问题的建议。

问题是向 Fiware Orion 发布完全相同的数据,唯一不同的是 Fiware-Service 路径会导致时间呈指数增长。这意味着每个下一个请求都比第一个请求花费更多时间并继续添加。

我的程序读取并解析一些文件,然后将其存储到 Fiware Orion 中,根据文件大小,最多需要 3 秒来进行检查和解析。 然后将该数据发送到 Orion Context Broker。

例子:

  • 空且新鲜的 Orion 实例
  • 这里的测试用例是 3000 个实体,POST 使用批处理操作。
  • 因为实体的大小 3000 被切割成更小的尺寸并批量发送到 Orion。在这种情况下,我的程序会将它们切成 500 的大小并一个接一个地发送。
  • 首次运行 3000 个实体完成操作的时间为 7 秒。
  • 更改服务路径运行相同的 3000 个实体,完成操作的时间为 14/15 秒。
  • 更改服务路径运行相同的 3000 个实体,完成操作的时间为 20 + 秒。
  • 等等..

我的 Fiware 实例正在使用用于 Fiware/Mongo 的 docker-compose 命令运行:

-dbhost mongo -reqMutexPolicy none -dbPoolSize 100 -logLevel NONE

--nojournal --logappend

我需要这方面的建议,因为我没有找到有关此类问题的具体信息(如果我错过了,请指出我)。对我来说,mongo 似乎有些东西让它表现得很奇怪。或者是我犯了一些错误。

{ id: "8B56C6",
type: "DepositPoint",
family: { value: "Agent", type: "String", metadata: {} },
serialNumber: { value: "", type: "String", metadata: {} },
refSortingType: { value: "sortingtype:2", type: "String", metadata: {} },
description: { value: "", type: "String", metadata: {} },
refType: { value: "depositpointtype:0", type: "String", metadata: {} },
storedWasteOrigin: { value: "", type: "String", metadata: {} },
location:
{ value: { type: "Point", coordinates: [Array] },
 type: "geo:json" },
address: { value: "", type: "String", metadata: {} },
fillingLevel: { value: 0, type: "Integer" },
cargoWeight: { value: 0, type: "Integer", metadata: { unit: [Object] } },
temperature: { value: 0, type: "Integer", metadata: { unit: [Object] } },
methaneConcentration: { value: 0, type: "Integer", metadata: { unit: [Object] 
} },
regulation: { value: "Municipal association", type: "String", metadata: {} },
responsible: { value: "", type: "String", metadata: {} },
owner: { value: "Txorierri", type: "String", metadata: {} },
dateServiceStarted: { value: "", type: "String", metadata: {} },
dateLastEmptying: { value: "", type: "String", metadata: {} },
nextActuationDeadline: { value: "", type: "String", metadata: {} },
actuationHours: { value: "", type: "String", metadata: {} },
openingHours: { value: "", type: "String", metadata: {} },
dateLastCleaning: { value: "", type: "String", metadata: {} },
nextCleaningDeadline: { value: "", type: "String", metadata: {} },
refDepositPointIsle: { value: "", type: "String", metadata: {} },
status: { value: "ok", type: "String", metadata: {} },
color: { value: "", type: "String", metadata: {} },
image: { value: "", type: "String", metadata: {} },
annotations: { value: "", type: "String", metadata: {} },
areaServed: { value: "", type: "String", metadata: {} },
dateModified: { value: "", type: "String", metadata: {} },
refDevice: { value: "", type: "String", metadata: {} } }

我重新发布这个问题是因为同样的问题被无缘无故地删除了。希望清楚。

【问题讨论】:

    标签: fiware fiware-orion


    【解决方案1】:

    我会避免使用 Fiware-Service-Path 并使用自定义属性对您的实体进行分组。 schema.org 定义的一个有趣的属性是 areaServed https://schema.org/areaServed,它可以用于这些目的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多