SDL Web 8: Under-the-Hood Changes (Content Interaction Services & Libraries)

The second part of our blog post series already mentioned how SDL Web 8 provides a new Content Delivery deployment model with self-running and self-contained REST-based Content Interaction Services that fully decouple the Web Application from the SDL Web delivery stack.

 

This decoupling was driven from various requirements for distinct operational scenarios, both on-premises and in cloud.

Based on customer feedback, we have addressed the following key areas:

  • Ability to upgrade Content Delivery platform independently from web applications
  • Minimize third-party dependencies (which often conflicted with web application dependencies)
  • Remove restrictions on supported web application containers and operating systems

The introduction of the Content Interaction Services allows us to provide APIs that are implemented with very little third-party dependencies. The APIs (provided by the Content Interaction Libraries) invoke the Content Interaction Services. Newer versions of the Content Interaction Libraries will be able to target older versions of the Content Interaction Services and newer versions of the Content Interaction Services will be providing backward compatibility with older versions of the Content Interaction Libraries.

With most of the data integration logic and third-party libraries pushed into the Content Interaction Services, our APIs have become much more independent from web application container and target platform, allowing us to drop the prerequisites that we used to have. As long as your web application targets Java 8 or .NET 4.5 you are good to go.

Lastly, for .NET web applications we are now also providing fully native API implementations and with that take out a bunch of clutches and inefficiencies that stemmed from .NET/Java interop and the need for having an in-process JVM with its own “run-away” garbage collector in the .NET application pool.

All of this leads to a much more tightly integrated web application package that allows customers to optimize packing density, to stage roll-out/upgrade plans and to target their platform of choice.

Outlook

Moreover, the significance of the introduction of Content Interaction Services is much bigger than that. With this change, we effectively introduce similar decoupling as we have been having between the Content Management stack and the Content Delivery stack for a very long time.

This allows us to evolve libraries and services more or less independently. As we are making the libraries available in public artifact repositories, this allows us to bring improvements to our developer community in a much more rapid pace than we have ever been before. This year, we took a first stab at this approach with fresh beta releases of the Content Interaction Libraries before we officially shipped our first Cumulative Update for SDL Web 8.

We are very much looking forward to sharing more innovations going forward, ranging from broader deployment scenarios to improved efficiency and web application development experience.