Today, Sitecore 6.3 (formerly known as Twin Peaks) was released. This is an important release because it brings true enterprise class scalability to Sitecore CMS. It is now possible to create content management (CM) and content delivery (CD) clusters that consist of geographically-separated machines.
Some important architectural changes make this possible. One of these changes is the addition of the "event queue". This post explains what the event queue is and how it works.
The way communication is typically handled in Sitecore is through events. When an item is saved, an event is triggered. But events are isolated to a single server. If an item is saved, the "saved item" event is only triggered on the server used to actually save the item. How do the other servers in the cluster know the item was saved?
This is where the event queue comes in. Sitecore 6.3 introduces the concept of "remote events". Consider a CM cluster with 5 nodes. When an item is saved, an event it triggered on 1 of the nodes. This is the "saved item" event. The event is replayed on the other 4 nodes as a remote event. This allows all 5 servers in the cluster to stay in sync.
That's my quick explanation of the event queue. And since a picture is worth a thousand words, here's a video that illustrates how the event queue works.
Congratulations on the release of Sitecore 6.3! How is the Event Queue actually persisted? I know that the introduction video is a high-level one, but from the diagram the Event Queue looks like a single point of failure and a potential bottleneck. How do you ensure scalability and redundancy?
Hello Arnold,Because the Event Queue lives in the database, there's no need to worry about persistance. You can easily mirror your database using replication.Kind regards,Alex de GrootSolution ArchitectSitecore Corporation
Thanks Adam for your post about Sitecore's 6.3 release. For anyone interested in reading and tuning into related details, here's a review post from the annual Microsoft Worldwide Partner Conference in DC: www.sitecore.net/.../Review-of-WPC10.aspx