30
Montpellier le 25/06/2019 eZ Publish & Deployment of a multi-site platform Summary : Introduction to Multi-site projects Chapter 1 : Multi-site Deployment strategy Chapter 2 : Case study : “The Website generator” Chapter 3 : Case study : CRT Picardie Kaliop Any questions ? (FR / EN) Gilles Guirand – Technical Director at Kaliop

eZ Publish & Deployment of a multi-site platform

Embed Size (px)

DESCRIPTION

Chapter 1 : Multi-site Deployment strategyChapter 2 : Case study : “The Website generator”Chapter 3 : Case study : CRT Picardie

Citation preview

Page 1: eZ Publish & Deployment of a multi-site platform

Montpellier le 25/06/2019

eZ Publish & Deployment of a multi-site platform

Summary :

Introduction to Multi-site projectsChapter 1 : Multi-site Deployment strategyChapter 2 : Case study : “The Website generator”Chapter 3 : Case study : CRT Picardie

Kaliop Any questions ? (FR / EN)

Gilles Guirand – Technical Director at Kaliop

Page 2: eZ Publish & Deployment of a multi-site platform

25/06/2009

2eZ Publish & Deployment of a multi-site platform

Why to deploy a multi-site system ?

– Content sharing (content, medias, users, cross-publishing)

– Features factorization (1 development for N websites)

• Content features : News, articles, folders, pictures, videos, …

• Community features : Comments, Blogs, Forums, Newsletters, …

• Information system features : LDAP, SSO, Web Services, Databases, …

– Cost optmization

• Implicit features factorization result

• main motivation ?

Introduction to multi-site projects

Page 3: eZ Publish & Deployment of a multi-site platform

3eZ Publish & Deployment of a multi-site platform

For what kind of projects ?

– Vertical Network organization

• International, national, local Websites

– Horizontal Network organization

• Thematics Websites

• Temporary publications (events)

– Product business model (white labelling)

• Website generator – Website factory (contents, blogs, forums, …)

• Low costs Websites resseling : « ready to use »

25/06/2009

Introduction to multi-site projects

Page 4: eZ Publish & Deployment of a multi-site platform

Montpellier le 25/06/2019

eZ Publish & Deployment of a multi-site platform

Summary :

Introduction to Multi-site projectsChapter 1 : Multi-site Deployment strategyChapter 2 : Case study : “The Website generator”Chapter 3 : Case study : CRT Picardie

Kaliop Any questions ? (FR / EN)

Gilles Guirand – Technical Director at Kaliop

Page 5: eZ Publish & Deployment of a multi-site platform

5eZ Publish & Deployment of a multi-site platform

Chapter 1 : Multi-site deployment strategy

25/06/2009

Website 1 Website 2 Website 3 Website N

Database 1

Siteaccess 1

Database 2

Database 3

Database N

Database Server

Siteaccess 2

Siteaccess 3

Siteaccess N

VAR 1 VAR 2 VAR 3 VAR N

• 1 eZ Installation

• 1 Database for each website

• 1 var directory for each website

• 1 siteaccess for each website (1 var & 1 database settings)

Page 6: eZ Publish & Deployment of a multi-site platform

6eZ Publish & Deployment of a multi-site platform 25/06/2009

Chapter 1 : Multi-site deployment strategy

Think about eZ Find 2.0 :

eZ Find (SolR) is able to index, query, cache and browse all your multi database contents from one eZ installation to another.

Advantages :– SPOF Database management : 1 database crash could not affect all

Websites

– 1 eZ Publish version management (extension sharing)

Common issues / possible solutions :– How to share content ?

• Users : External LDAP (LDAP syndication) – SSO if needed (CAS, LemonLDAP)

• News : RSS Syndication (native, or eZ Components ‘Feed’ for update support)

• Classic content : XML Syndication (eZ Components ‘Feed’ for update support)

• Massive & complex database : Extranet database, and eZ connectivity using ‘module’ (classic browsing), template operator (classic viewing), or a custom datatype (data relations)

Page 7: eZ Publish & Deployment of a multi-site platform

7eZ Publish & Deployment of a multi-site platform 25/06/2009

Chapter 1 : Multi-site deployment strategy

Website 1 Website 2 Website 3 Website N

Database

Siteaccess 1

Database Server

Siteaccess 2

Siteaccess 3

Siteaccess N

VAR

• 1 eZ Installation

