This chapter contains information on the following topics:
Oracle CEP supports network Input/Output (I/O) over Transmission Control Protocol/Internet Protocol (TCP/IP) using a variety of providers in both server and client mode.
You may define a network I/O service for both Secure Socket Layer (SSL) and non-SSL network access.
Oracle CEP supports both IPv4 and IPv6.
The following Oracle CEP services depend on network I/O configuration:
jetty: depends on network I/O server (netio) configuration.
weblogic-rmi-client: depends on network I/O client (netio-client) configuration.
For more information, see:
Table 9-1 lists the network I/O providers that Oracle CEP supports.
Table 9-1 Oracle CEP Network I/O Providers
| provider-type | SSL? | Description |
|---|---|---|
|
|
No |
A non-blocking provider provides fully non-blocking I/O for reads and writes. That means that each call to Provider class: |
|
|
No |
A semi-blocking provider provides non-blocking I/O for the Provider class:
|
|
|
No |
A blocking provider blocks on each Provider class: |
|
|
No |
The |
|
|
Yes |
The |
Footnote 1 Default provider-type.
Example 9-1 shows how to specify a provider in the Oracle CEP server config.xml file netio element using the provider-type child element.
Oracle CEP server is certified for use with IPv4 only or IPv4/IPv6 dual-stack.
Oracle CEP does not support IPv6.
For more information about IPv6, see RFC 2460: Internet Protocol, Version 6 (IPv6) Specification (http://www.ietf.org/rfc/rfc2460.txt).
You can define a network I/O service that may be used by other services to act as the server and listen for incoming connections.
Alternatively, you can create a client network I/O service as Section 9.3, "Configuring Network I/O Client (netio-client)" describes.
You configure network I/O server services using the netio element in the Oracle CEP server config.xml file.
For more information, see:
To configure network I/O server:
In the Oracle CEP server config.xml file, create a netio element as Example 9-2 shows.
Add a name element that uniquely identifies this netio element on this Oracle CEP server as Example 9-3 shows.
Add a port element to define the TCP/IP port on which this netio service will listen for connection requests as Example 9-4 shows.
Optionally, specify a provider-type as Example 9-5 shows.
Example 9-5 Oracle CEP netio Element With port Element
<netio>
<name>MyNetIO</name>
<port>9002</port>
<provider-type>NIO</provider-type>
</netio>
For more information, see Section 9.1.1, "Network I/O Providers".
Optionally, specify the other netio child elements.
For more information, see "netio" in the Oracle Complex Event Processing Developer's Guide for Eclipse.
You can define a network I/O service that may be used to perform non-blocking network I/O, but which will not act as a server and will not listen for incoming connections.
Alternatively, you can create a server network I/O service as Section 9.2, "Configuring Network I/O Server (netio)" describes.
You configure network I/O client services using the netio-client element in the Oracle CEP server config.xml file.
For more information, see:
"netio-client" in the Oracle Complex Event Processing Developer's Guide for Eclipse.
To configure network I/O client:
In the Oracle CEP server config.xml file, create a netio-client element as Example 9-2 shows.
Add a name element that uniquely identifies this netio element on this Oracle CEP server as Example 9-3 shows.
Optionally, specify a provider-type as Example 9-5 shows.
Example 9-8 Oracle CEP netio-client Element With port Element
<netio-client>
<name>MyNetIOClient</name>
<provider-type>NIO</provider-type>
</netio-client>
For more information, see Section 9.1.1, "Network I/O Providers".
Optionally, specify the other netio-client child elements.
For more information, see "netio-client" in the Oracle Complex Event Processing Developer's Guide for Eclipse.