Платформа Java для распределенной системы

Я ищу библиотеку (или комбинацию библиотек) для создания распределенной системы java, состоящей из нескольких приложений, обмениваемых данными через несколько парных соединений (без mapreduce). На данный момент я сделал изъятие существующих библиотек, и я мог только отбросить то, что нашел. Вот мои требования:

  • Простое обнаружение систем во время выполнения (возможно, через центральный сервер/каталог)
  • Сообщения с легким и низким временем ожидания (без CORBA, RMI, SOAP и т.д.).
  • Децентрализованная связь (без LINDA)
  • Легко использовать и учиться (нет JXTA)
  • Совместимость с лицензией GPL (поэтому GPL, BSD и т.д.)

Есть ли у вас какие-либо предложения? Спасибо заранее

Ответ 1

Вы знакомы с JGroups? Вы можете использовать его для разработки своей собственной архитектуры. Они обеспечивают легкую в использовании многоадресную абстракцию.

Ответ 2

Я большой поклонник JGroups, но недавно обнаружил hazelcast и, вероятно, попробует. Возможно, это то, что вы ищете.

Ответ 4

Вы можете взглянуть на Джейд, если вам нравится парадигма нескольких агентов http://jade.tilab.com/

Ответ 5

Я думаю, что, по крайней мере, следует упомянуть реку Апача (ранее Джини). Он никогда не получал слишком много внимания, вероятно, также потому, что имел (не знаю, все еще есть) довольно крутая кривая обучения. Во всяком случае, он находится в активном развитии:

http://river.apache.org/

Ответ 6

JBoss, хорошо, это не фреймворк, но у них есть ряд проектов, которые звучат так же, как то, что вы хотите,

Ответ 7

Вы можете использовать Redisson - распределенные и масштабируемые структуры данных Java (BitSet, BloomFilter, Set, SortedSet, Map, ConcurrentMap, List, Queue, Deque, BlockingQueue, BlockingDeque, ReadWriteLock, Semaphore, Lock, AtomicLong, CountDownLatch, Publish / Subscribe, RemoteService, ExecutorService, LiveObjectService, ScheduledExecutorService) поверх высокопроизводительного Redis server.