09.12.2012 Views

Advanced Queuing - Oracle

Advanced Queuing - Oracle

Advanced Queuing - Oracle

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Installation Questions<br />

Installation Questions<br />

If the remote queue is in a different database, we use a sequencing algorithm to<br />

avoid the need for a two-phase commit.<br />

When a message needs to be sent to multiple queues in the same destination, it is<br />

sent multiple times. If the message needs to be sent to multiple consumers in the<br />

same queue at the destination, it is sent only once.<br />

When is it useful to create indexes on a queue table? How do I create<br />

them?<br />

Creating an index on the queue table is useful in the following scenarios:<br />

a. Dequeuing using correlation ID: To expedite dequeue, an index can be<br />

created on the column corr_id of the underlying queue table AQ$_<br />

.<br />

b. Dequeue using a condition: Assume this condition to the where-clause for<br />

the SELECT on the underlying queue table. An index on<br />

can be created to expedite the performance this<br />

SELECT statement.<br />

What is the performance of Java (JMS) versus the PL/SQL API for AQ?<br />

We do not have a specific performance evaluation of JMS versus the PL/SQL API.<br />

In general, the PL/SQL API is slightly better than the JMS API. The performance of<br />

the JMS and PL/SQL APIs in version 8.1.7 and higher should be comparable.<br />

How do I set up Internet access for AQ? What components are<br />

required?<br />

See Chapter 17 for a full discussion. The following summarizes the steps required to<br />

set up Internet access for AQ queues:<br />

1. Set up the AQ Servlet: If you are using a servlet execution engine that supports<br />

the Java Servlet 2.2 specification (such as Tomcat), you must create a servlet that<br />

extends the oracle.AQ.xml.AQxmlServlet class. If you are using a servlet<br />

execution engine that supports the Java Servlet 2.0 specification (like Apache<br />

Jserv), you must create a servlet that extends the<br />

oracle.AQ.xml.AQxmlServlet20 class. Implement the init() method in<br />

the servlet to specify database connection parameters.<br />

6-20 <strong>Oracle</strong>9i Application Developer’s Guide - <strong>Advanced</strong> <strong>Queuing</strong>

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!