Эффекты установки PersistMessages на N и проблемы FileStorePath в QuickFixJ:

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

Поэтому для тестирования я установил этот флаг на N в конкретном сеансе. После этого мои проблемы с памятью полностью исчезли. Но я не понимаю, почему quickfixj хранит эти сообщения в памяти, когда я правильно установил это свойство: FileStorePath. Эти сообщения должны храниться в файле, но это не так. Я вижу некоторые файлы в каталоге, который я установил в FileStorePath, но ни один из них, похоже, не хранит сообщения, я могу видеть только порядковый номер в них. Нужно ли устанавливать другие флаги, кроме этого, чтобы это работало?

Я не планирую использовать флаг PersisMessages вне тестирования. Я бы предпочел флаг FileStoreMaxCachedMsgs с разумной цифрой. Мне также нужно знать, что произойдет, если мое приложение получит запрос на повторную отправку, когда я установил для PersisMessages значение N? Будет ли quickfixj отправлять зазоры вместо этого или произойдет сбой с сообщением об исключении?

Спасибо

1 ответ

Решение

Я обнаружил, что quickfixj отправляет пробелы, когда он не может найти сообщения. также флаг конфигурации FileStoreMaxCachedMsgs используется, чтобы сообщить quickfixj о том, сколько сообщений он должен хранить в кэше, прежде чем отправлять их в файлы. таким образом, этот флаг, по моему мнению, должен быть изменен, чтобы ваше приложение работало без исчерпания памяти из-за кэширования сообщений.

надеюсь, это будет полезно для кого-то. Спасибо

Другие вопросы по тегам