16 January, 2013

Web Service Performance Tuning Tips



Tip 1#     Use coarse grained web services with moderate size payloads
Tip 2#     Choose correct service (RPC or Document) and encoding (Encoded or Literal) style for web service
Tip 3#     Carefully design SOAP attachments and security implementations to minimize negative performance
Tip 4#     Achieve Web services interoperability
§         Web Service implementation in Java: Use primitive types, String or simple POJO as parameters and return type
Tip 5#     Opt for RESTful Web Services
§         Language and platform agnostic
§         Uses standard HTTP methods to access web services
§         Need better performance and scalability
§         Much simpler to develop than SOAP
§         Small learning curve, less reliance on tools
§         Could be used when web services are not sophisticated and there is not need for QoS
Tip 6#     Consider using an asynchronous messaging model with
§         Slow and unreliable transport
§         For complex and long running process
Tip 7#     Use replication and caching of data to improve performance by minimizing network overhead
Tip 8#     Use XML compression where the XML compression overhead is less than network latency
Transmitting attachments such as MRI Scans, X-Rays, Design Documents and Business Contracts using SOAP messages has become a common practice.. Optimize transmission of attachments with MTOM & XOP:

References

Web Application Performance Tuning Tips



I have given below the most common performance tuning tips (technology agnostic): 

Tip 1#     Minimize the use of JavaScript and style sheets
Tip 2#     Check out for framework specific characteristics
Tip 3#     Use pagination
Tip 4#     Cache all the static content like HTML pages, images etc
Tip 5#     Cache frequently used or accessed master data or reference data
Tip 6#     Reducing extensive use of Session variables will avoid clogging server resources and avoid performance bottlenecks
Tip 7#     Set up health monitoring of your web application
Tip 8#     Perform “Performance Testing”
Tip 9#     Measure the performance metrics for all components

References