You are hereInkriti Ideas / Websphere Commerce / Byline Article - Websphere Commerce : Issues with RapidAssetStore
Byline Article - Websphere Commerce : Issues with RapidAssetStore
High Level Findings : Issues with an e-commerce site rolled out on Websphere Commerce's RapidAssetStore
- It looks like the site uses standard JSP templates that are part of the RapidAssetStore
- Based on experience of other firms , it seems to be generally accepted that these templates have several limitations, along lines of functionality, bugs, cross-browser issues etc.
- Importantly, they do not expose several important merchandising and marketing functions (such as cross-sells, upsells etc)
Generic
1. Once on https, the site does not switch back to http even for non-secure pages - performance issue. Example - proceed to cart/checkout and then navigate to home/product pages - these pages still get served over https
2. Lot of CSS errors - color codes are wrong (#c00000000), spelling mistakes (padiing), wrong syntax for comments (* used instead of /**/), wrong usage of constructor (wc.analytics.CoremetricsEventListener())
Repeated Tags
<fmt:setlocale value="en_US">
<fmt:setbundle basename="/Thepcf/storetext" var="storeText">
</fmt:setbundle></fmt:setlocale></fmt:setbundle></fmt:setlocale></fmt:setbundle></fmt:setlocale>
Tags not closed properly (closing tags are repeated)
- (?) printed as-is in the page - probably missing taglib page directive in the page
- firefox ignored the extra closing tags - need to check if in IE6 has an issue with that
Repeated script tags:
<script>
Environment = {
langId: '-1',
storeId: '10201',
catalogId: '10101',
storeImgDir: '/wcsstore/Thepcf/',
jspStoreImgDir: '/wcsstore/RAPIDStorefrontAssetStore/',
storeDir: '/Thepcf/',
jspStoreDir: '/RAPIDStorefrontAssetStore/',
vfileStylesheet: 'css/Master2_1.css',
storeCSS: 'css/tpf.css',
storePrintCSS: 'css/tpf_print.css',
isProdCoremetrics: true
}
</script>
Also a lot of javascript code inside <body> tag
Inline javascripts for Dojo AJAX
- should be in an include file. if in include file, browser can cache the dojo scripts - page size and response time will reduce
- otherwise the javascript code will get downloaded in all the pages that have inline code
The rendered page has lot of whitespaces
- will increase the size of page sent to browser - network time more. not a clean code
Divs and tables are mixed
Comments on RapidAssetStore
- It looks like the site uses standard JSP templates that are part of the RapidAssetStore
- Based on experience of other firms, it seems to be generally accepted that these templates have several limitations, along lines of functionality, bugs, cross-browser issues etc.
- Importantly, they do not expose several important merchandising and marketing functions (such as cross-sells, upsells etc)
Other Generic Ideas
Dynacache
Need to check if website uses basic dynamic caching (dynacache). Some possible areas to consider :
· Cache a full-page and a page fragment.
· Invalidate cache-entries using a variety of techniques.
· Build cache-ids from different components.
· Use the dynacache APIs not to cache.
· Cache full-page and page fragments on the edge.
· Understand the additional requirements to cache in a production environment.
- Right hardware capacity to handle workload (hardware planning)
- Migrating to newer Commerce releases (for latest software fixes from IBM) OR apply latest patches.
- Performance testing using Tivoli Performance Tester
- Proactively monitor commerce site to prevent potential problems by using WebSphere Application Server build-in tools and Tivoli's Composite Application Management
- WebSphereCommerce has known bugs. It's better not to touch the code for WebSphere Commerce - a wise approach is to look at code that customized/extended Commerce APIs
- WebSphere Commerce built using EJBs and as such has built-in performance issues
- Which database is being used for thepcf site - DB2 or some other DB? Does Commerce perform better of the dB is DB2? (JDBC driver related performance issues)
- For many J2EE sites, a sensitive performance tuning area is the java heap size. Since Commerce is heavy on EJBs, heap size tuning will affect the performance. Increasing heap size beyond a limit might bring down performance due to larger overhead associated with garbage collection. Optimal heap size can change with changes to the application - either hardware or the codebase - and hence need to be tuned continually. One way to arrive at the optimal size is to measure peak transactions-per-minute with the heap size being tried.
Tags
