20.11.2014 Views

Capacity Planning of SOA-Based Systems - Service Technology ...

Capacity Planning of SOA-Based Systems - Service Technology ...

Capacity Planning of SOA-Based Systems - Service Technology ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>SOA</strong> in the Telco Domain<br />

Part II: <strong>Capacity</strong> <strong>Planning</strong> <strong>of</strong> <strong>SOA</strong>-<strong>Based</strong> <strong>Systems</strong><br />

<strong>Service</strong> <strong>Technology</strong> Magazine (Issue LIV , September 2011)<br />

have a performance test result <strong>of</strong> service-X as given in table 2 below for processing unit usage and we are<br />

using 150 tps with 2 instances as we concluded from previous example.<br />

NO<br />

# Load<br />

(tps)<br />

Response<br />

Time (ms)<br />

& Increase Form<br />

1 2 3 4<br />

1 100 1200<br />

2 150 1250 4.17%<br />

3 200 2300 91.67% 84.00%<br />

4 250 3210 167.50% 156.80% 39.57%<br />

5 300 4000 233.33% 220.00% 73.91% 24.61%<br />

Table 2 – <strong>Service</strong>-X Processing Unit Usage<br />

In this the production environment, when the service runs and reaches 150 tps on load, it will give 2.75%<br />

extra for each instance on the platform processing unit. For example, the current condition <strong>of</strong> our platform<br />

still uses only 40% <strong>of</strong> the processing unit (on peak period). So it still safe to run two instances <strong>of</strong> service-X<br />

on the platform.<br />

This baseline data can also be useful when we need to do projection planning. Projection planning is<br />

important in making management decisions in regards to the expansion <strong>of</strong> the platform, both horizontally<br />

and vertically. This way they can overcome future events (like Idoel Fitri, Christmas Eve, New Year, etc.).<br />

2. Memory - is used by the services to store data when transactions run, and more is released when the<br />

transaction is finished. In some cases memory leakage can also happen. Whenever memory leakage<br />

happens, a service cannot release all the memory resources back to the platform. This is because <strong>of</strong> the<br />

quality <strong>of</strong> service implementation code on object management. So, whenever we want to put a service in<br />

production we need to make sure that all the services are free from memory leakage problem. This way it<br />

will not disturb our production runtime environment.<br />

Unlike the processing unit, to determine how much memory is needed by the services, we will need to<br />

do an estimation from the services activity process itself. For example, figure 1 describes the five main<br />

activities service-X contains.<br />

Copyright © Arcitura Education Inc. 3 www.servicetechmag.com

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!