• 1 Database for all websites

• 1 var directory for all websites

• 1 siteaccess for each website (1 subtree for each website)

Fail over

Subtree 1/2/X

Subtree 1/2/Y

Subtree 1/2/Z

Subtree 1/2/N

Page 8: eZ Publish & Deployment of a multi-site platform

8eZ Publish & Deployment of a multi-site platform 25/06/2009

Chapter 1 : Multi-site deployment strategy

Advantages :– Easy content sharing : Content, user, media, …

– Fits to website factory : Model storage, subtree generation

Common issues / possible solutions :– MySql SPOF : Fail-over (Master / Slave and Load Balancer)

– Multi front-end servers : Clustering, increase performance using stalecache (upgrade to eZ 4.1+)

– Developers issues (Next in Chaptre 2)

Page 9: eZ Publish & Deployment of a multi-site platform

9eZ Publish & Deployment of a multi-site platform 25/06/2009

Chapter 1 : Multi-site deployment strategy

How to make a choice between mono and multi database ?

Questions Mono database Multi database

Number of Website to generate ?

-100 +500

SPOF sequel Low High

Content, media, users & roles sharing proportion

+30% -10%

Think about mixing solutions, and sharing one « up-to-date » eZ Publish container :

« Mono database » for sharing your non strategic Websites (corporate, cash-less)

AND

« Specific databases » for your highly strategic & specifics Websites (e-Business)

Page 10: eZ Publish & Deployment of a multi-site platform

Montpellier le 25/06/2019

eZ Publish & Deployment of a multi-site platform

Summary :

Introduction to Multi-site projectsChapter 1 : Multi-site Deployment strategyChapter 2 : Case study : “The Website generator”Chapter 3 : Case study : CRT Picardie

Kaliop Any questions ? (FR / EN)

Gilles Guirand – Technical Director at Kaliop

Page 11: eZ Publish & Deployment of a multi-site platform

« Website models » organization :• Root

• Shared content (content / media)

• Referential 1

• Referential 2

• Website models

• Model 1 (« website_model_1 » content class)

• Default content tree

• Model 2 (« website_model_2 » content class)

• Default content tree

• Websites

• Mywebsite 1 (« website_model_1 » content class)

• Content tree (initialized from default content tree)

• Mywebsite 2 (« website_model_1 » content class)

• Content tree (initialized from default content tree)

• Mywebsite 3 (« website_model_2 » content class)

• Content tree (initialized from default content tree)

11eZ Publish & Deployment of a multi-site platform

Chapter 2 : Case study - “The Website generator”

25/06/2009

Subtree duplication

Shared content :

• « Object relations » use / « Add location » use

• Frequently use case : Extranet datasources imports

Page 12: eZ Publish & Deployment of a multi-site platform

12eZ Publish & Deployment of a multi-site platform

Typical « model » Content Class :– Web site project name : « My Web site »

– Title : « My Web site title »

– Baseline : « My baseline »

– META Description (Home page description) + to concatenate to subtree pages keywords

– META Keywords (Home page keywords) + to concatenate to subtree pages keywords

– Top banner (object relation to Flash media, or custom « diaporama » class)

– Logos (objects relation to Images medias)

– Etc.

25/06/2009

Chapter 2 : Case study - “The Website generator”

Each content class for each Website model

Creating a content class is more scalable for :

• Webmastering settings (what your webmaster has to manage ?)

• Policies managements (ParentClass)

• Templates management (content class override, forget « node_id »)

• And more…(you need to forget « node_id » for massive generator)

Page 13: eZ Publish & Deployment of a multi-site platform

13eZ Publish & Deployment of a multi-site platform

Website model scalability :– 2, 3 or 4 columns ?

– Fixed or free block settings (left, right, center) ?

– Optional features (sitemap, search engine, google sitemap, RSS) ?

How to define your « model » scalability ?– 1 model (classes, templates) for all Website prototypes ?

– 1 model (classes, templates) per Website prototype ?

25/06/2009

Chapter 2 : Case study - “The Website generator”

Think about managing settings, policies & features models inside your content classes :

• « News_folder » class node : (title / top text / items per page / …,)

• « Block » class node : (position=left / related objects / …)

• « Block » class node : (position=right / related objects / …)

• « News » class node…

• « Article_folder » class node : (title / top text / show table of content / …,)

