28.06.2014 Views

Performance Tuning Siebel Software on the Sun Platform

Performance Tuning Siebel Software on the Sun Platform

Performance Tuning Siebel Software on the Sun Platform

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.

On <strong>the</strong> <str<strong>on</strong>g>Siebel</str<strong>on</strong>g> applicati<strong>on</strong>s server, go into <strong>the</strong> Oracle client installati<strong>on</strong> and delete (or<br />

rename) <strong>the</strong> tnsnames.ora and sqlnet.ora files. You no l<strong>on</strong>ger need <strong>the</strong>se as<br />

Oracle now c<strong>on</strong>nects to <strong>the</strong> database by resolving <strong>the</strong> name from <strong>the</strong> /etc/hosts file.<br />

As root edit <strong>the</strong> file /etc/hosts <strong>on</strong> <strong>the</strong> client machine (that is, <strong>the</strong> <str<strong>on</strong>g>Siebel</str<strong>on</strong>g> applicati<strong>on</strong>s<br />

server in this case) and add an entry like <strong>the</strong> following:<br />

<br />

oramst.dbserver<br />

The name oramst.dbserver should be whatever you have provided as <strong>the</strong><br />

GLOBAL_DBNAME in <strong>the</strong> listener .ora file. This becomes <strong>the</strong> c<strong>on</strong>nect string to c<strong>on</strong>nect to<br />

this database from any client.<br />

7.6.11 High I/O with Oracle Shadow Processes C<strong>on</strong>nected to <str<strong>on</strong>g>Siebel</str<strong>on</strong>g><br />

The disk <strong>on</strong> which Oracle binaries were installed was close to 100% occupied during <strong>the</strong><br />

peak load of 1000 c<strong>on</strong>current users. This problem was diagnosed to be <strong>the</strong> well-known<br />

oraus.msb problem. On Oracle clients that make use of OCI (Oracle Call Interface), <strong>the</strong><br />

OCI driver makes thousands of calls to translate messages from <strong>the</strong> oraus.msb file.<br />

This problem has been documented by Oracle under bug ID 2142623.<br />

The <strong>Sun</strong> workaround for this problem is to cache <strong>the</strong> oraus.msb file in memory and<br />

translate <strong>the</strong> file access and system calls to user calls and memory operati<strong>on</strong>s. The<br />

caching soluti<strong>on</strong> is dynamic, and code changes are not needed. With <str<strong>on</strong>g>Siebel</str<strong>on</strong>g> this<br />

workaround helped in reducing <strong>the</strong> calls. The 100% occupied I/O went away and a 4%<br />

reducti<strong>on</strong> in CPU was observed. also, <strong>the</strong> resp<strong>on</strong>se times for transacti<strong>on</strong>s got a 11%<br />

boost.<br />

This problem is supposed to have been fixed in Oracle 9.2.0.4. Details <strong>on</strong> how to<br />

implement <strong>the</strong> <strong>Sun</strong> workaround by LD_PRELOAD of an interpose library are available at<br />

http://developers.sun.com/solaris/articles/oci_cache.html.<br />

7.7 <str<strong>on</strong>g>Siebel</str<strong>on</strong>g> Database C<strong>on</strong>necti<strong>on</strong> Pooling<br />

The database c<strong>on</strong>necti<strong>on</strong> pooling feature built into <strong>the</strong> <str<strong>on</strong>g>Siebel</str<strong>on</strong>g> server software provides<br />

better performance. A users:database c<strong>on</strong>necti<strong>on</strong> ratio of 20:1 has been proven to<br />

provide good results with <str<strong>on</strong>g>Siebel</str<strong>on</strong>g>7.5/Oracle9202. This reduced about 3% CPU at <strong>the</strong><br />

<str<strong>on</strong>g>Siebel</str<strong>on</strong>g> server, as fewer c<strong>on</strong>necti<strong>on</strong>s were made from <str<strong>on</strong>g>Siebel</str<strong>on</strong>g> server to database during a<br />

2000 user Call Center test. <str<strong>on</strong>g>Siebel</str<strong>on</strong>g> memory/user was 33% lower and Oracle memory/user<br />

was 79% lower, because 20 <str<strong>on</strong>g>Siebel</str<strong>on</strong>g> users share <strong>the</strong> same Oracle c<strong>on</strong>necti<strong>on</strong>.<br />

<str<strong>on</strong>g>Siebel</str<strong>on</strong>g> an<strong>on</strong>ymous users do not use c<strong>on</strong>necti<strong>on</strong> pooling. If <strong>the</strong> an<strong>on</strong>user count is set<br />

too high (that is, higher than <strong>the</strong> recommended 10 to 20%) you would end up wasting <strong>the</strong><br />

tasks, as MaxTasks is a number inclusive of real users. Also <strong>the</strong> an<strong>on</strong> sessi<strong>on</strong>s do not<br />

<str<strong>on</strong>g>Performance</str<strong>on</strong>g> <str<strong>on</strong>g>Tuning</str<strong>on</strong>g> <str<strong>on</strong>g>Siebel</str<strong>on</strong>g> <str<strong>on</strong>g>Software</str<strong>on</strong>g> <strong>on</strong> <strong>the</strong> <strong>Sun</strong> <strong>Platform</strong> Page 54

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

Saved successfully!

Ooh no, something went wrong!