Все настройки указываются в пропертях и конфигурации xml.
34 static void test() throws Exception{ 35 final SymmetricWebServer masterNode = new SymmetricWebServer("master.properties"); 36 Thread s = new Thread() { 37 public void run() { 38 try { 39 masterNode.start(8080);//блокирует поток выполнения 40 } catch (Exception e) { 41 e.printStackTrace(); 42 } 43 } 44 }; 45 s.start(); 46 masterNode.getEngine().openRegistration("slave", "1"); 47 masterNode.getEngine().reloadNode("1"); 48 Thread.sleep(10000);//надо ждать пока сервер не запустится 49 SymmetricEngine slaveEngine = new SymmetricEngine("slave.properties"); 50 slaveEngine.start(); 51 }
Зы 1. Сервер сразу не запустился - необходимо изменить(положить в classpath) ddl-config.xml в котором DECIMAL" size="18" - по умолчанию 20 - что неработает с firebird.
Зы 2. На рутовый нод сначала нужно пролить данные - необходимо создать запись в бд про центральный нод
205 //создаём первый нод 206 session.createSQLQuery("insert into SYM_NODE (node_id, node_group_id, external_id, sync_enabled) " + 207 "values ('00000', 'master', '00000', 1);").executeUpdate(); 208 session.createSQLQuery("insert into SYM_NODE_IDENTITY " + 209 "values ('00000')").executeUpdate();Зы 3. Данные на клиент проливаются сами при репликации(можно полностью прогрузить нод reloadNode)
Зы 4. Так делать ненадо, сервер мнёт и ругается когда типа и серверу и клиенту говорят что нада самим лазить за обновлениями(буква - это лазить за обновлениями'P' )
217 //указываем связи - направление синхронизации (Slave сам подсоединяется к Master) 218 session.createSQLQuery("insert into sym_node_group_link (source_node_group_id, target_node_group_id, data_event_action) " + 219 "values ('slave', 'master', 'P')").executeUpdate(); 220 //корп ждёт когда к нему подсоединится сторе(W) 221 session.createSQLQuery("insert into sym_node_group_link (source_node_group_id, target_node_group_id, data_event_action) " + 222 "values ('master', 'slave', 'P')").executeUpdate();
Комментариев нет:
Отправить комментарий