Поиск решений распределенного кэша для реализации распределенного шаблона MVC - PullRequest
0 голосов
/ 09 февраля 2011

Я создаю клиент-серверное приложение, которое будет иметь в своей основе довольно сложную (но не большую - скажем, 10,00 объектов) объектную модель. Несколько клиентов должны будут просматривать модель (через графический интерфейс Eclipse RCP), но сервер будет единственным узлом, который может напрямую редактировать модель. Я хочу, чтобы изменения в модели были опубликованы для клиентов. Новые клиенты смогут запрашивать модель и регистрироваться для получения обновлений.

Это довольно стандартный шаблон Model-View-Controller.

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

Кроме того, мне нужно иметь возможность реплицировать граф объектов и поддерживать согласованность, например, если у меня есть объект «Персона»:

 public class Person implements Serializable {
private Person manager;
private String name;

     public Person (Person manager, String name) {

добавить трех человек в мой кеш:

 Person boss = new Person(null,"TheBoss");
 Person employee1 = new Person(boss,"employee 1");
 Person employee2 = new Person(boss,"employee 2");

 cache.put(new Element("boss",boss)
 cache.put(new Element("employee1",employee1)
 cache.put(new Element("employee2",employee2)

А затем обновите имя босса:

 boss.setName("TheBossXX");
 cache.put(new Element("boss",boss)

Я ожидаю, что следующий код вернет 'TheBossXX' на всех узлах:

 Person e1 = (Person) cache.get("employee1").getValue()
 Person b1 = e1.getManager()
 LOG.info(b1.getName());

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

Интересно услышать ваши предложения.

Ник

1 Ответ

0 голосов
/ 09 февраля 2011

Я предлагаю Spring Web Flow.

     Spring Web Flow compliments the Spring MVC.

Вот ссылка на Spring Web Flow Demo

...