Repository: qpid-dispatch Updated Branches: refs/heads/master 413d727b6 -> 7c344339c
DISPATCH-1162 - Added connection failover section. Fixed CMakeLists to cause rebuild on source changes. Project: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/commit/7c344339 Tree: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/tree/7c344339 Diff: http://git-wip-us.apache.org/repos/asf/qpid-dispatch/diff/7c344339 Branch: refs/heads/master Commit: 7c344339cb41ad3ecfc795f47ac317638b56566e Parents: 413d727 Author: Ted Ross <[email protected]> Authored: Wed Oct 31 08:21:06 2018 -0400 Committer: Ted Ross <[email protected]> Committed: Wed Oct 31 08:21:06 2018 -0400 ---------------------------------------------------------------------- docs/books/CMakeLists.txt | 18 +++--- .../user-guide/configuration-connections.adoc | 4 ++ .../user-guide/modules/connection-failover.adoc | 65 ++++++++++++++++++++ 3 files changed, 80 insertions(+), 7 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/7c344339/docs/books/CMakeLists.txt ---------------------------------------------------------------------- diff --git a/docs/books/CMakeLists.txt b/docs/books/CMakeLists.txt index c4938a4..b30c99d 100644 --- a/docs/books/CMakeLists.txt +++ b/docs/books/CMakeLists.txt @@ -38,13 +38,17 @@ if (ASCIIDOCTOR_EXE) ) endforeach () - foreach (dir user-guide old-user-guide) - add_custom_command ( - OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${dir}/index.html - COMMAND ${ASCIIDOCTOR_EXE} ${CMAKE_CURRENT_SOURCE_DIR}/${dir}/book.adoc -o ${dir}/index.html - DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${dir}/book.adoc - ) - endforeach () + add_custom_command ( + OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/old-user-guide/index.html + COMMAND ${ASCIIDOCTOR_EXE} ${CMAKE_CURRENT_SOURCE_DIR}/old-user-guide/book.adoc -o old-user-guide/index.html + DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/old-user-guide/*.adoc + ) + + add_custom_command ( + OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/user-guide/index.html + COMMAND ${ASCIIDOCTOR_EXE} ${CMAKE_CURRENT_SOURCE_DIR}/user-guide/book.adoc -o user-guide/index.html + DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/user-guide/*.adoc ${CMAKE_CURRENT_SOURCE_DIR}/user-guide/modules/*.adoc ${CMAKE_CURRENT_SOURCE_DIR}/user-guide/assemblies/*.adoc + ) add_custom_target (books DEPENDS ${books}) add_dependencies (docs books) http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/7c344339/docs/books/user-guide/configuration-connections.adoc ---------------------------------------------------------------------- diff --git a/docs/books/user-guide/configuration-connections.adoc b/docs/books/user-guide/configuration-connections.adoc index 5c24422..02a6235 100644 --- a/docs/books/user-guide/configuration-connections.adoc +++ b/docs/books/user-guide/configuration-connections.adoc @@ -118,3 +118,7 @@ For information about additional attributes, see link:{qdrouterdConfManPageUrl}# If you have set up SSL/TLS or SASL in your environment, you can configure the router to only send encrypted or authenticated communication on this connection. . For each remaining router or broker to which this router should connect, configure an additional `connector` entity. + + +[id='connection-failover'] +include::modules/connection-failover.adoc[leveloffset=+1] http://git-wip-us.apache.org/repos/asf/qpid-dispatch/blob/7c344339/docs/books/user-guide/modules/connection-failover.adoc ---------------------------------------------------------------------- diff --git a/docs/books/user-guide/modules/connection-failover.adoc b/docs/books/user-guide/modules/connection-failover.adoc new file mode 100644 index 0000000..7efdfe5 --- /dev/null +++ b/docs/books/user-guide/modules/connection-failover.adoc @@ -0,0 +1,65 @@ +//// +Licensed to the Apache Software Foundation (ASF) under one +or more contributor license agreements. See the NOTICE file +distributed with this work for additional information +regarding copyright ownership. The ASF licenses this file +to you under the Apache License, Version 2.0 (the +"License"); you may not use this file except in compliance +with the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, +software distributed under the License is distributed on an +"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +KIND, either express or implied. See the License for the +specific language governing permissions and limitations +under the License +//// + +// Module included in the following assemblies: +// + +[id='connection-failover-{context}'] += Connection Failover + +In {RouterName}, a connector attempts to maintain an open network transport +connection to the configured remote host and port. If the connection cannot be +established, the connector will continually retry until the connection is +established. If an established connection is lost, the connector shall +immediately attempt to re-establish the connection. + +Connection Failover is a mechanism by which the remote host can provide +alternate connection information for the connector to use in the event the +established connection is lost. In this case, rather than attempting to +re-establish the connection to the same host, the connector shall try the +alternate hosts as well. This is useful in the case where the remote host is +formed by a cluster or array of servers providing the same service. + +{RouterName} can participate in Connection Failover as both a client (initiator +of transport connections) and a server (recipient of transport connections). In +the client role, connectors shall always honor the failover lists provided by +connected servers. As a server, a listener may be configured to provide a +failover list to the clients that connect to it. + +Listener attribute failoverUrls is an optional component that contains a +comma-separated list of URLs to be used as backups for this listener. Each URL +is of the form: + + [(amqp|amqps|ws|wss)://]host_or_ip[:port] + +When a client establishes a connection to this listener, it will be provided +with this list of backup URLs to be used in the event that this connection is +lost. + +As an example, a listener may be configured like this: + + listener { + host: primary.domain.com + port: amqp + failoverUrls: secondary.domain.com:20000, tertiary.domain.com + . + . + . + } + --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
