Chapter 13. Performance

This chapter covers

  • Selecting the optimal data set
  • OpenCMIS and DotCMIS caches
  • Binding performance
  • HTTP tuning

As a developer and end user, you know how important performance is for an application. Creating a folder should take only a few milliseconds. If it takes longer than that, sooner or later somebody will complain. If you’ve played with multiple CMIS repositories, you might have discovered that some repositories are faster than others.

The performance of a CMIS application depends on many factors. Of course, the repository is a major factor, but often it isn’t the culprit when an application seems to be slow. This chapter presents a collection of real-world hints about how to avoid bottlenecks and how to improve the performance of CMIS clients and servers.

13.1. CMIS performance

When the first developers picked up OpenCMIS to build applications, there were mixed reactions. A few blog posts on the internet talk about first experiences with CMIS, and OpenCMIS in particular. Some reported something like this: “I quickly got it running and could connect to Alfresco and SharePoint. That’s great! But this CMIS thing is very slow. I don’t know if I should use it in my application.”

13.2. Selecting the smallest data set

13.3. Performance notes specific to OpenCMIS and DotCMIS

13.4. Caching

13.5. Selecting the fastest binding

13.6. Tuning HTTP for CMIS

13.7. Summary