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.