To integrate Drupal with Symfony, I had to let Symfony be the boss of Drupal, which required a full understanding of Symfony's HttpKernel component.

In Symfony, HttpKernelInterface is a PHP interface that models one basic task: converting a web request into a web response. The HttpKernel class which implements this interface triggers a few events that allow you to change or interrupt a request or response as it moves through this process.

Understanding the HttpKernel is crucial, and I won't try to repeat the existing documentation, but here are some pointers that were very helpful to me.

In addition to this documentation, studying how the HttpKernel was used in different contexts was helpful: Silex, Stack, Bolt, and Drupal 8. YOLO, "an academic version of Silex," replaces Pimple with the Symfony dependency injection container to create a "more pure, less usable" tool.