PG-MQ?

Поиск
Список
Период
Сортировка
От Chris Browne
Тема PG-MQ?
Дата
Msg-id 60ir9jd3f7.fsf@dba2.int.libertyrms.com
обсуждение исходный текст
Ответ на HELP all women were raped during the May riots in Jakarta  (adm@pu.go.id)
Ответы Re: PG-MQ?  (Steve Atkins <steve@blighty.com>)
Re: PG-MQ?  ("Jeroen T. Vermeulen" <jtv@xs4all.nl>)
Re: PG-MQ?  (Markus Schiltknecht <markus@bluegap.ch>)
Список pgsql-hackers
I'm seeing some applications where it appears that there would be
value in introducing asynchronous messaging, ala "message queueing."
<http://en.wikipedia.org/wiki/Message_queue>

The "granddaddy" of message queuing systems is IBM's MQ-Series, and I
don't see particular value in replicating its functionality.

On the other side, the "big names" these days are:

a) The Java Messaging Service, which seems to implement *way* more  options than I'm even vaguely interested in having
(notably,lots  that involve data stores or lack thereof that I do not care to use);
 

b) AMPQ  <http://en.wikipedia.org/wiki/Advanced_Message_Queuing_Protocol> which  again is a big, complex,
protocol-orientedthing that seems mighty big  and complex;
 

c) There are lesser names, like isectd <http://isectd.sf.net> and the
(infamous?) Spread Toolkit which both implement memory-based messaging
systems.

There's a simple + free system called MQS that is implemented in Perl
and uses XML-RPC; <http://www.foo.be/mqs/> that seems perhaps a little
*too* primitive.

FYI, here's its simple schema (filtered into PG):

create table mqname ( name varchar (255) not null default '', id serial, priority integer not null default 10, primary
key(id));
 

create table message ( id serial, timestamp timestamptz NOT NULL cid varchar(255), queue integer not null references
mqname(id),body text not null, priority integer not null default 10, flag integer default 0, primary key(id)
 
);

My bias would be to have something that can basically run as a thin
set of stored procedures atop PostgreSQL :-).  It would be trivial to
extend that to support SOAP/XML-RPC, if desired.

It would be nice to achieve 'higher availability' by having queues
where you might replicate the contents (probably using the MQ system
itself ;-)) to other servers.

There tend to be varying semantics out there:

- Some queues may represent "subscriptions" where a whole bunch of listeners want to get all the messages;

- Sometimes you have the semantics where: - messages need to be delivered at least once - messages need to be delivered
nomore than once - messages need to be delivered exactly once
 

Is there any existing work out there on this?  Or should I maybe be
looking at prototyping something?
-- 
(format nil "~S@~S" "cbbrowne" "linuxfinances.info")
http://linuxfinances.info/info/lsf.html
Q: How many Newtons does it take to change a light bulb?
A: Faux!  There to eat lemons, axe gravy soup!


В списке pgsql-hackers по дате отправления:

Предыдущее
От: Heikki Linnakangas
Дата:
Сообщение: Re: Maximum reasonable bgwriter_delay
Следующее
От: Steve Atkins
Дата:
Сообщение: Re: PG-MQ?