Main > Free Download Search >

Free pubsub software for linux

pubsub

Sponsored Links
Sponsored Links
Sort by >> Relevance
rss
Secleted [ 0 ] software to compare
Results 1 - 15 of about 5
IPC::PubSub 0.22

IPC::PubSub 0.22


IPC::PubSub is Perl module for Interprocess Publish/Subscribe channels. more>>
IPC::PubSub is Perl module for Interprocess Publish/Subscribe channels.

SYNOPSIS

# A new message bus with the DBM::Deep backend
# (Other possible backends include Memcached and PlainHash)
my $bus = IPC::PubSub->new(DBM_Deep => /tmp/pubsub.db);

# A channel is any arbitrary string
my $channel = #perl6;

# Register a new publisher (you can publish to multiple channels)
my $pub = $bus->new_publisher("#perl6", "#moose");

# Publish a message (may be a complex object) to those channels
$pub->msg("This is a message");

# Register a new subscriber (you can subscribe to multiple channels)
my $sub = $bus->new_subscriber("#moose");

# Publish an object to channels
$pub->msg("This is another message");

# Set all subsequent messages from this publisher to expire in 30 seconds
$pub->expiry(30);
$pub->msg("This message will go away in 30 seconds");

# Simple get: Returns the messages sent since the previous get,
# but only for the first channel.
my @msgs = $sub->get;

# Simple get, with an explicit channel key (must be among the ones
# it initially subscribed to)
my @moose_msgs = $sub->get("#moose");

# Complex get: Returns a hash reference from channels to array
# references of [timestamp, message].
my $hash_ref = $sub->get_all;

# Changing the list of channels we subscribe to
$sub->subscribe(some-other-channel);
$sub->unsubscribe(some-other-channel);

# Changing the list of channels we publish to
$pub->publish(some-other-channel);
$pub->unpublish(some-other-channel);

