SlideShare une entreprise Scribd logo
1  sur  31
Télécharger pour lire hors ligne
Symfony2 & eCommerce
2
@fabien_gasser
 Presales consultant @ Smile
 Ex Project Manager @ SensioLabs
 Hobbies: rap music & eCommerce
Smile - Open source solutions
provider
 More than 60 projetcs > 250 men.days
 Magento, Drupal, Jahia, Liferay, Sf2, Spring…
 eCommerce
o > 10 millions of products managed…
o > 200 pages served per second
o Multi Store, Multi Merchant, Multi Channel,
Marketplace…
3
Different eCommerce types
 B2C
o eShop:Unkut, Marketplace:Fnac, Chronodrive, Auchan Drive…
o Subscription:Birchbox
o Flash sales:Private journeys
 B2B with price negotiated for each customer:
o Managment of enterprises’ committees, cars sales…
 …
We should focus our strength on our business to create a
relationship with the customer and develop loyalty
 Alternative:Design an incredible product… without any competitor.
4
5
Product
catalog
PIM
Customers
CRM
Customer
account
Orders
Shopping
cart
Order
Manager
Symfony 2 & eCommerce
7
« Symfony should become the standard as a PHP middleware »
 Symfony 2 as Middleware: an applicative glue
 Specific development mind the gap between the best softwares and customer
requirements.
o Respect functional areas
8
Applications
Middleware
Database
Infrastructure
Orders
PIM
ERP
CRM
Sf2 Middleware
BIDAM
Customers
Product
catalog
Order
Manager
WebApp Borne Web
CMS
Search
Shopping cart Grid Checkout Merch Search
9
Drupal
Leaphly
Vespolina
Sonata
10
Even though it’s interesting to meet all
business requirements within the same
application
 !!! Difficult to maintain
 !!! Complex and unuseful business rules
 Changes on the solution core
Making e-commerce with a blogging
solution… No !
 Separation of concern : CMS / E-commerce / BI
Your e-commerce is not a business
intelligence tool : keep simple kpi on your
dashboard but use a real tool like Pentaho
or JasperSoft for your BI
We don’t do slides with Excel
11
12
Do smaller things and reduct the coupling of apps
 Core API
 Fine management of ACL through an oauth server for instance…
 Design applications by domain:Doing less but doing better
o Facilitate the update of a service / its maintenance / its availability
 Let‘s forget monolithic applications
o The applicative segmentation by controlers is not enough
 Why not considering a segmentation by functional domain ?
13
Desktop Tablet Mobile
Search
CSS
HTML
Javascript
Resource
WebComponent
Comments
Panier
Recherche
Website
WebComponent
Middleware
API HATEOAS
Json-ld
ETL
14
Representation
 Hateoas + HAL
 json/xml/messagepack
 Microformats
Stateless:Horizontal scalability
Security: SSL + token
Easy testing and automated
documentation NelmioApiBundle
Applicative versioning
Tip: Use Varnish to define frequency
of data update
15
Redis:cache, session, queues
Empty Varnish cache / CDN when you modify a product information…
If you don’t have to calculate the catalogue, then save it within
Elasticsearch/SolR: scalable, API Rest
Get some alerts on services and data flows:New Relic, Monitoring…
Don’t be afraid to use third-party services:
 Prediggo, Compario, LiveFyre, Gigya…
The bundles
 Core:MSSecurityExtraBundle, StofDoctrineExtensionBundle, LiipCacheControlBundle,
MonologBundle, Symfony-cmf/Routing, TemplatedUriBundle
 API:JMSSerializerBundle, FosRestBundle, BazingaHateoasBundle, NelmioApiDocBundle,
BazingaFakerBundle
16
17
Repository
 Assets & pictures
Order Manager
Data flows
Clients
 CRM
