Class OortMulticastConfigServlet

  • All Implemented Interfaces:
    java.io.Serializable, javax.servlet.Servlet, javax.servlet.ServletConfig

    public class OortMulticastConfigServlet
    extends OortConfigServlet

    This servlet initializes and configures an instance of the Oort CometD cluster manager via autodiscovery of other Oort comets using UDP multicast.

    This servlet configures and starts an instance of OortMulticastConfigurer that advertises via multicast the Oort URL to which it is associated and receives the advertisements from other Oort comets.

    This servlet must be initialized after an instance the CometD servlet that creates the BayeuxServer instance used by Oort.

    This servlet inherits from OortConfigServlet init parameters used to configure the Oort instance, and adds the following init parameters:

    • oort.multicast.bindAddress, to specify the bind address of the MulticastSocket that receives the advertisements; defaults to the wildcard address
    • oort.multicast.groupAddress, to specify the multicast group address to join to receive the advertisements; defaults to 239.255.0.1
    • oort.multicast.groupPort, to specify the port over which advertisements are sent and received; defaults to 5577
    • oort.multicast.groupInterfaces, a comma separated list of IP addresses that will join the multicast group; default to all interfaces that support multicast
    • oort.multicast.timeToLive, to specify the time to live of advertisement packets; defaults to 1 (1 = same subnet, 32 = same site, 255 = global)
    • oort.multicast.advertiseInterval, to specify the interval in milliseconds at which advertisements are sent; defaults to 2000 ms
    • oort.multicast.connectTimeout, to specify the timeout in milliseconds that a node should wait to connect to another node; defaults to 2000 ms
    • oort.multicast.maxTransmissionLength, to specify the maximum length in bytes of the advertisement message, and should be smaller than the max transmission unit; defaults to 1400 bytes
    See Also:
    OortConfigServlet, OortMulticastConfigServlet, Serialized Form
    • Field Detail

      • OORT_MULTICAST_BIND_ADDRESS_PARAM

        public static final java.lang.String OORT_MULTICAST_BIND_ADDRESS_PARAM
        See Also:
        Constant Field Values
      • OORT_MULTICAST_GROUP_ADDRESS_PARAM

        public static final java.lang.String OORT_MULTICAST_GROUP_ADDRESS_PARAM
        See Also:
        Constant Field Values
      • OORT_MULTICAST_GROUP_PORT_PARAM

        public static final java.lang.String OORT_MULTICAST_GROUP_PORT_PARAM
        See Also:
        Constant Field Values
      • OORT_MULTICAST_GROUP_INTERFACES_PARAM

        public static final java.lang.String OORT_MULTICAST_GROUP_INTERFACES_PARAM
        See Also:
        Constant Field Values
      • OORT_MULTICAST_TIME_TO_LIVE_PARAM

        public static final java.lang.String OORT_MULTICAST_TIME_TO_LIVE_PARAM
        See Also:
        Constant Field Values
      • OORT_MULTICAST_ADVERTISE_INTERVAL_PARAM

        public static final java.lang.String OORT_MULTICAST_ADVERTISE_INTERVAL_PARAM
        See Also:
        Constant Field Values
      • OORT_MULTICAST_CONNECT_TIMEOUT_PARAM

        public static final java.lang.String OORT_MULTICAST_CONNECT_TIMEOUT_PARAM
        See Also:
        Constant Field Values
      • OORT_MULTICAST_MAX_TRANSMISSION_LENGTH_PARAM

        public static final java.lang.String OORT_MULTICAST_MAX_TRANSMISSION_LENGTH_PARAM
        See Also:
        Constant Field Values
    • Constructor Detail

      • OortMulticastConfigServlet

        public OortMulticastConfigServlet()
    • Method Detail

      • configureCloud

        protected void configureCloud​(javax.servlet.ServletConfig config,
                                      Oort oort)
                               throws java.lang.Exception
        Description copied from class: OortConfigServlet

        Configures the Oort cloud by establishing connections with other Oort comets.

        Subclasses implement their own strategy to discover and link with other comets.

        Specified by:
        configureCloud in class OortConfigServlet
        Parameters:
        config - the servlet configuration to read parameters from
        oort - the Oort instance associated with this configuration servlet
        Throws:
        java.lang.Exception - if the cloud configuration fails
      • destroy

        public void destroy()
        Specified by:
        destroy in interface javax.servlet.Servlet
        Overrides:
        destroy in class OortConfigServlet