# Listing and checking if we are in a channel
my @sub_channels = $sub->channels;
my @pub_channels = $pub->channels;
print "Sub is in #moose" if $sub->channels->{#moose};
print "Pub is in #moose" if $pub->channels->{#moose};

# Raw cache manipulation APIs (not advised; use ->modify instead)
$bus->lock(channel);
$bus->unlock(channel);
my @timed_msgs = $bus->fetch(key1, key2, key3);
$bus->store(key, value, time, 30);

# Atomic updating of cache content; $_ is stored back on the
# end of the callback.
my $rv = $bus->modify(key => sub { delete $_->{foo} });

# Shorthand for $bus->modify(key => sub { $_ = val });
$bus->modify(key => val);

# Shorthand for $bus->modify(key => sub { $_ });
$bus->modify(key);

This module provides a simple API for publishing messages to channels and for subscribing to them.

When a message is published on a channel, all subscribers currently in that channel will get it on their next get or get_all call.

Currently, it offers three backends: DBM_Deep for on-disk storage, Memcached for possibly multi-host storage, and PlainHash for single-process storage.

Please see the tests in t/ for this distribution, as well as "SYNOPSIS" above, for some usage examples; detailed documentation is not yet available.

<<less
Download (0.019MB)
Added: 2007-02-14 License: MIT/X Consortium License Price:
983 downloads
libpubsub 0.5.1

libpubsub 0.5.1


libpubsub provides everything to setup a simple publish/subscribe environment. more>>
libpubsub provides everything to setup a simple publish/subscribe environment.
If you are looking for a way to let several processes (not necessarily on the same host) exchange information with each other in a very easy (read at the moment: simple) way, libpubsub may interest you!
The main target is the usage in C++ applications. The package includes a tool to let even shell scripts get in touch with pubsub.
Enhancements:
- the client is able to read the message broker address from the environment variable PUBSUB_BROKER
- added conversion routines between binary data and hexadecimal strings
- added support for very large messages over TCP
- several minor bugfixes and cosmetic changes
- embedded users guide into doxygen generated docs
<<less
Download (0.60MB)
Added: 2006-01-18 License: Artistic License Price:
1374 downloads
Smack PubSub Extensions 1.2

Smack PubSub Extensions 1.2


Smack PubSub Extensions is a set of extensions to smack. more>>
Smack PubSub Extensions is a set of extensions to smack.

The extensions mainly include support for JEP-0060 aka PubSub but there are also a few utitlity classes. Please refer to the maven-generated documentation for further information.

<<less
Download (0.031MB)
Added: 2006-09-11 License: BSD License Price:
1143 downloads
PubSubHubbub_Publisher 1.0

PubSubHubbub_Publisher 1.0


A simple, open, web-hook-based pubsub protocol & open source reference implementation more>>

PubSubHubbub_Publisher 1.0 is yet another excellent utility for everyone. It is actually a simple, open, server-to-server web-hook-based pubsub (publish/subscribe) protocol as a simple extension to Atom.

Parties (servers) speaking the PubSubHubbub protocol can get near-instant notifications (via webhook callbacks) when a topic (Atom URL) they're interested in is updated.

This tool works as follow:

  1. An Atom URL (a "topic") declares its Hub server(s) in its Atom XML file, via . The hub(s) can be run by the publisher of the Atom, or can be a community hub that anybody can use.
  2. A subscriber (a server that's interested in a topic), initially fetches the Atom URL as normal. If the Atom file declares its hubs, the subscriber can then avoid lame, repeated polling of the URL and can instead register with the feeds hub(s) and subscribe to updates.
  3. The subscriber subscribes to the Topic URL from the Topic URLs declared Hub(s).
  4. When the Publisher next updates the Topic URL, the publisher software pings the Hub(s) saying that there's an update.
  5. The hub efficiently fetches the published feed and multicasts the new/changed content out to all registered subscribers.
  6. The protocol is decentralized and free. No company is at the center of this controlling it. Anybody can run a hub, or anybody can ping (publish) or subscribe using open hubs.
  7. To bootstrap this, the publisher has provided an open source reference implementation of the hub (the hard part of the protocol) that runs on Google App Engine, and is open for anybody to use.

Requirements:

  • Python
<<less
Added: 2009-05-18 License: The Apache License 2.0 Price: FREE
13 downloads
Tsung 1.2.0

Tsung 1.2.0


Tsung (formerly known as IDX-Tsunami) is a distributed load testing tool. more>>
Tsung (formerly known as IDX-Tsunami) is a distributed load testing tool. Tsung is protocol-independent and can currently be used to stress HTTP and Jabber servers.
It simulates user behaviour using an XML description file, reports many measurements in real time (statistics can be customized with transactions, and graphics generated using gnuplot).
For HTTP, it supports 1.0 and 1.1, has a proxy mode to record sessions, supports GET and POST methods, Cookies, and Basic WWW-authentication. It also has support for SSL.
Main features:
- High Performance: the load can be distributed on a cluster of client machines
- Multi-protocols using a plugin system: HTTP, SOAP and Jabber are currently supported. SSL is also supported.
- Several IP addresses can be used on a single machine using the underlying OS IP Aliasing
- OS monitoring (CPU, memory and network trafic) using SNMP or Erlang agents on remote servers.
- XML configuration system; several sessions can be used to simulate differents type of users. Dynamic sessions can be easily described in XML (this can be used to retrieve at runtime an ID from the server output and use it later in the session).
- In order to generate a realistic trafic, user thinktimes and the arrival rate can be randomize using a probability distribution (exponential currently)
- HTML reports can be generated during the load to view response times measurement, server CPU, etc.
HTTP
- HTTP/1.0 and HTTP/1.1 support
- GET and POST requests
- Cookies are automaticaly handled
- GET If-modified since type of request
- WWW-authentication Basic
- Proxy mode to record sessions using a Web browser.
- Basic support for SOAP using the HTTP mode (the SOAPAction HTTP header is handle).
Jabber
- Authentication, presence and register messages
- Chat messages to online or offline users
- Roster set and get requests
- Global users synchronisation can be set on specific actions
PostgreSQL
- Authentication (password)
- Basic Queries
Enhancements:
- The project is now called Tsung (previously it was IDX-Tsunami).
- A plugin for PostgreSQL is now available, many enhancements for Jabber were added (improved roster and presence, new pubsub), and more.
<<less
Download (0.38MB)
Added: 2006-06-02 License: GPL (GNU General Public License) Price:
1241 downloads
Secleted [ 0 ] software to compare
  • Page: 1 of 1
  • 1