SlideShare ist ein Scribd-Unternehmen logo
1 von 33
FULL STACK
SYMFONY CMS
18 MAR 2016
EZ PLATFORM
DISCLAIMER
Don’t believe a software vendor!
SOME HISTORY & CONTEXT
About eZ
www.ez.no
IN NUMBERS
Skien
15 year old software company, dedicated to provide tools and solutions
where Content means Business. We are recognized as a leader in
the domain of Content Management that constantly stays on the edge of innovation.
New York Lisbon
Paris
Oslo
Tokyo
Lyon
Cologne
Katowice
45.000+
Members
80 Employees
250.000+
Installations
200+ Partners
5M+ Downloads
Users in
160 Countries
Commercial
Open Source
www.ez.nowww.ez.no
eZ Publish, 1999-2015
๏Open Source
๏First version in 2000
๏Rewrite for eZ Publish 3 being more a CMF on PHP4
๏Development of eZ Components
๏First PHP5 version developed by the eZ Community
๏Addition of CXM components from 2011
www.ez.no
OUR SOFTWARE SOLUTIONS in 2016
By providing tools, solutions & services through a digital business platform,
the eZ Publish Platform, covering a range of business needs:
www.ez.no
eZ ENTERPRISE
The next generation of eZ
eZ Platform
eZ Studio
Cloud Services
Personalization | Smart Analytics | Marketing Automation
eZ Studio
For content
creators
For developers
& designers
CONTENT PLATFORM
Build unique digital experiences
that work
CONTENT STUDIO
Create and manage your content
with ease
CONTENT INTELLIGENCE
Maximize the relevance of your
content and grow your business
KEY HISTORICAL CHARACTERISTICS
eZ Platform
www.ez.nowww.ez.no
Key characteristics
www.ez.nowww.ez.no
Key characteristics
www.ez.nowww.ez.no
When is eZ Platform used?
๏More complex sites in terms of content architecture
๏Multilingual enterprise sites
๏“Integration heavy” web projects
๏Content Reuse / CaaS
๏Custom E-commerce
BUILT ON SYMFONY
The Symfony Full Stack Framework
www.ez.nowww.ez.no
The Symfony Framework
๏Symfony is a popular general purpose web
framework with a million downloads a month
๏Developers familiar with the Symfony framework
can start working with eZ Platform quickly
๏The skillset is transferrable to other platforms built
with it (OroCRM, Sylius, Akeneo…)
www.ez.nowww.ez.no
The Symfony Framework
๏A modern PHP framework that handles basics such
as routing, caching, i18n, forms and more…
๏Focuses on the HTTP request-response model
๏Actions like caching and other things very fluent,
since you’ll be working with responses
๏A solid architecture that allows extending
functionality with a Bundle mechanism
WHAT DOES eZ PLATFORM DO?
Adds Content Management Features to Symfony
www.ez.nowww.ez.no
eZ Platform
๏Content Management is a complex problem domain
๏eZ Systems has over 15 years of experience in it
๏Solid concepts for multisite and multilingual publishing
with a semantic content model
๏Exposes PHP APIs and REST APIs to developers
www.ez.nowww.ez.no
Content Repository
A Content Repository
๏A flexible storage for content
๏Fully integrated Solr search for high performance
with millions of content items
๏Sends API signals (on all operations like delete,
move, remove subtree, indexing…) for Micro
Workflows
๏Pluggable storage backends (currently SQL)
www.ez.nowww.ez.no
REST API
A comprehensive REST API
๏A public interface to interact with the repository
๏The admin interface uses it - a first class citizen!
๏For content syndication or straight with front end
technologies like Angular, React or Vue…
๏Extensible, you can aggregate data from any
Symfony data models like Doctrine ORM
www.ez.nowww.ez.no
Dynamic routing
Dynamic Routing
๏Uses the ChainRouter from Symfony CMF
๏Matches dynamic URLs from the repository:
๏http://example.com/products/bicycles/kids
๏Works with the static routes you’ve made:
๏http://example.com/polls/123
www.ez.nowww.ez.no
Siteaccess concept
Siteaccess concept
๏Matching a URL to a set of configurations
๏Typical use cases are multisites and language
versions
๏http://example.de/
๏http://example.com/de/
๏http://de.example.com/
www.ez.nowww.ez.no
User Interface
User Interface
๏A UI for managing the content, previewing, etc.
๏Uses the REST API for a no-pageloads experience
๏Designed to be extensible, developers can add
menu items
๏Enables centralizing of all data editing in your
Symfony applications to one interfaces
๏you can keep using Sonata or others, too
www.ez.nowww.ez.no
User and Permissions management
User and Permissions management
๏A powerful user and permissions management
system using users, user groups and roles
๏Uses the Symfony session transparently
๏You can store users elsewhere (Active Directory,
LDAP, FOSUserBundle, etc.) and mock an eZ user
when accessing the content repository
BUILT FOR A DISTRIBUTED WORLD
Scaling horizontally with abstractions
www.ez.no
THE TARGETED ARCHITECTURE
Storage
eZ Platform Business Logic
Persistence & IO SPI
Public API
Symfony2 Web Framework
REST API
Twig Template Engine
Website / Demo siteCMS
User
Interface
End Users
(Website users)
Editor,
Marketer,
Admin
(CMS users)
Web Service
User Interface
APIs
Web Framework & dev
Kernel(s)
Content & Data
www.ez.nowww.ez.no
Application Servers
๏PHP scales well by nature - just add more boxes
๏PHP 7 supported, big performance wins:
https://www.symfony.fi/entry/symfony-benchmarks-php-
56-hhvm-and-php-7
๏Docker to be the deployment choice going forward
๏https://github.com/ezsystems/docker-php
www.ez.nowww.ez.no
Database
๏Uses the Doctrine DBAL for SQL abstraction
๏MySQL and MariaDB are now officially supported
๏PostgreSQL, Oracle, MSSQL… technically feasible
๏http://www.doctrine-project.org/projects/dbal.html
www.ez.nowww.ez.no
File storage
๏eZ Platform uses the FlySystem abstraction layer
for file storage
๏A number of options out of the box: S3, Dropbox,
Azure Blob Storage…
๏Switching is a matter of configuration
๏http://flysystem.thephpleague.com
www.ez.nowww.ez.no
Search
๏Solr, a separate search server built with Java
๏Communications over a RESTful API
๏Even higher performance and scaling with clustering
๏https://github.com/MSOpenTech/Windows-Azure-Solr
www.ez.nowww.ez.no
Caching
๏eZ Platform uses the Stash abstraction layer
for caching
๏By default file caches, but can be switched to
Memcached, Redis…
๏Scale cache yourself or using Azure Redis, for
example
๏http://www.stashphp.com
www.ez.nowww.ez.no
HTTP layer
๏eZ Platform uses the FOSHttpCache for HTTP
cache controlling
๏Supports user contexts, purging using tags…
๏Edge Side Includes (ESI) using HMVC from
Symfony
๏Example Varnish configurations out of the box
๏https://github.com/FriendsOfSymfony/FOSHttpCac
heBundle
COOL LINKS OF THE DAY
www.ez.nowww.ez.no
Cool Links
๏http://ezplatform.com
๏http://ezstudio.com
๏https://www.symfony.fi/entry/symfony-benchmarks-php-
56-hhvm-and-php-7
๏http://ez.no/Blog/How-Symfony-developers-can-take-
advantage-of-eZ-Platform-a-fully-featured-Symfony-
CMS
๏http://ez.no/Blog/How-eZ-improves-its-software-
development-process-with-Docker
Thank you!
Jani Tarvainen, Professional Services Consultant
jani.tarvainen@ez.no
@velmu