Search and recommendation
CMS
Payment
Sale
18
19
Product management with Akeneo PIM
ERP
images
Third part data
source
Videos
PIM
Search
Enrich
Translate
Maintain
E-store
Mobile
POS
Print
20
21
Media management:
 KnpLabs/KnpGaufretteBundle:s3, MongoGridFS
 Sonata Media Bundle
 Thumbor:service intelligent de gestion d’images (Détections de visages, motifs)
Smart interface for media management ? Ckfinder ?
Mass processing with an asynchronous queue
22
Order Manager system is the heart of your e-commerce
Create Finite State Machine thanks to the bundles
 github.com/yohang/Finite
 DoctrineStateMachineBundle
Manage various state for order, quote or cart
 A parralel task will check the state of the order to fire actions
 Manage easily actions around your orders: paiement notification or refund,
subscription system
23
An e-commerce platform communicates with several third-parties
 ESB ERP CRM BI WMS DAM MARKETPLACE (lengow, mirakl…)
With different formalisms:
 SOAP REST EDI CSV...
 HATEHOAS Messapack for mobile applications
Organization of the database model
 Create services to manipulate your SOAP / REST exposed interfaces
MONITOR data flows !!!
24
Create a unique base of clients and share it with applications
 User:
o FosUserBundle
o HWIOAuthBundle
o FosCommentBundle
o …
 SonataAdminBundle
Centralize the user events and follow the activity of users
 Real user monitoring / New Relic Insight
25
Keep in contact with its clients: OroCRM
 Client segmentation
 Task and call back
 Sales processing
e-commerce oriented features
 Abandonned carts
 User monitoring
26
27
Search:
 Implementation of Elasticsearch or Solr to index the PIM and take the benefit of the
search engine
o API REST
o Search features
Recommendation: up sell, cross sell…
 Management of affinitiy with a product at every purchase or creatino of product list
to make a simple recommendation
 Design of business rules with ExpressionLanguage to associate a product
Implement third-party solutions such as: Prediggo, Fredhopper,
Compario…
28
CMS & Merchandising: Drupal 8, Sulu CMF, Bolt
 Place CMS content to animate category pages
 Expert content, security of payments
 ESI / SSI / Hinclude / pjax / turbolinks
 Content as a Service / Data as a Service
Sulu.io
Pagekit
29
Implementation of payment solutions
 Paiement: Integration of a monetic supplier
o PayumBundle
 Use a PSP – payment service provider: be2bill, paybox…
o Ease of inception in a new country
o Fraud management
o REST API
One-click payment Payment in 3 times
withouth fee
Payment at deliverySimple payment
Partial or total refund Cross-chanel payment Simple
aknowledgement
30
200 pages / second and more…
 Prévoir un fallback sur les pages les plus consommatrices:une version dégradée
de l’application.
 Plan its stateless application in order to facilitate horizontal scalability
 Decoupling services and sites
 Ratchet ? WebRTC ?
Scalable hosting
 Cluster of databases and indexes
 On the fly creation:
o Docker, Serf, Mesos…
 Predictive auto-scaling (Scryer/Netflix) Traffic pattern:variable
Symfony 2 & e-commerce ecosystem  - Now in english !

Contenu connexe

Similaire à Symfony 2 & e-commerce ecosystem - Now in english !

MLOps journey at Swisscom: AI Use Cases, Architecture and Future Vision
MLOps journey at Swisscom: AI Use Cases, Architecture and Future VisionMLOps journey at Swisscom: AI Use Cases, Architecture and Future Vision
MLOps journey at Swisscom: AI Use Cases, Architecture and Future VisionBATbern
 
Direction, Mumbai corporate presentation 2016
Direction, Mumbai corporate presentation 2016Direction, Mumbai corporate presentation 2016
Direction, Mumbai corporate presentation 2016Pritam Bala
 
DotNetNuke CMS: benefits for web professionals
DotNetNuke CMS: benefits for web professionalsDotNetNuke CMS: benefits for web professionals
DotNetNuke CMS: benefits for web professionalsI-business Solutions
 
