Я никогда не использовал распределенные кеши /DHT, такие как memcached, jboss cache, ehcache и т.д. Мне интересно, какая из них подходит для моего использования.
Во-первых, я не занимаюсь веб-приложениями (поскольку большинство этих проектов, похоже, ориентированы на веб-приложения). Я пишу серверы (системы управления заказами фактически) для финансовых торговых фирм. Сами серверы не слишком сложны. Они должны получать информацию (рыночные данные, заказы, казни и т.д.), Маршрутизируя их к месту назначения, в то же время изменяя некоторые из этих сообщений.
Я рассматриваю эти продукты для решения следующих проблем:
-
Безопасный репозиторий состояния сервера. Я предпочел бы построить логику моего приложения в виде группы трансформаторов (похожей на Apache Camel) и сохранить состояние в безопасном месте.
-
Этот репозиторий должен быть распространен: в случае сбоя одного из этих хранилищ данных должно быть еще одно или два, и я должен иметь возможность легко переключаться на них
-
Этот репозиторий должен быть быстрым. Однозначные миллисекунды рассчитываются здесь, другими словами, системы, которые потребляют/обрабатывают эти данные, являются автоматизированными системами, а не людьми, которые нажимают на ссылки. Эта система должна иметь высокую пропускную способность и низкую задержку. Отправляя свои данные за пределы процесса, я обязательно замедляю производительность, но я стараюсь сбалансировать абсолютную необработанную скорость и абсолютную защиту данных.
-
Этот репозиторий должен быть безопасным. Как и в случае нескольких резервных копий в режиме онлайн, этой системе необходимо записать данные на диск (возможно, более одного диска).
Мне бы очень хотелось прекратить писать собственные "серверы транзакций". Правильно ли я смотрю на такие проекты, как кеш jboss, ehcache и т.д.?
Спасибо