Weitere ähnliche Inhalte

Mehr von Jani Tarvainen

Mehr von Jani Tarvainen (9)

Aggregation APi in Ibexa DXP by Adam Wójs
Aggregation APi in Ibexa DXP by Adam WójsAggregation APi in Ibexa DXP by Adam Wójs
Aggregation APi in Ibexa DXP by Adam Wójs
 
GraphQL APIs is with eZ Platform, a Symfony CMS
GraphQL APIs is with eZ Platform, a Symfony CMSGraphQL APIs is with eZ Platform, a Symfony CMS
GraphQL APIs is with eZ Platform, a Symfony CMS
 
Introduction to eZ Platform v2 UI Customization
Introduction to eZ Platform v2 UI CustomizationIntroduction to eZ Platform v2 UI Customization
Introduction to eZ Platform v2 UI Customization
 
Easy Decoupled Sitebuilding with GraphQL and Next.js
Easy Decoupled Sitebuilding with GraphQL and Next.jsEasy Decoupled Sitebuilding with GraphQL and Next.js
Easy Decoupled Sitebuilding with GraphQL and Next.js
 
Doctrine ORM with eZ Platform REST API and GraphQL
Doctrine ORM with eZ Platform REST API and GraphQLDoctrine ORM with eZ Platform REST API and GraphQL
Doctrine ORM with eZ Platform REST API and GraphQL
 
Performance Comparison of PHP 5.6 vs. 7.0 vs HHVM
Performance Comparison of PHP 5.6 vs. 7.0 vs HHVMPerformance Comparison of PHP 5.6 vs. 7.0 vs HHVM
Performance Comparison of PHP 5.6 vs. 7.0 vs HHVM
 
Exploring Content API Options - March 23rd 2016
Exploring Content API Options - March 23rd 2016Exploring Content API Options - March 23rd 2016
Exploring Content API Options - March 23rd 2016
 
Isomorphic server side rendering with Twig
Isomorphic server side rendering with TwigIsomorphic server side rendering with Twig
Isomorphic server side rendering with Twig
 
Content Management Systems and Refactoring - Drupal, WordPress and eZ Publish
Content Management Systems and Refactoring - Drupal, WordPress and eZ PublishContent Management Systems and Refactoring - Drupal, WordPress and eZ Publish
Content Management Systems and Refactoring - Drupal, WordPress and eZ Publish
 

Kürzlich hochgeladen

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Kürzlich hochgeladen (20)

Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 

eZ Platform - A Full Stack Symfony CMS

Hinweis der Redaktion

  1. Roland
  2. This is our vision and mission. We think going through the digital transformation, digitalizing businesses is a very tricky business project, that can cost a lot, we want to make that easier. Our contribution to that is tools and technology solutions to help implement great business vision.