SlideShare una empresa de Scribd logo
1 de 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

Más contenido relacionado

Más de Jani Tarvainen

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ójsJani Tarvainen
 
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 CMSJani Tarvainen
 
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 CustomizationJani Tarvainen
 
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.jsJani Tarvainen
 
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 GraphQLJani Tarvainen
 
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 HHVMJani Tarvainen
 
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 2016Jani Tarvainen
 
Isomorphic server side rendering with Twig
Isomorphic server side rendering with TwigIsomorphic server side rendering with Twig
Isomorphic server side rendering with TwigJani Tarvainen
 
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 PublishJani Tarvainen
 

Más de 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
 

Último

Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 

Último (20)

Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 

eZ Platform - A Full Stack Symfony CMS

Notas del editor

  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.