Performance Tuning for Oracle WebCenter Content 11g - Fishbowl ...
Performance Tuning for Oracle WebCenter Content 11g - Fishbowl ...
Performance Tuning for Oracle WebCenter Content 11g - Fishbowl ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
IDOC script includes can be cached, so the html will be dynamically rendered and then placed in session scope <strong>for</strong> a<br />
specific user or application scope <strong>for</strong> all users. The cacheInclude method takes the include name, scope, and life<br />
span as required parameters. For example, the std_page_begin include would be cached <strong>for</strong> ten minutes <strong>for</strong> each<br />
user.<br />
<br />
<strong>11g</strong> continues to lack a default success status code or message returned with all services. <strong>Content</strong> Services<br />
typically indicate an error by setting StatusCode property to a non-zero number. CIS, RIDC, and several other<br />
integration methods will potentially throw an exception when there are problems, but will absolutely throw an<br />
exception if you look <strong>for</strong> the StatusCode property and it is missing. One can either trust the service will throw an<br />
exception and assume it works, or modify the content server to set a default success status code.<br />
Reverse Proxy<br />
When architecting a website <strong>for</strong> high per<strong>for</strong>mance using Webcenter <strong>Content</strong>, a reverse proxy can be used to<br />
improve both per<strong>for</strong>mance and security <strong>for</strong> your site. A reverse proxy functions as a gateway to your network and<br />
adds an additional layer of caching <strong>for</strong> site visitors that will help to improve page response time, particularly under<br />
heavy load.<br />
Typically, a reverse proxy will reside in the DMZ of your network and will be the entry point <strong>for</strong> users accessing your<br />
site. The standard process flow <strong>for</strong> a user accessing a site behind a reverse proxy is as follows:<br />
1. A user enters http://www.mysite.com in a browser.<br />
2. DNS directs the user to the reverse proxy server that is sitting in your DMZ.<br />
3. The reverse proxy determines if the request is being made <strong>for</strong> static content or dynamic content.<br />
4. If static content is being requested, the reverse proxy will check its cache and will return the cached page to<br />
the user if the page is found in the cache.<br />
5. If dynamic content is being requested or if the reverse proxy does not have the page in its cache, it will send<br />
a request through the firewall to a web server inside your network to retrieve the requested page and will<br />
return that page to the user.<br />
The per<strong>for</strong>mance gains from caching at the reverse proxy level are obviously contingent on a number of factors<br />
including the number of static resources and pages that users are requesting, the frequency at which those items<br />
are accessed, and the hardware-network infrastructure that is being used. One popular reverse caching application,<br />
Varnish Cache, claims to improve delivery by a factor of 300 – 1000x depending on architecture when serving a<br />
page from cache (www.varnish-cache.org),.<br />
Besides the caching advantage of this model, your site also gains an additional level of security by implementing a<br />
reverse proxy. All requests that are made to your site are being filtered through the remote proxy server, which<br />
limits an end-user from distinguishing server names or other network architecture in<strong>for</strong>mation that could<br />
potentially be used to compromise your systems. Additionally, there is only a single entry point through your<br />
firewall, namely between your proxy server and your web server, so network administrators have considerably more<br />
control over limiting the traffic that is allowed past the firewall.<br />
© 2012. <strong>Fishbowl</strong> Solutions, Inc.