geoserver的分布式部署 GISer
geoserver的分布式部署采用基于JMS的集群部署,由geoserver(Master)、geroserver(Slave)、The MOM(消息相關(guān)中間件ActiveMQ)組成。ActiveMQ通過(guò)gs-jms-geoserver工程與geoserver集成在一起,省去了ActiveMQ的部署和配置。
在gs-web-app工程的pom.xml文件中增加community下的jms-cluster(gs-jms-commons、gs-jms-geoserver)模塊依賴(lài)后,在geoserver主頁(yè)上即可看到Cluster的相關(guān)菜單(Cluster Configuration),用于分布式部署配置:
配置頁(yè)面中的brokerURL用于設(shè)定代理Url,可采用默認(rèn)設(shè)置(VM+實(shí)例名稱(chēng)),當(dāng)設(shè)置為failover(tcp://localhost:61616,tcp://localhost:61617)時(shí),啟動(dòng)該進(jìn)程時(shí)會(huì)卡死,設(shè)置為tcp://localhost:61616或者tcp://localhost:61617可行。activemq.transportConnectors.server.uri用于設(shè)定broker的偵聽(tīng)端口
多臺(tái)服務(wù)器部署geoserver實(shí)例用于集群部署時(shí),相互之間進(jìn)行網(wǎng)絡(luò)連接時(shí),會(huì)通過(guò)主機(jī)名進(jìn)行tcp連接,如tcp://GIS:61616,會(huì)報(bào)錯(cuò)WARN [network.DiscoveryNetworkConnector] - Could not start network bridge between: vm://instance9090?async=false&network=true and: tcp://GIS:61616 due to: java.net.UnknownHostException: GIS,需在/etc/hosts文件中增加GIS的主機(jī)IP標(biāo)識(shí)。
多臺(tái)機(jī)器上部署時(shí),配置transportConnectors.server.uri時(shí)不能使用localhost,應(yīng)將tcp://localhost:61616改為tcp://192.168.15.11:61616(別的機(jī)器在遠(yuǎn)程連接時(shí)會(huì)直接連接tcp://localhost:61616,因而報(bào)錯(cuò)),報(bào)錯(cuò)內(nèi)容如下:
ERROR [multicast.MulticastDiscoveryAgent] - Failed to advertise our service: default.ActiveMQ-4.alive.%localhost%tcp://192.168.15.97:61617
java.io.IOException: Operation not permitted (sendto failed)
at java.net.PlainDatagramSocketImpl.send(Native Method)
at java.net.DatagramSocket.send(DatagramSocket.java:693)
at org.apache.activemq.transport.discovery.multicast.MulticastDiscoveryAgent.doAdvertizeSelf(MulticastDiscoveryAgent.java:419)
at org.apache.activemq.transport.discovery.multicast.MulticastDiscoveryAgent.doTimeKeepingServices(MulticastDiscoveryAgent.java:403)
at org.apache.activemq.transport.discovery.multicast.MulticastDiscoveryAgent.run(MulticastDiscoveryAgent.java:365)
at java.lang.Thread.run(Thread.java:745)
applicationContext.xml文件中的部分屬性可在GeoServerApplication.properties中指定。如:
總結(jié)
以上是生活随笔為你收集整理的geoserver的分布式部署 GISer的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: pythonre正则表达式1012pyt
- 下一篇: 杜仲泡水的功效与作用、禁忌和食用方法