Bfo e business platform - nen tang nhu lieu may tinh cho doanh nghiep so
Bfo e business platform - nen tang nhu lieu may tinh cho doanh nghiep soBfo e business platform - nen tang nhu lieu may tinh cho doanh nghiep so
Bfo e business platform - nen tang nhu lieu may tinh cho doanh nghiep soHieutanda Nguyen Khac Hieu
 
BEP - Bfo E-business platform - nen tang phan mem cho doanh nghiep so v2
BEP - Bfo E-business platform - nen tang phan mem cho doanh nghiep so v2BEP - Bfo E-business platform - nen tang phan mem cho doanh nghiep so v2
BEP - Bfo E-business platform - nen tang phan mem cho doanh nghiep so v2Hieutanda Nguyen Khac Hieu
 
Why you will choose the aplonAPI™ platform, to empower your Open banking proj...
Why you will choose the aplonAPI™ platform, to empower your Open banking proj...Why you will choose the aplonAPI™ platform, to empower your Open banking proj...
Why you will choose the aplonAPI™ platform, to empower your Open banking proj...PaymentComponents
 
Product Engineering Services of Semantic Space Technologies
Product Engineering Services of Semantic Space TechnologiesProduct Engineering Services of Semantic Space Technologies
Product Engineering Services of Semantic Space TechnologiesPradeep B.N.V
 
IBM API management Philip Little
IBM API management Philip LittleIBM API management Philip Little
IBM API management Philip LittleValeri Illescas
 
apidays LIVE Australia 2021 - Composing a Headless and Composable Commerce Ar...
apidays LIVE Australia 2021 - Composing a Headless and Composable Commerce Ar...apidays LIVE Australia 2021 - Composing a Headless and Composable Commerce Ar...
apidays LIVE Australia 2021 - Composing a Headless and Composable Commerce Ar...apidays
 
Big Data and Analytics on Amazon Web Services: Building A Business-Friendly P...
Big Data and Analytics on Amazon Web Services: Building A Business-Friendly P...Big Data and Analytics on Amazon Web Services: Building A Business-Friendly P...
Big Data and Analytics on Amazon Web Services: Building A Business-Friendly P...Amazon Web Services
 
Osmius The Open Source, Fast and Extandable Monitoring Tool
Osmius The Open Source, Fast and Extandable Monitoring ToolOsmius The Open Source, Fast and Extandable Monitoring Tool
Osmius The Open Source, Fast and Extandable Monitoring Toolosmius
 
Evolución de una arquitectura monolítica hacia decoupled commerce en un retai...
Evolución de una arquitectura monolítica hacia decoupled commerce en un retai...Evolución de una arquitectura monolítica hacia decoupled commerce en un retai...
Evolución de una arquitectura monolítica hacia decoupled commerce en un retai...Marcos Pueyrredon
 
Micro-Service Architectures in E-Commerce environments with SPHERE.IO / comme...
Micro-Service Architectures in E-Commerce environments with SPHERE.IO / comme...Micro-Service Architectures in E-Commerce environments with SPHERE.IO / comme...
Micro-Service Architectures in E-Commerce environments with SPHERE.IO / comme...Dirk Hoerig
 
Nisbets Case Study 2010
Nisbets Case Study 2010Nisbets Case Study 2010
Nisbets Case Study 2010Sajbhojani
 
B com 2013 | La strategia per un e-commerce di successo_Federico Gasparotto
B com 2013 | La strategia per un e-commerce di successo_Federico GasparottoB com 2013 | La strategia per un e-commerce di successo_Federico Gasparotto
B com 2013 | La strategia per un e-commerce di successo_Federico GasparottoB com Expo | GL events Italia
 
Transforming Financial Services with Event Streaming Data
Transforming Financial Services with Event Streaming DataTransforming Financial Services with Event Streaming Data
Transforming Financial Services with Event Streaming Dataconfluent
 
