from where I am sitting, sounds like the project doesn't have enough
information to make a good decision. Why move from MML/TCP to
VXML/HTTP?

if you read my performance article on the resources page, XML is very
CPU and memory intensive. Even with XStream java-xml binding library,
handling moderate concurrent load will easily consume 100% of the CPU.
 if you're serious about using VXML/HTTP, you're going to have to use
some kind of hardware acceleration to get wire speed.

even without implementing a single line of code, I can tell you right
now it is going to be really hard scaling VXML/HTTP to handle 50
concurrent streams. On a 3ghz cpu, 30 concurrent stream will consume
100% of the CPU. With a 2.4ghz CPU, 10-15 concurrent xml parsers will
consume 60-75% of the CPU regardless of the platform. it doesn't
matter if you write it in C#, C++, C or Java.  I keep a pretty close
watch on XML technology and most of the parsers today are about the
same. the differences are not significant to me.

given the primary limitation is CPU consumption, your options for
application server should be based on reliability, maturity and
toolset. If J2EE provides the features and scalability you need, then
use it. If writing your own application server in C++ is the best
option, then find two guys who have 10 years of experience writing
high performance app servers.

I would guess using servlets/jsp is the least of your concerns at this
point. Until you have the VXML driver written and know it's
performance characteristics, any decision on app server will be
premature. You may want to look at Xml Pull Parser3, XStream, Jixb,
XBis and the new xml stream parser.

do a quick implementation for VXML and see what kind of performance
you get. if that is sufficient, you can move on. otherwise, you may
have to write a highly optimized VXML parser in C using a finite state
machine of some sort. good luck

peter


On Thu, 8 Jul 2004 18:19:23 -0700, Darshan Rawal <[EMAIL PROTECTED]> wrote:
> We implement a Messaging PLatform for Voice Applications.
> Our current platform has 2 Major Components as shown below:-
> 
> Media Server <--- MML/TCP-IP ---> Application Server.
> 
> We want to move to a new architecture for our Application Server where
> the interaction between App Server and Media Server is as shown
> below(i.e. based on VXML over HTTP)
> 
> Media Server <--- VXML/HTTP ---> Application Server.
> 
> To achieve this goal we need to implement an "VXML Document Server",
> which will generate VXML
> (Voice XML) pages based on the business logic & Data access layers
> within the Application server.
> 
> We have 2 options to implement the VXML document Server:-
> 
> 1) USing the J2EE presentation tier(i.e. JSP & Servlets)
> 2) Writing our own VXML generation module in C++ based(probably based
> on the JAVA Servlet paradigm).
> 
> Our Factors while deciding between the 2 would be as follows:-
> 
> 1) Performance(This is the key for us, we ezpecially need to know
> exactly how slow JAVA is as Compared to C++)
> 2) Integration with our Business logic & Data Access Layers.(All our
> business logic & data access is written in C/C++. Hence if we chose
> JAVA, then we might have to use JNI or make use of TCP/IP to
> communicate with our different Processes written in C/C++)
> 3) Ease of Future Change(We want to develop new Application Features
> Quickly & fast).
> 4) Fast & better Development environment.
> 
> I am a proponent of the use of Tomcat Servlet Container and hence the
> use of J2EE front end for our module. But I was hoping to get some
> pointers from you all, just in case somebody might have implemented
> something similiar or might just have some inputs nevertheless.
> 
> We are in a time crunch here, as we have to make a decision by next Monday end.
> 
> Thanks in advance.
> 
> Regards,
> 
> Darshan.
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to