Changes between Version 8 and Version 9 of LoadBalanceable
- Timestamp:
- Mar 27, 2012, 4:30:03 AM (12 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
LoadBalanceable
v8 v9 49 49 In order to propagate changes made in one node to all others, each time the Lucene index (and SVN) is updated in one node, when a metadata changes, a message is sent to all other nodes causing them to do the same (note: this does not involve a full rebuild-index, just a re-index of the changed metadata -- equal to what happens in the originating node). 50 50 51 The nodes know about the other nodes (where to broadcast the update message to) because all nodes will be listed in a new table. 51 We'll use JMS to propagate these message using durable subscriptions to a Topic/Subscribe queue. This decouples knowledge of the other nodes from each node and enables guaranteed delivery in correct order even after a node has been down. 52 52 53 53 === site uuid === … … 57 57 Since the harvesting configuration is stored inside the database, all GeoNetwork instances inside the cluster will share the same harvesting configuration and will hence all attempt to harvest the same nodes. 58 58 59 To prevent the associated overhead in memory footprint and performance, the harvester configurations will be extended with a field containing the node-uuid of the GeoNetwork node where it was created. The harvester will only run in this node. An admin function to check sanity (signal harvesters with a node-uuid that doesn't exist in the new nodes table) will allow Administrator users to replace the node-uuid with one that does exist in the nodes table. 59 To prevent the associated overhead in memory footprint and performance, the harvester configurations will be extended with a field containing the node-uuid of the GeoNetwork node where it was created. The harvesting schedule will run only in this node. To improve distribution of load, the scheduler will not start the harvest job as such, but places a message on a JMS Point-to-Point queue. All nodes are registered with this queue and one of them will be the first to pick it up, removing the message from the queue and starting the harvester job. 60 61 An admin function to check sanity (signal harvesters with a node-uuid that doesn't exist in the new nodes table) will allow Administrator users to replace the node-uuid with one that does exist in the nodes table. 60 62 61 63 === edit metadata lock === … … 77 79 78 80 === New libraries added === 79 No new libraries. 81 ActiveMQ for JMS 80 82 81 83 == Risks ==