This article is based on the blog post here of Danny Baggs. Danny has a strong developer based background and is working for Open Text.
The way the LiveServer Delivery Server is set up for a development environment usually is as a standalone application without having a front controlling web server. Although this is working for development purposes it doesn’t work within a live environment with several thousand users firing off HTTP requests every hour or minute or even second.
This post discusses the best practice of deploying the Open Text Delivery Server in an optimal way alongside a front controlling web server. This article provides a high-level overview of what to set up and how the necessary components work together. Depending on feedback I may post further posts on the details of each step.
After reading this article you will know
The Open Text Delivery Server is a dynamic web server component that has strengths in coarse grained personalization and dynamic behaviour as well as system integration. All you need to know is where to get your hands on and what to do and what you better should not do.
The Open Text Delivery Server is housed within a Servlet Container. A Servlet Container is not the ideal location from which to serve static content. It handles requests in a way that limits the amount of concurrent requests. This can lead to severe performance issues.
There are ways to mitigate this but it needs quite a lot of Java experience and is still not recommended. Unless you wish to maintain a level of access control over the static content let’s put it simply like this:
Don’t run the Deliver Server as a standalone web server.
Next: What do you need to get Delivery Server running?
Read more »
Great post, Markus (and Danny). We’ve ended up using a dynament to do our Friendly/SEO URL’ing in our LiveServer projects like this:
RewriteRule ^/(.*) /cps/rde/xchg/bizcom/hs.xsl/redirectHandler.xml?path=$1 [PT,L]
The redirect handler can pull it’s data from an XML document published from the CMS or from Verity attributes on each piece of content.
Also, other architectural configs, we’ve outlined in our Delivery Server Production Buildout Whitepaper
What you missed in this article:
1. Never install with the bundled installer. Always install as WAR and deploy it to an own tomcat.
2. Always run the LS/DS in its own Container. It has a strange/greedy kind of heap management.
3. In high performance environment use an additional reverse caching proxy (i.e. varnish) if you don’t have a cdn.
@Christian
You can get the same without using something stated above. We tend to just publish a text-file containing Apache-Configs like:
Redirect /
onto the server and Include them in the vhost-config.
Regarding your questions:
We built an simple MS/DS framework to construct simple forms (incl. client and serverside validation). The success action then can be any dynament code like sending an email, storing form data to an database or calling a webservice. We recommend to build complexer forms using the spring framework.
Regarding the search I really encourage everybody to get rid of this verity crap and use either an complete external searchengine (like google mini) or connect the engine of your choice (endeca, sol’r, …) via serchengine indexing tasks or the new OpenAPI based connector.
Good points Daniel.
I have been told that OpenText is aware of the strengths and weaknesses of Verity and looking into this to make things better in the future.
And I agree on that note that unless OpenText doesn’t come up with a better product than Verity or a cleaner way to configure and set it up you are better off with the Google Search Appliance or another search engine. For the clients: Ask your RedDot Partner what they recommend.