Cet article est reposté depuis une source devenue inaccessible.
Last week was held in Paris at the "Cité Universitaire Internationale" the 4th edition of the Symfony Live, the conference organised by Sensio Labs which allowed us to meet the Symfony community, talk with the Symfony core team, and share our experience with the framework (as they said on the SF Live 2012 website).
And so it was for this reason that we gave a conference on the use of Symfony 2 in our new platform.
Symfony 2 was heavily used in the development of new Overblog. Each part of the project is based on it. Sensio Labs Team give us a great help at the start of the project:
Train us on Symfony 2 (thanks to @alexandresalome)
Help us to develop some part, like the Single Sign On and to give us some support (thanks to @vincent_elao)
With Gérald Lonlas, we gave a conference called "The use of Symfony2 @ Overblog" based on this experience of 8 months we had with Symfony 2 and how we designed our software architecture.
The conference was based on 3 main points:
Dependency injection: Making a high speed transport layer with Apache Thrift into Symfony 2.
Security Bundle: Integrating a Single Sign On
Twig: Using Twig sandbox to jail custom OverBlog's users themes integration.
Go into the details of these 3 points.
1) Transport Layer
Instead of the actual Overblog which is a monolithic application based on Jelix Framework, we wanted to create a real Service Oriented Architecture by cuting the apllication into several business parts, like the blog (core), users, administration...
For that purpose, we needed to find a performant way making communicate each services. And after some tries with REST, we decide to integrate Apache Thrift into Symfony 2, which was something that was never done.
2) Single Sign On
Of course, with that SOA architecture, we needed for some services to add authentication. Of course, once you are logged into one, you have to be logged everywhere.
That's why we choose to build a Single Sign On based on the Security Bundle ff Symfony 2.
One of the main feature of the new Overblog was to give to the blogger a total freedom to create wonderful themes. For that purpose, we needed:
a "cool" and comprehensive meta language to build themes
to validate the theme syntax to protect our application
to cache pages
That's why we decide to use Twig and his sandbox, which is allready integrated into Symfony 2.
You can find attached to this page, the Keynote we make for that conference. Or you can watch it directly from SlideShare.
For people living in Toulouse, we'll gave the same presentation for the first AFUP meeting in Toulouse the June 26th.