2014-02-13 7 views
0

Я оптимизирую производительность, и я обнаружил, что некоторые сообщения, не требующие больших по размеру, но сложных по структуре, занимают больше времени, чтобы получить полученное в обработчике после отправка, около 3 секунд между конечной точкой, работающей на одной физической машине. Это я подозреваю, что Serializer занимает больше времени для обработки сериализации и десериализации. Я использую BinarySerializer, есть ли способ вычислить время, затраченное сериализатором. Есть ли способ вызвать сериализатор с модульным тестированием (NServiceBus.Test)Что такое влияние эффективности использования BinarySerializer на XmlSerializer в NServiceBus

ответ

1

Очень маловероятно, что бинарный сериализатор будет вашим узким местом для сообщений, которые не очень велики. Вы можете легко запустить тест, чтобы проверить это, используя сериализатор, чтобы напрямую сериализовать и десериализовать одно из ваших сообщений.

1

есть ли способ, чтобы вычислить время, затраченное сериализатором

Ваш лучший выбор, чтобы получить точные + в режиме реального времени является к тому, чтобы использовать профайлер как DotTrace http://www.jetbrains.com/profiler/ или JustTrace http://www.telerik.com/products/memory-performance-profiler.aspx

есть ли способ, чтобы вызвать сериалайзер с блоком тестирования

Classe s являются общедоступными, и вы можете создавать их и запускать их из единичного теста. Типы: BinaryMessageSerializer и XmlMessageSerializer.

Если вы хотите иметь больше разговоров об этом я рекомендую вам повторно пост в группе NSB https://groups.google.com/forum/#!forum/particularsoftware и включают в себя классы сообщений таймингов, которые вызывают проблемы