SEARCH
0-9 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Prev | Current Page 311 | Next

Moh'd A. Radaideh and Hayder Al-ameed

"Architecture of Reliable Web Applications Software"

A user might search for other employees in the company
who know about a certain client and a technology. The servlet processes the request and
enqueues a value object to the queue with minimal amount of data (i.e., the query terms, the
URL, the user ID, a time-stamp, etc.) and then respond with the search results. Asynchronously,
a thread uses a QueueEventHandler object to decide which item in the queue should
be dequeued and then passes that object to get handled. The object performs any calculations
(number of searches, list management, and clustering or trend-type calculation) and stores
the data to be presented and used in other ways. An example of where this data can be used
is in the popular, ???what are other people searching for right now??? capability. Even though the
insert is synchronized (we used a Java ArrayList), they take more precedent because there
are more enqueues than dequeues at any given time. You can see in the sample screen shot
of the BluePages administration interface that the peak queue size for this specific server
instance is 268, so we know the approach is working.
In some cases, a soft-queue is not sufficient, and a real message queue subsystem is required.
The proposal of this section is simply to raise the issue that not all aspects of a transaction
need to complete during the duration of handling a request.


Pages:
299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323