2

We have frequent issues with publishing in Tridion. Every time when the publishing is stuck, I had to restart IIS, Services and Com+ applications.

I am planning to run a scheduled task every day that will restart all these services.

I have also disabled logging for publishing.

Here are my publisher settings. enter image description here

Daily we publish 100+ pages and 100+ dynamic components.

Can some one help to find a permanent solution to this.

  • what kind of issues you are facing? any logs from event logs would also help – Raj Kumar Nov 11 '14 at 10:56
  • @RajKumar. Publishing is struck at waiting for publish. Some times it is too slow. Takes almost 5 to 10 mins for a page. Is there any way to improve performance. Can you help. – Patan Nov 11 '14 at 11:06
4

This is a very broad question, that cannot really be answered without knowing what your templates are doing.

There's a few things to look at. You report stability issues, which would suggest you have code quality issues. Perhaps bad memory management, usage of COM objects in templates that are not correctly released from memory, etc.

You also should look into where the time is being used. If you double click on any successful transaction in the publishing queue you'll be shown details of that transaction, like how much time is spent on which phase - resolving, rendering, transporting, deploying. Based on this info you'll know where you should focus. Likely, most time will be in rendering, and therefore you need to dig into what your templates are doing.

There are things you can do to speed up publishing time from a server config point of view, like playing with the publisher threads (more threads does not mean faster, means more tasks in parallel, which may slow down the database) and with cache settings for the publisher too. But you'll never get as much benefits from this than from reviewing what the code in the templates is doing, as that is what is using CPU cycles and memory.

So, my top recommendation would be to have an audit of your templating code. Possibly you're spending time reading the same information over & over when it's not needed and it could easily be cached. Perhaps you're creating static references to objects that can't be used in a static manner, like the Engine and Package. Perhaps you're loading data from a virtual folder, which means that the results can't be cached by the CM. All of this can only be determined by looking at the code.

  • Thanks Nuno for the detailed explanation. I looked at the time during transaction. It is rendering taking more time. I will investigate more. – Patan Nov 11 '14 at 16:27
  • Also check what's publishing what and how editors are publishing. "See items to publish" and Tridion's default resolving rules (republish items that use the queued item) might show certain elements (additional pages or Component Presentations) getting queued that you may not want to publish. – Alvin Reyes Nov 12 '14 at 23:05
3

The short answer is "Something is wrong with your implementation or installation. You should not need to restart all these service and pages should take fractions of seconds to publish - not minutes."

As suggested by @Rai, you should look for some logs and errors to diagnose the issue. Restarting the services is really a "band-aid", and is not addressing your underlying problems. Slow publishing is often a case of poor templates. I notice you have 8 threads for rendering. Try reducing both rendering and deploying to a single thread and test again. You may have some "non-thread safe" code somewhere in your implementation.

  • Thanks Chris. I will look into that. The rendering is taking more time. Could be due to poor templating. – Patan Nov 11 '14 at 16:28
  • Also check that your template is not getting into a circular reference, where a Component is linked to itself. – robrtc Nov 21 '14 at 6:12

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.