[JDEV] Jabber as Application Middleware

Lance Pyzr pyzr at pyzr.com
Tue Mar 6 11:24:38 CST 2001


Around June/July of last year, i had started (now its really no longer under
development) the Mantis project. It consisted of an embedded protocol that
allowed for application level communication. It had message queueing,
supscription methods for security, and special security levels. I dubbed it
the jabber:mantis protocol. The plan for this protocol/framework was to
replace the current backend software i had made for pyzr.com (at the time it
was a really big site). The framework would allow mantis clients to interact
with the backend software from anywhere outside the network. Since the
beginning of this month, i have been toying with this concept again, and ive
been calling it the pyzr.web framework (no relation to .net.. hehe). I am
solely developing this for my own purposes, along with the protocol. But i
am interested in seeing what other people's ideas are also.

-pyzr
email/jid:
pyzr at pyzr.com

-----Original Message-----
From: jdev-admin at jabber.org [mailto:jdev-admin at jabber.org]On Behalf Of
Dave Smith
Sent: Tuesday, March 06, 2001 11:38 AM
To: jdev at jabber.org
Subject: Re: [JDEV] Jabber as Application Middleware


On Mon, Mar 05, 2001 at 01:19:34PM -0600, eric at openthought.net wrote:
Eric,

This is exactly the subject I have been interested in of late, and
have start investigating in a serious manner.. I've taken a first
stab at gathering requirements for just such a project:

http://dizzyd.manilasites.com/stories/storyReader$15

Please feel free to discuss/flame any futher requirements
that you have. :)

> 1. Is Jabber currently up to this type of usage?

Yes, I believe it is. The architecure has solified into something
which would promote just such a usage.

> 2. What protocol would be the recommended method of handling the style of
query
> I mentioned?  Some ideas I had were embedding a CORBA message within the
IM
> that the applications send to each other.  The same could probably be done
with
> XML-RPC.  However, is there a method already in use for a task like this
in
> Jabber?  And if not, is there a better method then CORBA/XML-RPC?

Well, I'm investigating the use of XMLRPC and/or SOAP. Either one would be
good -- tho I tend to lean towards XMLRPC.

> 3. Speed -- upon proposing a system like this, the first question my boss
asked
> was what kind of performance hit were we going to take for having a
distributed
> system.  The web based system isn't really the issue, it's the internal
one.
> Currently, users are able to use their up and down arrow keys to scroll
through
> a list of names.  Every time they hit the down arrow key, it grabs a list
of
> data for that particular person from the database.. meaning every action
they
> do requires a full round trip to and from the DB.  Since there are almost
a
> million records, grabbing every entry at once isn't an option.  Is it a

Well, Jabber _does_ use XML -- and that's gonna inflict a little bit of
added
processing time for each packet. However, the j.org's server can handle up
to 500 msgs/sec (benchmarked back in December) so that should be fast enough
for what you need. Of note, j.com's implementation of the server handles
thousands of msgs/sec. All that aside, I would also question whether
retrieving
a full record for every keystroke is the optimial setup -- so with a few
optimizations on your system, it's totally possible that using Jabber could
be as fast as using something more estoric like CORBA/COM.

> 4. Just to have some comparisons, what are your opinions on why a system
like
> this using Jabber would be better then something like Oracle Application
> Server, xmlBlaster, and other such products?  And if Jabber isn't the
right
> tool here, what is?

Well, I'm not familiar with those other products. Perhaps the biggest
advantages
that Jabber would bring would be:
 * Cost -- it's free! :)
 * Ease-of-use -- the protocl is fairly simple and can be read by a human;
no
                  weird IDL compilers or binary syntax/protocol to deal with


Again, I truly believe a sub-project should start gathering requirements and
working towards utilizing Jabber just for such an application. Please take a
look at what I've started and let's see if we can build a nice big snowball.
:)

Diz

_______________________________________________
jdev mailing list
jdev at jabber.org
http://mailman.jabber.org/listinfo/jdev





More information about the JDev mailing list