Beefy Boxes and Bandwidth Generously Provided by pair Networks
Think about Loose Coupling
 
PerlMonks  

Re^3: decoupling processes via queues: advice wanted

by dHarry (Abbot)
on Apr 20, 2009 at 07:21 UTC ( #758642=note: print w/replies, xml ) Need Help??


in reply to Re^2: decoupling processes via queues: advice wanted
in thread decoupling processes via queues: advice wanted

I believe it is a good idea.

It might be a great idea but I cannot judge that based on the information you provide. I donít know what the Perl scripts are doing and why they communicate. I would just like to say that not all synchronous communication can be changed to asynchronous.

In general asynchronous messaging allows for more parallelism because of the non-blocking nature but it also introduces issues like what happens if a message cannot be delivered? Or maybe the receiver needs to return some transaction id to the sender? etc.

I have seen home grown messaging middleware developed at a time when messaging products were not available. Nowadays I would take an existing product rather than reinventing wheels. Dedicated Message Oriented Middleware normally takes care of much of the complexity.

If Oracle AQ is available at no extra cost why not give it a try? I read up on Oracle AQ, and it is implemented in database tables (your option 3).

Cheers,
dHarry

  • Comment on Re^3: decoupling processes via queues: advice wanted

Replies are listed 'Best First'.
Re^4: decoupling processes via queues: advice wanted
by morgon (Priest) on Apr 20, 2009 at 09:31 UTC
    It might be a great idea but I cannot judge that based on the information you provide.
    Let's just assume it is for the sake of the argument (this posting is not about philosophical discussions on whether or not queuing systems are a good idea but about advice on how to do it assuming you want one).

    If Oracle AQ is available at no extra cost why not give it a try?
    Well I have been bitten before with technology that did not cost anything extra and looked cool but then created issues for us further down the road. I don't have the time to evaluate for months.

    I read up on Oracle AQ, and it is implemented in database tables.
    Heck I know that.

    Why points 3 and 4 differ is that Oracle has built a queuing middleware on top of it's database but there seem to be only APIs in PL/SQL and Java. This means that when you want to use if from Perl you would have to use PL/SQL via DBI/DBD::Oracle. This of course can be done but I have never met anyone that did it (interestingy there does not seem to be a single posting on this site pertaining to AQ).

    So anyone with specific experience on Oracle Advanced Queueing I would like to hear from you...

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://758642]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others meditating upon the Monastery: (3)
As of 2023-02-05 11:39 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    I prefer not to run the latest version of Perl because:







    Results (31 votes). Check out past polls.

    Notices?