Powering Disruption in Banking
Powering Disruption in BankingPowering Disruption in Banking
Powering Disruption in BankingBackbase
 
eCommerce Platforms - an introduction
eCommerce Platforms - an introductioneCommerce Platforms - an introduction
eCommerce Platforms - an introductionBen Adams
 
Send product content: about Syndy for Brands
Send product content: about Syndy for BrandsSend product content: about Syndy for Brands
Send product content: about Syndy for BrandsPietervanHerpen1
 

Similaire à Symfony 2 & e-commerce ecosystem - Now in english ! (20)

MLOps journey at Swisscom: AI Use Cases, Architecture and Future Vision
MLOps journey at Swisscom: AI Use Cases, Architecture and Future VisionMLOps journey at Swisscom: AI Use Cases, Architecture and Future Vision
MLOps journey at Swisscom: AI Use Cases, Architecture and Future Vision
 
Direction, Mumbai corporate presentation 2016
Direction, Mumbai corporate presentation 2016Direction, Mumbai corporate presentation 2016
Direction, Mumbai corporate presentation 2016
 
DotNetNuke CMS: benefits for web professionals
DotNetNuke CMS: benefits for web professionalsDotNetNuke CMS: benefits for web professionals
DotNetNuke CMS: benefits for web professionals
 
Bfo e business platform - nen tang nhu lieu may tinh cho doanh nghiep so
Bfo e business platform - nen tang nhu lieu may tinh cho doanh nghiep soBfo e business platform - nen tang nhu lieu may tinh cho doanh nghiep so
Bfo e business platform - nen tang nhu lieu may tinh cho doanh nghiep so
 
BEP - Bfo E-business platform - nen tang phan mem cho doanh nghiep so v2
BEP - Bfo E-business platform - nen tang phan mem cho doanh nghiep so v2BEP - Bfo E-business platform - nen tang phan mem cho doanh nghiep so v2
BEP - Bfo E-business platform - nen tang phan mem cho doanh nghiep so v2
 
CRM Idol
CRM IdolCRM Idol
CRM Idol
 
Why you will choose the aplonAPI™ platform, to empower your Open banking proj...
Why you will choose the aplonAPI™ platform, to empower your Open banking proj...Why you will choose the aplonAPI™ platform, to empower your Open banking proj...
Why you will choose the aplonAPI™ platform, to empower your Open banking proj...
 
Product Engineering Services of Semantic Space Technologies
Product Engineering Services of Semantic Space TechnologiesProduct Engineering Services of Semantic Space Technologies
Product Engineering Services of Semantic Space Technologies
 
IBM API management Philip Little
IBM API management Philip LittleIBM API management Philip Little
IBM API management Philip Little
 
apidays LIVE Australia 2021 - Composing a Headless and Composable Commerce Ar...
apidays LIVE Australia 2021 - Composing a Headless and Composable Commerce Ar...apidays LIVE Australia 2021 - Composing a Headless and Composable Commerce Ar...
apidays LIVE Australia 2021 - Composing a Headless and Composable Commerce Ar...
 
Big Data and Analytics on Amazon Web Services: Building A Business-Friendly P...
Big Data and Analytics on Amazon Web Services: Building A Business-Friendly P...Big Data and Analytics on Amazon Web Services: Building A Business-Friendly P...
Big Data and Analytics on Amazon Web Services: Building A Business-Friendly P...
 
Osmius The Open Source, Fast and Extandable Monitoring Tool
Osmius The Open Source, Fast and Extandable Monitoring ToolOsmius The Open Source, Fast and Extandable Monitoring Tool
Osmius The Open Source, Fast and Extandable Monitoring Tool
 
Evolución de una arquitectura monolítica hacia decoupled commerce en un retai...
Evolución de una arquitectura monolítica hacia decoupled commerce en un retai...Evolución de una arquitectura monolítica hacia decoupled commerce en un retai...
Evolución de una arquitectura monolítica hacia decoupled commerce en un retai...
 