• « Media_folder » class node : (title / top text / items per page / display=thumbnail / …,)

Think about eZ Flow

Page 14: eZ Publish & Deployment of a multi-site platform

14eZ Publish & Deployment of a multi-site platform

Front-End & Back-End Siteaccess

Root

– Website models

• Model 1

• Model 2

– Websites

• Mywebsite 1

• Mywebsite 2

• Mywebsite 3

25/06/2009

Chapter 2 : Case study - “The Website generator”

http://model1.mywebfactory.com

http://www.mywebsite2.com (french)

http://fr.mywebsite3.com (french)

http://en.mywebsite3.com (english)

http://es.mywebsite3.com (spanish)

FRONT-END Siteaccess

1 language = 1 siteaccess

http://admin.mywebsite2.com (fr)

http://admin.mywebsite3.com

BACK-END Siteaccess

Language settings (FR, EN, ES)

http://admin.mydomainname.com

http://model2.mywebfactory.com

http://www.mywebsite1.com (french)

http://admin.mywebsite1.com (fr)

Model preview

Page 15: eZ Publish & Deployment of a multi-site platform

15eZ Publish & Deployment of a multi-site platform

Extensions (design & settings) folder organization

25/06/2009

Chapter 2 : Case study - “The Website generator”

1 « Generic Web site » Extension, for N siteaccess

Hosting related settings

settings can change depending on the local, test or online

version (URL, Google Key Maps, emails, …)

Generic design (common templates)

CSS Design

CSS Design

en-website1

Fr-website1

www-website2

Page 16: eZ Publish & Deployment of a multi-site platform

16eZ Publish & Deployment of a multi-site platform

Step-by-step generation process, and common issues

25/06/2009

Chapter 2 : Case study - “The Website generator”

« Create New Website » Button

• Statics INPUT settings (INI) :

• ParentModelNodeID

• ParentTargetNodeID

• WebmasterUserGroupID

• WebmasterRoleID

• AnonymouseRoleID

• DesignList [ ]

• …

• Step-by-step generation PROCESS:

• Static & dynamic settings loading

• Content subtree model selection

• Content subtree model duplication

• Set the new Rootnode site_name / URL_Alias

• Create new Media folder («site_name »)

• Create news siteaccess (1 per language)

• EN-site_name

• FR-site_name

• Create Webmaster userGroup

• Set Webmaster role to the previous Webmaster UserGoup

• Rootnode restriction

• New Media Folder

• Common Folder

• Set all siteaccess settings «Settings/siteaccess/ »

• EN-site_name/content.ini.append.php

• EN-site_name/site.ini.append.php

• Set override settings «settings/override/site.ini.append.php»

• Clear specific caches (‘user’, ‘template’, ‘content’)

• Dynamic INPUT settings (from a custom form, or CLI parameters) :

• ModelID

• SearchEngineActivation

• PageLimit

• ContentMenuDetph

• …

Page 17: eZ Publish & Deployment of a multi-site platform

17eZ Publish & Deployment of a multi-site platform

Step-by-step generation process, and common issues

Common issues : manage content outside of the website subtree

How to display these « out of sub tree » node ?– Use view_parameters : http://mydomain.com/(shared)/node_1

How to manage these links (which URL) ?– Use a custom ezURL() template operator

25/06/2009

Chapter 2 : Case study - “The Website generator”

• Shared content (content / media)

• Node 1

• Websites

