Hi Raymond,

 

Thank you for your concern. Here is the information:

I'm building a demo just to test performance among SCA, BPM and our legacy
code. In order to decide to use SCA or not for our next-gen enterprise
system.

1.       I have a Stock Transfer web application which does the following
things:

-          Subtract the quantity of products from the source stock (Stock
table)

-          Add the quantity of products into the target stock (Stock table)

-          Create an importing product order if the product in the source
stock is too low (StockOrder table)

-          Change the sale quota of the show that manages the target stock.
(ShopQuota table)

-          Generate a stock transfer transaction (StockTrans table)

The legacy code(java), SCA service (2.0) and JBpm (5.1) process is a part of
the web application (struts2 + tiles). The database is Oracle 10g. The web
server is apache-tomcat-7.0.27

 

a)      The legacy code is very simple, uses hibernate + c3p0, call all the
work in a sequence order.

b)      The SCA: the web application has only one web.composite, contains 4
Component for each work (work 1st and 2nd is the same)

Each component was implemented by a java class which call the correlative
legacy code.

Each one expose a web service for JBpm through binding.ws

c)      The BPM: create 4 handlers to manipulate 4 web service above, the
handlers use HttpClient (apache common-httpclient) to acquire the fastest
way when call web service

 

2.       Except the database server, the web server and test environment are
on one PC. The database server is in the same Local network with the PC.

3.       I kept the default Tomcat configuration. (CATALINA_OPTS="-Xms128m
-Xmx512m -XX:MaxPermSize=256m"

 

I know placing both Web server and Test environment in a PC is not ok. But
at least the SCA should be as good as the legacy code (slower 15-30%), but
it took 2-4 times.

        
Concurrent request

10

20

50


Web

Min (ms)

215

215

537


Max (ms)

283

1880

3972


Avg (ms)

259

753

2486


Error (%)

0%

0%

0%


SCA

Min

356

528

1940


Max

870

3726

15136


Avg

656

2932

8520


Error (%)

0%

0%

0%


BPM

Min

529

724

2694


Max

1954

3268

11889


Avg

1304

2509

10229


Error (%)

0%

0%

0%

 

Could you please share one of your system architecture which use Tuscany
heavily without performance issues? That would be a great help.

.

Best regards

 

From: Raymond Feng [mailto:[email protected]] 
Sent: Monday, August 20, 2012 11:11 PM
To: [email protected]
Subject: Re: Tuscany SCA 2.0 web application performance is terrible

 

Hi,

 

Th title is really scary :-(

 

Can you provide more information for your test?

 

1. What does your SCA service do?

2. Can you do some profiling to find out where the bottleneck is? There
might be many factors, such as Network, Memory settings, Tomcat connection
settings, Service implementation.

3. What's your Tomcat configuration? (How many concurrent
threads/connections allowed?)

 

The key is to understand how much overhead that Tuscany introduces into your
app.

 

We use Tuscany quite heavily and never have performance issues.

 

Thanks,

Raymond

 

On Aug 20, 2012, at 3:02 AM, binhnt22 wrote:





Hi all,

I have a web application that uses Tuscany SCA 2.0 running on Tomcat 7
-(Xms128m -Xmx512m -XX:MaxPermSize=512m)

So far everything seems to be ok until I tried to carry on a performance
test.

Using Jmeter 2.7, request directly to the servlet that call SCA service.

With 10 and 20 requests were ramed in 1 sec, the performance look promising.
But with 50 requests in 1 sec, the response time was so terrible, not
mention 100 or 200 request in 1 sec.

Did anyone face that problem? Any suggestion or solutions will be
appreciated.

Thasnk & Best regards,

 

Reply via email to