Лагом без ConductR?

Практично или разумно ли использовать Lagom в продакшене без ConductR? Коммерческое лицензирование меня отталкивает. Этот фреймворк выглядит так, как будто его довольно сложно развернуть, а настраиваемый инструментарий для этого может потребовать много усилий, чтобы сделать все правильно.


person stelterd    schedule 18.05.2016    source источник
comment
Lightbend оставил открытым исходный код этих конкретных инструментов и реализаций в версии Lagom с открытым исходным кодом. Вы можете реализовать ServiceLocator самостоятельно и самостоятельно управлять автомасштабированием, ведением журналов и т. п., используя другие инструменты с открытым исходным кодом, такие как, например, Consul и Nomad. Lightbend упрощает простое включение в ConductR, предоставляя все эти готовые реализации с отличным соглашением об уровне обслуживания. Недавно они приобрели OpsClarity, которая, как мне кажется, входит в их коммерческий пакет.   -  person Martijn    schedule 17.02.2017
comment
@stelterd Вы нашли замену ConductR?   -  person angelcervera    schedule 15.04.2017


Ответы (4)


(отказ от ответственности: я сотрудник Lightbend, в настоящее время основной член команды Lagom)

Изменить (ноябрь 2018 г.): см. https://www.lagomframework.com/documentation/current/java/ProductionOverview.html#Running-Lagom-in-production для получения актуальной информации по этой теме.

(исходный ответ, август 2017 г.) Многое изменилось в стеке Lightbend с тех пор, как этот вопрос был добавлен более года назад. Например: ConductR теперь можно бесплатно использовать в рабочей среде для до трех узлов. Кроме того, команда ConductR также работает над предоставлением инструментов для развертывания приложения Lagom в Kubernetes. Усилия в этом направлении очень продвинуты, и некоторые из наших примеров приложений можно развернуть в Kubernetesуже.

person ignasi35    schedule 23.08.2017

Ваш вопрос довольно открытый, поэтому давайте начнем с «это зависит».

If

  • вам удобно управлять масштабированием в конфигурации вашего кластера Akka,
  • ваше использование не нарушает условия лицензирования с открытым исходным кодом lagom, play и Akka, И
  • у вас недостаточно денежных средств, чтобы оправдать использование производственного пакета Lightbend,

тогда вы, возможно, сможете выполнить развертывание с минимальными усилиями и специальными инструментами.

Если эти условия не выполняются, вы можете выбрать другое место (например, Spring Cloud) или оставить Lightbend. Вы можете обнаружить, что поход в другое место имеет собственную когнитивную нагрузку и/или коммерческие расходы.

Надеюсь, что это поможет даже через 7 месяцев.

person tevye    schedule 30.01.2017

Другие ответы более высокого уровня, но по сути я могу сказать «да». В настоящее время я развертываю службу Lagom для размещения в кластере Kubernetes, и я не использую ConductR или какие-либо компоненты с коммерческой лицензией.

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

person Qwertycrackers    schedule 30.05.2018

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

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

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

Как это может работать

Each lagom service that you have should be external service

  1. Конфигурация производственного цикла должна быть смешана с

ConfigurationServiceLocatorComponents

  1. Служба, которая должна взаимодействовать с другой, должна быть запущена с дополнительным параметром, который сообщает лагому, что эта служба является внешней и может быть связана напрямую (все может быть в JAVA_OPTS, как для игрового приложения)

-Dlagom.services.your_service_name=http://k8s_service_name.default.svc.cluster.local:9000

person Dmitriy Kuzkin    schedule 07.11.2018