• Mywebsite 1 (http://mydomain.com)

• Object 2 (object relation to node 1)

Page 18: eZ Publish & Deployment of a multi-site platform

18eZ Publish & Deployment of a multi-site platform

Step-by-step generation process, and common issues

Common issues : manage content outside of the website sub tree

How to match these nodes in the search content results ?– eZ Find already indexed these objects

– Must store a list of objects to add as a filter in the request (Fetch eZ Find). Populate IDs through the custom ezURL Operator (or Workflow), and store IDs inside a custom Table.

Ask Paul B. to improve eZ Find ?

25/06/2009

Chapter 2 : Case study - “The Website generator”

• Shared content (content / media)

• Node 1

• Node 1.x

• Websites

• Mywebsite 1 (http://mydomain.com)

• Object 2 (object relation to node 1)

View :

Object 2

Node

Node 1.x

Page 19: eZ Publish & Deployment of a multi-site platform

Montpellier le 25/06/2019

eZ Publish & Deployment of a multi-site platform

Summary :

Introduction to Multi-site projectsChapter 1 : Multi-site Deployment strategyChapter 2 : Case study : “The Website generator”Chapter 3 : Case study : CRT Picardie

Kaliop Any questions ? (FR / EN)

Gilles Guirand – Technical Director at Kaliop

Page 20: eZ Publish & Deployment of a multi-site platform

20eZ Publish & Deployment of a multi-site platform

Chapter 3 : Case study - “CRT Picardie”

25/06/2009

Edit an existing Web site configuration

Create a new Website from content model 1

Websites management

Create a new Website from content model 2

… model N

List existing Websites and create a new one :

Page 21: eZ Publish & Deployment of a multi-site platform

21eZ Publish & Deployment of a multi-site platform 25/06/2009

Chapter 3 : Case study - “CRT Picardie”

Select your main language

Select your CSS StyleSheet

Customization (items number per page, columns, drop-down menu, …)

Contact email

Google maps key

Create a new website :

Page 22: eZ Publish & Deployment of a multi-site platform

22eZ Publish & Deployment of a multi-site platform 25/06/2009

Chapter 3 : Case study - “CRT Picardie”

Set the language URL Access :

http://en.mydomain.com

Set your website as PRIVATE (useful while under construction)

Create a new website : Add a language:

Page 23: eZ Publish & Deployment of a multi-site platform

23eZ Publish & Deployment of a multi-site platform 25/06/2009

Chapter 3 : Case study - “CRT Picardie”

Front-end exemple : Default design All features are availableDefault CSS StyleSheet

Page 24: eZ Publish & Deployment of a multi-site platform

24eZ Publish & Deployment of a multi-site platform 25/06/2009

Chapter 3 : Case study - “CRT Picardie”

Front-end example : http://jardinsenscene-picardie.com/

Custom CSS StyleSheetCustom slideshow, from eZ Publish media content (JavaScript)

Search engine

« Block » management

Google maps

Page 25: eZ Publish & Deployment of a multi-site platform

Montpellier le 25/06/2019

eZ Publish & Deployment of a multi-site platform

Summary :

Introduction to Multi-site projectsChapter 1 : Multi-site Deployment strategyChapter 2 : Case study : “The Website generator”Chapter 3 : Case study : CRT Picardie

Kaliop Any questions ? (FR / EN)

Gilles Guirand – Technical Director at Kaliop

Page 26: eZ Publish & Deployment of a multi-site platform

KALIOP > 4 POLES OF EXPERTISE

26

•Websites (internet / extranet / intranet) •Accessible websites (RGAA /Accessiweb)

•Platform multi-sites •Mobiles Websites e-business websites

•Customized Web applications • TMA Hosting

Your Web projects

AgencyPole

ProjectsPole

SupportPole

HostingPole

25/06/2009

eZ Publish & Deployment of a multi-site platform

Page 27: eZ Publish & Deployment of a multi-site platform

KALIOP > Key DATA

27

Creation2002

HeadquarterMontpellier

Team30 employees

2009 Turnover1 350 k€ (+26 % / an)

Experience Capitalization> 170 web projects

Customers85% in Ile de France

Average scale Projects

100 at 500 jours.hommes

Certifications eZPublish  Platinum 

CMMI current

Long-lasting agency; with a human-sized

National Expertise Recognized

strategic Web projects deployment and

exploitation

25/06/2009

eZ Publish & Deployment of a multi-site platform

Page 28: eZ Publish & Deployment of a multi-site platform

KALIOP > Main Customer

28

Environnement Tourism Industry

Formation Public finance Media & b to c

Sciences

25/06/2009

eZ Publish & Deployment of a multi-site platform

Page 29: eZ Publish & Deployment of a multi-site platform

Contacts

Commercials contacts

– Emmanuel MARTIN, Kaliop sales manager• [email protected] • +33 4 99 13 68 60

– Marie SANZ, sales engineer for Infrawan (hosting)• [email protected] • +33 4 99 13 68 60

2925/06/2009

eZ Publish & Deployment of a multi-site platform

Page 30: eZ Publish & Deployment of a multi-site platform

Kaliop (2009) :• 7 certified developers

• eZ Publish Silver Partner

• 50+ eZ Publish projects

Thanks to Kaliop Developer TeamGilles Guirand Blog

http://www.gandbox.fr

Any questions ? (FR / EN)