Сравнение производительности между ff4j и togglz - PullRequest
0 голосов
/ 22 ноября 2018

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

Контекст проекта: это netflix microservicesархитектура, так что у нас есть эврика, лента, zuul и микросервисы.

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

спасибо заранее :)

1 Ответ

0 голосов
/ 23 ноября 2018

Отказ от ответственности: я создал FF4j, поэтому я не буду давать вам ответ относительно сравнения производительности.Я приведу принципы проектирования архитектуры.

Микросервисы означают распределенную архитектуру, поэтому вам придется хранить состояние ваших функций в общем постоянном хранилище (БД).

стоимость структуры переключения функций не будет временем для оценки предиката состояния объекта (это простое условие), это будет время для доступа к данным из персистентностихранилище.

FF4j обеспечивает поддержку как REDIS, так и CONSUL:

  • Redis кажется хорошим кандидатом, поскольку он очень быстр для сдачи / получения и распространения.
  • Консул также является хорошей идеей в распределенном микросервисе: он предоставляет хранилище значений ключей.
  • Эврика может делать то же самое, я не знаю, у ff4j еще нет хранилища для него.

Если вам нужно хранить свои функции в более медленной БД, такой как SQL-Как тогда вы могли бы рассмотреть возможность использования кэширования.FF4j предоставляет некоторые cacheProxy для обработки таких случаев использования.

Другие соображения:

  • Поместите консоль администрирования только в бэкэнд-приложение, а не на каждый микросервис (безопасность + снижение производительности)
  • Функция Toggle может сделать больше с помощью Управления конфигурациями и мониторинга.

Возможно, вы захотите взглянуть на этот 15-минутный доклад именно по этому вопросу.LIVE DEMO, начиная с 7: 10

и репозиторий github для образца с Spring-Cloud

...