Micro-Service Architectures in E-Commerce environments with SPHERE.IO / comme...
Micro-Service Architectures in E-Commerce environments with SPHERE.IO / comme...Micro-Service Architectures in E-Commerce environments with SPHERE.IO / comme...
Micro-Service Architectures in E-Commerce environments with SPHERE.IO / comme...
 
Nisbets Case Study 2010
Nisbets Case Study 2010Nisbets Case Study 2010
Nisbets Case Study 2010
 
B com 2013 | La strategia per un e-commerce di successo_Federico Gasparotto
B com 2013 | La strategia per un e-commerce di successo_Federico GasparottoB com 2013 | La strategia per un e-commerce di successo_Federico Gasparotto
B com 2013 | La strategia per un e-commerce di successo_Federico Gasparotto
 
Transforming Financial Services with Event Streaming Data
Transforming Financial Services with Event Streaming DataTransforming Financial Services with Event Streaming Data
Transforming Financial Services with Event Streaming Data
 
Powering Disruption in Banking
Powering Disruption in BankingPowering Disruption in Banking
Powering Disruption in Banking
 
eCommerce Platforms - an introduction
eCommerce Platforms - an introductioneCommerce Platforms - an introduction
eCommerce Platforms - an introduction
 
Send product content: about Syndy for Brands
Send product content: about Syndy for BrandsSend product content: about Syndy for Brands
Send product content: about Syndy for Brands
 

Dernier

Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AIABDERRAOUF MEHENNI
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...Health
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...panagenda
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 

Dernier (20)

Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 

