First of all, congratulations for bringing such a nice development to the open
source community.
In order to evaluate the performance of xmlblaster in replacement of an
off-the-shelf product, I modified the HelloWorld.c demo into a simple C client
generating publishOneway as fast as it can .
The client only takes 1.2% of the CPU time on an old HP-UX machine (PA8500 2.0
300 Mhz).
Here is an extract of the client:
for (i=0; i< 10000; i++)
{
xb->publishOneway(xb, &msgUnitArr, &exception);
if (*exception.errorCode != '\0')
{
printf("[HelloWorld] Caught exception in publish errorCode=%s,
message=%s\n",
exception.errorCode, exception.message);
freeXmlBlasterConnectionUnparsed(xb);
exit(1);
}
}
The server rel 1.0.2 runs on a Pentium 4 at 1.2 GHz with JRE 1.4.2_03.
There is no subscription pending.
By using sockets, I was expecting better results than with CORBA
(http://www.xmlblaster.org/performance.html) and obtained a throughput of 400
messages / seconds.
The limit is not the network as the server takes 99% of the CPU time.
When using the standard publish method, the throughput is 310 messages/s.
a) Am I doing something wrong ?
b) Should we expect improvement of throughput in future releases ?
c) Any plan for writing a high performance version of the server in C++ ?
Thanks,
Yves Claereboudt
DISCLAIMER :
The contents of this e-mail message and any attachments are intended solely for
the addressee(s) named in this message. This communication is intended to be
and to remain confidential and may be subject to applicable work product
privileges. Please notify the sender immediately by e-mail if you have received
this e-mail by mistake and delete this e-mail from your system. E-mail
transmission cannot be guaranteed to be secure or error-free as information
could be intercepted, corrupted, lost, destroyed, arrive late or incomplete, or
contain viruses. Ion Beam Applications therefore does not accept liability for
any errors or omissions in the contents of this message, which arise as a
result of e-mail transmission.