Setting Expiry Date on Static Components for Improving Performance

Objective:To improve the performance of the Siebel Application and reduce the load on the Web Server.
 
Problem / Analysis:  The “start.swe” component is the one that has all the data for building any Siebel page. The remaining components are the static components (that is the .gif and .js) that are used for building the Web Page. When a request for a Web page is made, the IE send the request for these components to the web server. However, when to request for a component and when not to, depends on the IE setting as shown below.
 
 
When the setting is “Automatically”, IE will check for the static components in the cache. If it is not found in the cache, the IE will send a request for the static component to the Web Server and the Web server will send the latest copy of that component. The status for such a transaction will be “200 OK” as seen in the trace plus results above. However If the static component is found in the cache, it checks for the expiry date on that static component. If the expire date is not set on these static component, then IE will send a request for those to the Web Server and will generally return a status “304 Not Modified”. This means that the component that is present in the cache is the latest copy and can be used for building the Web Page. If the expiry date is set on the static component and the expiry date is after the system date, when it is requested, then IE will use that component from the cache and won’t send the request for the component to the Web Server.
 
Tools used:The tool “Trace Plus” is used to monitor the components that are requested by the Siebel Application for building the Web page. A sample Object Summary of the tool when the “Recruit Summary View” tab is clicked is shown below. 
Finished
Summary
Name
Requested
Delta
Relative
Size
Elapsed
Bits/Sec
Status
10:02:08.642
 
start.swe
10:02:07.420
1.223
0
9341
1.223
61102.208
200 OK
10:02:08.742
+
buscomp_action.js
10:02:08.652
1.323
1.233
0
0.091
0
304 Not Modified
10:02:08.742
=
(Summary)
10:02:07.420
1.323
1.323
9341
1.323
56483.749
 
10:02:09.193
 
start.swe
10:02:08.802
0.392
1.383
771
0.392
15734.694
200 OK
10:02:09.453
+
arw_bck_1_d.gif
10:02:09.283
0.652
1.864
0
0.171
0
304 Not Modified
10:02:09.573
+
arw_fwd_0_d.gif
10:02:09.283
0.772
1.864
0
0.291
0
304 Not Modified
10:02:09.573
=
(Summary)
10:02:08.802
0.772
2.154
771
0.772
7989.637
 
10:02:09.293
 
start.swe
10:02:08.802
0.492
1.383
6393
0.492
103951.22
200 OK
10:02:09.643
+
main.css
10:02:09.293
0.842
1.874
0
0.351
0
304 Not Modified
10:02:09.763
+
swecommon.js
10:02:09.673
0.962
2.254
0
0.091
0
304 Not Modified
10:02:09.874
+
swecmn_hi.js
10:02:09.783
1.073
2.364
0
0.092
0
304 Not Modified
10:02:09.984
+
view_vb.js
10:02:09.884
1.183
2.465
0
0.101
0
304 Not Modified
10:02:10.314
+
check.gif
10:02:10.234
1.513
2.815
0
0.081
0
304 Not Modified
10:02:10.314
=
(Summary)
10:02:08.802
1.513
2.895
6393
1.513
33803.04
 
 
The Object Summary dialog box consist the following columns:
  • Name - The filename of the object (relative to the URL).
  • Finished - The time when the download of the object was completed.
  • Requested - The time when the HTTP request for the object was sent to the server.
  • Delta Time - The span between the time that this object completed downloading, and the time that the base HTML page was requested.
  • Size - The size of the object in bytes
  • Elapsed - The amount of time in seconds necessary to download the object. The accuracy of this value is 1 millisecond.
  • Bits/Sec - The average data transfer speed in number of bits per second, otherwise known as the baud rate.
  • Status - Displays the HTTP return code found in the HTTP response header for this object.
Solution:An expiry date was set at the Web Server level. By this all components that are downloaded from the Web Server will be having an expiry date attached with it when they come to the client. Any further request made by the IE for the same component, will use the component from the cache and won’t send any request to the Web Server.
 
Results:
From the UI perspective the manual following things were found
  1. The largest improvement was to the login time which was decreased by 37% for the GA connection and 55% for the DA connection.  (GA and DA are NM Client specific network used by the user)
  2. All other transactions tested were decreased on average 25%.
 
 
From the load on the Web Server perspective the web trends report was generated for the comparison of Monday - Thursday the week prior and week following the change. The following things were found.
  1. Total average hit reduction on web server:  34%.
  2. translates to 700,000 fewer hits per day, or nearly 3,000,000 hits for Monday - Thursday
  3. Most of the impact is during the busiest time frame - 8:00am to 3:00pm
 Failed Hit reduction: 86%
  
Hits by Hour of the Day
           
Hits by Day of the Week