Symfony 2 & e-commerce ecosystem - Now in english !

  • 2. 2 @fabien_gasser  Presales consultant @ Smile  Ex Project Manager @ SensioLabs  Hobbies: rap music & eCommerce Smile - Open source solutions provider  More than 60 projetcs > 250 men.days  Magento, Drupal, Jahia, Liferay, Sf2, Spring…  eCommerce o > 10 millions of products managed… o > 200 pages served per second o Multi Store, Multi Merchant, Multi Channel, Marketplace…
  • 3. 3 Different eCommerce types  B2C o eShop:Unkut, Marketplace:Fnac, Chronodrive, Auchan Drive… o Subscription:Birchbox o Flash sales:Private journeys  B2B with price negotiated for each customer: o Managment of enterprises’ committees, cars sales…  … We should focus our strength on our business to create a relationship with the customer and develop loyalty  Alternative:Design an incredible product… without any competitor.
  • 4. 4
  • 6. Symfony 2 & eCommerce
  • 7. 7 « Symfony should become the standard as a PHP middleware »  Symfony 2 as Middleware: an applicative glue  Specific development mind the gap between the best softwares and customer requirements. o Respect functional areas
  • 10. 10 Even though it’s interesting to meet all business requirements within the same application  !!! Difficult to maintain  !!! Complex and unuseful business rules  Changes on the solution core Making e-commerce with a blogging solution… No !  Separation of concern : CMS / E-commerce / BI Your e-commerce is not a business intelligence tool : keep simple kpi on your dashboard but use a real tool like Pentaho or JasperSoft for your BI We don’t do slides with Excel
  • 11. 11
  • 12. 12 Do smaller things and reduct the coupling of apps  Core API  Fine management of ACL through an oauth server for instance…  Design applications by domain:Doing less but doing better o Facilitate the update of a service / its maintenance / its availability  Let‘s forget monolithic applications o The applicative segmentation by controlers is not enough  Why not considering a segmentation by functional domain ?
  • 14. 14 Representation  Hateoas + HAL  json/xml/messagepack  Microformats Stateless:Horizontal scalability Security: SSL + token Easy testing and automated documentation NelmioApiBundle Applicative versioning Tip: Use Varnish to define frequency of data update
  • 15. 15 Redis:cache, session, queues Empty Varnish cache / CDN when you modify a product information… If you don’t have to calculate the catalogue, then save it within Elasticsearch/SolR: scalable, API Rest Get some alerts on services and data flows:New Relic, Monitoring… Don’t be afraid to use third-party services:  Prediggo, Compario, LiveFyre, Gigya… The bundles  Core:MSSecurityExtraBundle, StofDoctrineExtensionBundle, LiipCacheControlBundle, MonologBundle, Symfony-cmf/Routing, TemplatedUriBundle  API:JMSSerializerBundle, FosRestBundle, BazingaHateoasBundle, NelmioApiDocBundle, BazingaFakerBundle
  • 16. 16
  • 17. 17 Repository  Assets & pictures Order Manager Data flows Clients  CRM Search and recommendation CMS Payment Sale
  • 18. 18
  • 19. 19 Product management with Akeneo PIM ERP images Third part data source Videos PIM Search Enrich Translate Maintain E-store Mobile POS Print
  • 20. 20
  • 21. 21 Media management:  KnpLabs/KnpGaufretteBundle:s3, MongoGridFS  Sonata Media Bundle  Thumbor:service intelligent de gestion d’images (Détections de visages, motifs) Smart interface for media management ? Ckfinder ? Mass processing with an asynchronous queue
  • 22. 22 Order Manager system is the heart of your e-commerce Create Finite State Machine thanks to the bundles  github.com/yohang/Finite  DoctrineStateMachineBundle Manage various state for order, quote or cart  A parralel task will check the state of the order to fire actions  Manage easily actions around your orders: paiement notification or refund, subscription system
  • 23. 23 An e-commerce platform communicates with several third-parties  ESB ERP CRM BI WMS DAM MARKETPLACE (lengow, mirakl…) With different formalisms:  SOAP REST EDI CSV...  HATEHOAS Messapack for mobile applications Organization of the database model  Create services to manipulate your SOAP / REST exposed interfaces MONITOR data flows !!!
  • 24. 24 Create a unique base of clients and share it with applications  User: o FosUserBundle o HWIOAuthBundle o FosCommentBundle o …  SonataAdminBundle Centralize the user events and follow the activity of users  Real user monitoring / New Relic Insight
  • 25. 25 Keep in contact with its clients: OroCRM  Client segmentation  Task and call back  Sales processing e-commerce oriented features  Abandonned carts  User monitoring
  • 26. 26
  • 27. 27 Search:  Implementation of Elasticsearch or Solr to index the PIM and take the benefit of the search engine o API REST o Search features Recommendation: up sell, cross sell…  Management of affinitiy with a product at every purchase or creatino of product list to make a simple recommendation  Design of business rules with ExpressionLanguage to associate a product Implement third-party solutions such as: Prediggo, Fredhopper, Compario…
  • 28. 28 CMS & Merchandising: Drupal 8, Sulu CMF, Bolt  Place CMS content to animate category pages  Expert content, security of payments  ESI / SSI / Hinclude / pjax / turbolinks  Content as a Service / Data as a Service Sulu.io Pagekit
  • 29. 29 Implementation of payment solutions  Paiement: Integration of a monetic supplier o PayumBundle  Use a PSP – payment service provider: be2bill, paybox… o Ease of inception in a new country o Fraud management o REST API One-click payment Payment in 3 times withouth fee Payment at deliverySimple payment Partial or total refund Cross-chanel payment Simple aknowledgement
  • 30. 30 200 pages / second and more…  Prévoir un fallback sur les pages les plus consommatrices:une version dégradée de l’application.  Plan its stateless application in order to facilitate horizontal scalability  Decoupling services and sites  Ratchet ? WebRTC ? Scalable hosting  Cluster of databases and indexes  On the fly creation: o Docker, Serf, Mesos…  Predictive auto-scaling (Scryer/Netflix) Traffic pattern:variable