Есть ли опыт использования Terracotta с открытым исходным кодом?

StackOverflow https://stackoverflow.com/questions/279685

  •  07-07-2019
  •  | 
  •  

Вопрос

Есть ли у кого-нибудь опыт использования предложения с открытым исходным кодом от Terracotta в отличие от их корпоративного предложения?В частности, меня интересует, стоит ли использовать terracotta без корпоративных инструментов для управления вашим кластером?

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

Это было полезно?

Решение

В настоящее время корпоративные инструменты Terracotta предоставляют лишь несколько функций, помимо версии с открытым исходным кодом, таких как визуализация и управление (например, возможность вывести клиента из кластера). Это будет по-прежнему расходиться, и корпоративные инструменты, скорее всего, будут обладать большей функциональностью на уровне оператора, включая управление и мониторинг, но вы, безусловно, можете управлять и настраивать приложение даже с помощью инструментов с открытым исходным кодом.

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

Я бы посоветовал вам попробовать это сами. Если вы хотите увидеть пример реального приложения, использующего Terracotta, вам следует проверить это справочное веб-приложение, которое только что было выпущено:

Экзаменатор

Другие советы

Я нахожусь в процессе интеграции Terracotta с моим проектом (симулятор сети сенсорных узлов).Около трёх недель назад я узнал о Терракоте от одного из моих коллег.И теперь мое приложение использует преимущества грид-вычислений с использованием Terracotta.Ниже я суммировал некоторые важные моменты моего опыта работы с Терракотой.

  • Сайт Terracotta содержит довольно подробную документацию.Эта статья, вероятно, станет хорошей отправной точкой для разработчика. Руководство по концепции и архитектуре
  • Если вы столкнулись с проблемой и не нашли ответа в документации, Терракотовый форум сообщества это хорошее место, чтобы задавать вопросы.Кажется, разработчики Terracotta проверяют это регулярно и довольно оперативно.
  • Несмотря на то, что Terracotta работает под управлением JVM, и рекламируется, что запуск вашего приложения в кластере — это всего лишь вопрос конфигурации, вы должны быть готовы к тому, что может потребоваться внести некоторые серьезные изменения в ваше приложение, чтобы оно работало достаточно хорошо. .Например.Мне пришлось полностью переписать логику синхронизации моего приложения.
  • Хорошая интеграция с Eclipse.
  • Консоль администратора — отличный инструмент, который очень помог мне настроить мое приложение для нормальной работы под Terracotta.Он собирает все показатели производительности серверов и клиентов, о которых вы только можете подумать.Конечно, есть некоторые проблемы, связанные с графическим интерфейсом, но у кого их нет :-)
  • Предпочитайте стандартные примитивы синхронизации Java (синхронизировать/ожидать/уведомлять) гражданам java.util.concurrent.*.Я обнаружил, что стандартные примитивы обеспечивают более высокую гибкость (можно настроить блокировку кластера для чтения или записи или даже отсутствие блокировки вообще), их легче отслеживать в консоли администратора (вы видите имя класса блокируемого объекта, а не тогда напримернекоторый ReentrantLock).

Надеюсь, это поможет.

Возможно, вы захотите взглянуть на JBossCache / PojoCache, который представляет собой решение распределенного кэширования в памяти. Разница в том, что он использует простой API для распространения объектов по вашему «кластеру» кэшей, где Terracotta работает на уровне загрузки классов / jvm.

(На самом деле у них нет собственной JVM, но они изменяют классы по мере их загрузки, чтобы позволить им быть «кластеризуемыми»)

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

Обновлять

В сообщении ОП я вижу следующее: «Ну, я действительно не знаю, что нам нужно (отсюда и отсутствие подробных требований), но, может быть, какой-то корпоративный инструмент волшебным образом решит все наши проблемы, известные и непредвиденные?Это было бы потрясающий!"

С таким архитектурным подходом это не прокатит.Никакие истории успеха Teracotta этого не изменят.

OSS выгоден, когда сообщество вокруг него может заменить коммерческую поддержку.Предположим, у парня проблемы на производстве.Сообщество не может помочь — оно слишком мало для такого малоизвестного продукта.Серверы не работают, бизнес в опасности.Понимаете?Вам нужна коммерческая лицензия заранее.Нет денег?Ну, тогда ты не бизнес, и, вероятно, не станет им (если никто не захочет в это вкладывать средства).

Извините, что прервал ваши мечты.

ИМХО:

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

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top