Мне нужен совет по вопросам производительности.
Проблема заключается в том, что размещение точно таких же данных в Fiware Orion с той лишь разницей, что путь Fiware-Service приводит к экспоненциальному увеличению во времени. То есть каждый следующий запрос занимает больше времени, чем первый, и продолжает добавлять.
Моя программа считывает и анализирует некоторые файлы, а затем сохраняет их в Fiware Orion, в зависимости от размера файла для проверки и анализа может потребоваться до 3 секунд.
Затем эти данные отправляются в Orion Context Broker.
Пример:
- Пустой и свежий экземпляр Ориона
- Тестовый пример: 3000 объектов, POST с использованием пакетных операций.
- Из-за размера сущностей 3000 разбиваются на меньшие по размеру и отправляются в Орион с пакетом. В этом случае моя программа обрежет их до размера 500 и отправит их один за другим.
- Первый запуск 3000 единиц времени для выполнения операций 7 секунд.
- Изменить путь обслуживания. Выполнить те же 3000 единиц времени для завершения операции 14/15 секунд.
- Измените путь обслуживания, запустите те же 3000 объектов времени для завершения операции 20 + секунд.
- и т. Д.
Мой экземпляр Fiware запускается с помощью команд docker-compose, используемых для Fiware / Mongo:
-dbhost mongo -reqMutexPolicy none -dbPoolSize 100 -logLevel NONE
--nojournal --logappend
Мне нужен совет по этому вопросу, поскольку я не нашел конкретной информации об этом типе проблемы (если я пропустил, просто укажите мне на это). Мне кажется, что с монго что-то странное. Или я ошибаюсь.
{ 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: {} } }
Я повторяю это сообщение, поскольку тот же вопрос был удален без всякой причины. Надеюсь, это понятно.