SlideShare a Scribd company logo
1 of 23
Download to read offline
Quelque part au 21e siècle
WAQ
Bien qu’en ligne
Votre site n’est probablement pas en production
À propos
• Web depuis 2003
• Mandats pour toute sorte de clients
• Dev frontend, dev backend, directeur
techno
• Maintenant s’occupe que les choses soient
up (un monde assez étrange)
• @marcboivin
• Cette présentation est basée sur des erreurs que j’observe depuis 2 ans;
• Si vous avez fait ces erreurs, sachez que je n’ai rien contre vous #biglove;
• Je déteste les PowerPoints (c’est d’ailleurs un Keynote);
• La structure n’est pas mon forte;
• Laissez-moi vous poser quelques questions afin d’ajuster mon « geek knob »
Avant de commencer
Alors vous êtes en ligne…
Jusqu’au moment où…
… vous n’êtes plus tant en
ligne :
Hacké
Erreur de code
Surcharge du serveur
Mise à jour ratée
L’internet est mort?
•  Votre site est sur une infrastructure qui va tomber;
• Sur un logiciel qui ne tolère pas les erreurs, dans un environnement ou les
données se corrompent toute seule;
• Et ou une durée de vie de 2 ans est plus qu’excellente.
Soyons brutalement honnêtes
Crédit @stephaniesalman pour l’inspiration
…sans offense
Date
Uptime et visibilité
Comment avoir un site en
productions (le gros minimum)
« If you’re not monitoring something it is out of control »
-Jonh Wikes, PSE, Google
• Au minimum : un script quelque part qui valide que le serveur ping
• ping www.example.com
• Pour un site vignette : un service comme server density
• On parle du DNS, de redirections et que les noms de domaines arrivent
quelque part
Surveillance du site
• Codes de retour
• Le titre de votre page
• Le temps de réponse
• Les entêtes HTTP
• Au minimum : un des 50 000 services SaaS, ou, un script bash dans une cron
Surveillance du serveur web
• Mises à jour de sécurité
• SURTOUT pas les mises à jours recommandées
• Valider pour les erreurs dans les mises à jour
• Je vous encourage à ne pas faire ça sur du Windows
• Au minimum : un cron, comme apt-cron qui vous envoi un mail
S’assurer des mises à jour
• Une vrai sauvegarde est :
• Complète
• Peut-être validée
• Utilisable par le client
• Adapté à son environnement (OS, contrainte spécifiques)
• Au minimum : un genre de rsync bancale (au moins il y aura quelque chose)
Une sauvegarde, une vraie
• HA (high availability : Haute disponibilité)
• Buzzword des 2-3 dernières années
• C’est le future
• Si vous avez des VRAIES web app, go for it
• Votre CMS N’EST PAS HA arrêtez, maintenant.
Oui mais pourquoi pas du HA?
• Si jamais vous faite du HA pareil :
• Fail hard (pas de demie état)
• Fail fast
• Don’t look back
Juste au cas
• Un git de production
• etckeeper
• binlog, wal ou autre pour votre BD
• UN README, utile et utilisable (we’ll find your secret sauce, might as well
share)
Donc des mécanismes de secours
« Stop writing tutorials -
start writing Vagrantfiles or Dockerfiles »
-Hendrik Volkmer
• Si votre CMS prends plus de 30 minutes à remonter X
• Si seulement votre fournisseur peut remonter votre site X
• Si déployer une mise à jour demande une planif en 

heures et non en minutes X
• Au minimum: un Vagrantfile avec des bash scripts
« Reproduisible »
• Il arrive quoi si ma BD plante
• Il arrive quoi si mon serveur web plante
• Il arrive quoi si ma cache plante
• Est-ce que mon site est affecté si Facebook est down?
• On fait quoi s’il y a une sauvegarde corrompue?
• Minimum : un petit « disaster recovery plan »
Prévisible
• Il y a des gens qui s’occupent de tout ça pour vous. On appel ça du managed
hosting (validé quand même un peu avant)
• Un webmestre devrait être au courant des mécanismes en place pour chacun de
ses aspects. Pas d’excuse! C’est votre site.
• Livrer quelque chose qui ne couvre pas ces aspects, en production, c’est juste
amateur, sorry mate!
• Le cloud transforme la manière de développer, mais on est pas encore là dans le
domaine du service, désolé à tous.
Petites pensées de la fin
Questions ?
Merci !

More Related Content

What's hot

ça marchait pourtant en dev
ça marchait pourtant en devça marchait pourtant en dev
ça marchait pourtant en devOlivier Doucet
 
10 Slides à lire avant de commencer le développement Android
10 Slides à lire avant de commencer le développement Android10 Slides à lire avant de commencer le développement Android
10 Slides à lire avant de commencer le développement AndroidAnthony Faucogney
 
Ting - Un datamapper PHP sous stéroïdes
Ting - Un datamapper PHP sous stéroïdesTing - Un datamapper PHP sous stéroïdes
Ting - Un datamapper PHP sous stéroïdesXavier Leune
 
Une mise en production à chaque heure de la journée
Une mise en production à chaque heure de la journéeUne mise en production à chaque heure de la journée
Une mise en production à chaque heure de la journéeElapse Technologies
 
Industrialisation des environnements de dev avec Puppet et Amazon (mais en fa...
Industrialisation des environnements de dev avec Puppet et Amazon (mais en fa...Industrialisation des environnements de dev avec Puppet et Amazon (mais en fa...
Industrialisation des environnements de dev avec Puppet et Amazon (mais en fa...Nicolas Silberman
 
Construire Des Applications Cloud Natives - SymfonyLive Paris 2016
Construire Des Applications Cloud Natives - SymfonyLive Paris 2016Construire Des Applications Cloud Natives - SymfonyLive Paris 2016
Construire Des Applications Cloud Natives - SymfonyLive Paris 2016Ori Pekelman
 
64 conneries que font les référenceurs avec WordPress
64 conneries que font les référenceurs avec WordPress64 conneries que font les référenceurs avec WordPress
64 conneries que font les référenceurs avec WordPressAurélien Denis
 
Présentation de CakePHP, 22/04/2010
Présentation de CakePHP, 22/04/2010Présentation de CakePHP, 22/04/2010
Présentation de CakePHP, 22/04/2010Guillaume Sautereau
 
Synchroniser ses applications plus rapidement avec du low-code
Synchroniser ses applications plus rapidement avec du low-codeSynchroniser ses applications plus rapidement avec du low-code
Synchroniser ses applications plus rapidement avec du low-codegplanchat
 
[FR] Les requêtes HTTP de l'extrême
[FR] Les requêtes HTTP de l'extrême[FR] Les requêtes HTTP de l'extrême
[FR] Les requêtes HTTP de l'extrêmeOVHcloud
 
Performance des sites dynamiques : une histoire de cache à tous les niveaux
Performance des sites dynamiques : une histoire de cache à tous les niveauxPerformance des sites dynamiques : une histoire de cache à tous les niveaux
Performance des sites dynamiques : une histoire de cache à tous les niveauxMy_Sic
 
Meetup WordPress Lyon #3 : Bien organiser son code dans WordPress.
Meetup WordPress Lyon #3 : Bien organiser son code dans WordPress.Meetup WordPress Lyon #3 : Bien organiser son code dans WordPress.
Meetup WordPress Lyon #3 : Bien organiser son code dans WordPress.wplyon
 
Installer Wordpress sous Wamp - Installing Wordpress with Wamp
Installer Wordpress sous Wamp - Installing Wordpress with WampInstaller Wordpress sous Wamp - Installing Wordpress with Wamp
Installer Wordpress sous Wamp - Installing Wordpress with WampRomanick Goby
 
Aurelien denis - 64 conneries que font les référenceurs avec WordPress
Aurelien denis - 64 conneries que font les référenceurs avec WordPressAurelien denis - 64 conneries que font les référenceurs avec WordPress
Aurelien denis - 64 conneries que font les référenceurs avec WordPressSEO CAMP
 
Introduction à WordPress sous Nginx
Introduction à WordPress sous NginxIntroduction à WordPress sous Nginx
Introduction à WordPress sous NginxMaxime Jobin
 
Motwin - cto crunch - 141205 - Optimiser la latence applicative mobile
Motwin -  cto crunch - 141205 - Optimiser la latence applicative mobileMotwin -  cto crunch - 141205 - Optimiser la latence applicative mobile
Motwin - cto crunch - 141205 - Optimiser la latence applicative mobileCommunity motwin
 

What's hot (20)

ça marchait pourtant en dev
ça marchait pourtant en devça marchait pourtant en dev
ça marchait pourtant en dev
 
10 Slides à lire avant de commencer le développement Android
10 Slides à lire avant de commencer le développement Android10 Slides à lire avant de commencer le développement Android
10 Slides à lire avant de commencer le développement Android
 
Ting - Un datamapper PHP sous stéroïdes
Ting - Un datamapper PHP sous stéroïdesTing - Un datamapper PHP sous stéroïdes
Ting - Un datamapper PHP sous stéroïdes
 
Une mise en production à chaque heure de la journée
Une mise en production à chaque heure de la journéeUne mise en production à chaque heure de la journée
Une mise en production à chaque heure de la journée
 
Industrialisation des environnements de dev avec Puppet et Amazon (mais en fa...
Industrialisation des environnements de dev avec Puppet et Amazon (mais en fa...Industrialisation des environnements de dev avec Puppet et Amazon (mais en fa...
Industrialisation des environnements de dev avec Puppet et Amazon (mais en fa...
 
Construire Des Applications Cloud Natives - SymfonyLive Paris 2016
Construire Des Applications Cloud Natives - SymfonyLive Paris 2016Construire Des Applications Cloud Natives - SymfonyLive Paris 2016
Construire Des Applications Cloud Natives - SymfonyLive Paris 2016
 
64 conneries que font les référenceurs avec WordPress
64 conneries que font les référenceurs avec WordPress64 conneries que font les référenceurs avec WordPress
64 conneries que font les référenceurs avec WordPress
 
Présentation de CakePHP, 22/04/2010
Présentation de CakePHP, 22/04/2010Présentation de CakePHP, 22/04/2010
Présentation de CakePHP, 22/04/2010
 
Synchroniser ses applications plus rapidement avec du low-code
Synchroniser ses applications plus rapidement avec du low-codeSynchroniser ses applications plus rapidement avec du low-code
Synchroniser ses applications plus rapidement avec du low-code
 
[FR] Les requêtes HTTP de l'extrême
[FR] Les requêtes HTTP de l'extrême[FR] Les requêtes HTTP de l'extrême
[FR] Les requêtes HTTP de l'extrême
 
CasperJS
CasperJSCasperJS
CasperJS
 
Service Workers
Service WorkersService Workers
Service Workers
 
Performance des sites dynamiques : une histoire de cache à tous les niveaux
Performance des sites dynamiques : une histoire de cache à tous les niveauxPerformance des sites dynamiques : une histoire de cache à tous les niveaux
Performance des sites dynamiques : une histoire de cache à tous les niveaux
 
Meetup WordPress Lyon #3 : Bien organiser son code dans WordPress.
Meetup WordPress Lyon #3 : Bien organiser son code dans WordPress.Meetup WordPress Lyon #3 : Bien organiser son code dans WordPress.
Meetup WordPress Lyon #3 : Bien organiser son code dans WordPress.
 
WebSocket avec Java EE 7
WebSocket avec Java EE 7WebSocket avec Java EE 7
WebSocket avec Java EE 7
 
Présentation de Node.js
Présentation de Node.jsPrésentation de Node.js
Présentation de Node.js
 
Installer Wordpress sous Wamp - Installing Wordpress with Wamp
Installer Wordpress sous Wamp - Installing Wordpress with WampInstaller Wordpress sous Wamp - Installing Wordpress with Wamp
Installer Wordpress sous Wamp - Installing Wordpress with Wamp
 
Aurelien denis - 64 conneries que font les référenceurs avec WordPress
Aurelien denis - 64 conneries que font les référenceurs avec WordPressAurelien denis - 64 conneries que font les référenceurs avec WordPress
Aurelien denis - 64 conneries que font les référenceurs avec WordPress
 
Introduction à WordPress sous Nginx
Introduction à WordPress sous NginxIntroduction à WordPress sous Nginx
Introduction à WordPress sous Nginx
 
Motwin - cto crunch - 141205 - Optimiser la latence applicative mobile
Motwin -  cto crunch - 141205 - Optimiser la latence applicative mobileMotwin -  cto crunch - 141205 - Optimiser la latence applicative mobile
Motwin - cto crunch - 141205 - Optimiser la latence applicative mobile
 

Viewers also liked

Leyes aprobadas-tres-años-2008-2011
Leyes aprobadas-tres-años-2008-2011Leyes aprobadas-tres-años-2008-2011
Leyes aprobadas-tres-años-2008-2011Asamblea Nacional
 
Scrum day 2013 sponsoring package
Scrum day 2013 sponsoring packageScrum day 2013 sponsoring package
Scrum day 2013 sponsoring packageXavier Warzee
 
Informe - Proyecto de Ley de Creación de la Universidad Yachay
Informe - Proyecto de Ley de Creación de la Universidad YachayInforme - Proyecto de Ley de Creación de la Universidad Yachay
Informe - Proyecto de Ley de Creación de la Universidad YachayAsamblea Nacional
 
Quelques concepts de service MesInfos - Décembre 2013
Quelques concepts de service MesInfos - Décembre 2013Quelques concepts de service MesInfos - Décembre 2013
Quelques concepts de service MesInfos - Décembre 2013Fing
 
2 Expo De Compo IX
2 Expo De Compo IX2 Expo De Compo IX
2 Expo De Compo IXguestba6c50
 
Estimation d’harmoniques dans un bruit multiplicatif à valeurs complexes
Estimation d’harmoniques dans un bruit multiplicatif à valeurs complexesEstimation d’harmoniques dans un bruit multiplicatif à valeurs complexes
Estimation d’harmoniques dans un bruit multiplicatif à valeurs complexesCynthia Pozun
 
PresentacióN2
PresentacióN2PresentacióN2
PresentacióN2Isidorogg
 
Torsion ventriculaire gauche par IRM
Torsion ventriculaire gauche par IRMTorsion ventriculaire gauche par IRM
Torsion ventriculaire gauche par IRMcardiopixel
 
Agile france 2013 - Dette Technique
Agile france 2013 - Dette TechniqueAgile france 2013 - Dette Technique
Agile france 2013 - Dette TechniqueFrançois Wauquier
 
Quand les données deviennent "autonomes"
Quand les données deviennent "autonomes"Quand les données deviennent "autonomes"
Quand les données deviennent "autonomes"Fing
 
Shibo Et Wen
Shibo Et WenShibo Et Wen
Shibo Et Wenzhymonica
 

Viewers also liked (20)

Leyes aprobadas-tres-años-2008-2011
Leyes aprobadas-tres-años-2008-2011Leyes aprobadas-tres-años-2008-2011
Leyes aprobadas-tres-años-2008-2011
 
Scrum day 2013 sponsoring package
Scrum day 2013 sponsoring packageScrum day 2013 sponsoring package
Scrum day 2013 sponsoring package
 
Gandhi
Gandhi Gandhi
Gandhi
 
Informe - Proyecto de Ley de Creación de la Universidad Yachay
Informe - Proyecto de Ley de Creación de la Universidad YachayInforme - Proyecto de Ley de Creación de la Universidad Yachay
Informe - Proyecto de Ley de Creación de la Universidad Yachay
 
Quelques concepts de service MesInfos - Décembre 2013
Quelques concepts de service MesInfos - Décembre 2013Quelques concepts de service MesInfos - Décembre 2013
Quelques concepts de service MesInfos - Décembre 2013
 
2 Expo De Compo IX
2 Expo De Compo IX2 Expo De Compo IX
2 Expo De Compo IX
 
Estimation d’harmoniques dans un bruit multiplicatif à valeurs complexes
Estimation d’harmoniques dans un bruit multiplicatif à valeurs complexesEstimation d’harmoniques dans un bruit multiplicatif à valeurs complexes
Estimation d’harmoniques dans un bruit multiplicatif à valeurs complexes
 
Chocolat artistique
Chocolat artistiqueChocolat artistique
Chocolat artistique
 
PresentacióN2
PresentacióN2PresentacióN2
PresentacióN2
 
Slides efquel2
Slides efquel2Slides efquel2
Slides efquel2
 
Jawad
JawadJawad
Jawad
 
¿Cómo funciona Google?
¿Cómo funciona Google?¿Cómo funciona Google?
¿Cómo funciona Google?
 
Torsion ventriculaire gauche par IRM
Torsion ventriculaire gauche par IRMTorsion ventriculaire gauche par IRM
Torsion ventriculaire gauche par IRM
 
Agile france 2013 - Dette Technique
Agile france 2013 - Dette TechniqueAgile france 2013 - Dette Technique
Agile france 2013 - Dette Technique
 
Bureaux google
Bureaux googleBureaux google
Bureaux google
 
Paris desde el aire
Paris desde el aireParis desde el aire
Paris desde el aire
 
Cabe
CabeCabe
Cabe
 
Quand les données deviennent "autonomes"
Quand les données deviennent "autonomes"Quand les données deviennent "autonomes"
Quand les données deviennent "autonomes"
 
Auténtico Amor
Auténtico AmorAuténtico Amor
Auténtico Amor
 
Shibo Et Wen
Shibo Et WenShibo Et Wen
Shibo Et Wen
 

Similar to Bien qu'en ligne votre site web n'est probablement pas en production

Accroître la sécurité de son site internet et de Joomla! plus spécifiquement
Accroître la sécurité de son site internet et de Joomla! plus spécifiquementAccroître la sécurité de son site internet et de Joomla! plus spécifiquement
Accroître la sécurité de son site internet et de Joomla! plus spécifiquementChristophe Avonture
 
Javascript as a first programming language : votre IC prête pour la révolution !
Javascript as a first programming language : votre IC prête pour la révolution !Javascript as a first programming language : votre IC prête pour la révolution !
Javascript as a first programming language : votre IC prête pour la révolution !VISEO
 
Formation Wordpress 3
Formation Wordpress 3Formation Wordpress 3
Formation Wordpress 3robinparisi
 
10 conseils pour booster les performances de votre site sous WordPress
10 conseils pour booster les performances de votre site sous WordPress10 conseils pour booster les performances de votre site sous WordPress
10 conseils pour booster les performances de votre site sous WordPressAurélien Denis
 
Un site web rapide ?
Un site web rapide ? Un site web rapide ?
Un site web rapide ? haricot
 
Le meilleur pour votre site WordPress
Le meilleur pour votre site WordPressLe meilleur pour votre site WordPress
Le meilleur pour votre site WordPressAurélien Denis
 
Optimiser réellement le référencement naturel de WordPress
Optimiser réellement le référencement naturel de WordPressOptimiser réellement le référencement naturel de WordPress
Optimiser réellement le référencement naturel de WordPressDaniel Roch - SeoMix
 
La mise en cache et ses secrets
La mise en cache et ses secretsLa mise en cache et ses secrets
La mise en cache et ses secretsAymeric Bouillat
 
Un site de collectivité sur WordPress ? Méthodes et retours d'XP
Un site de collectivité sur WordPress ? Méthodes et retours d'XPUn site de collectivité sur WordPress ? Méthodes et retours d'XP
Un site de collectivité sur WordPress ? Méthodes et retours d'XPatelier111
 
Sécuriser un site WordPress - Semaine du web
Sécuriser un site WordPress - Semaine du webSécuriser un site WordPress - Semaine du web
Sécuriser un site WordPress - Semaine du webNour El Houda
 
LoadTime & SEO - Erlé Alberton
LoadTime & SEO - Erlé AlbertonLoadTime & SEO - Erlé Alberton
LoadTime & SEO - Erlé AlbertonWeLoveSEO
 
We❤️SEO 2019 : WebPerf et SEO
We❤️SEO 2019 : WebPerf et SEOWe❤️SEO 2019 : WebPerf et SEO
We❤️SEO 2019 : WebPerf et SEOErlé Alberton
 
Au coeur du framework .net 4.5.1
Au coeur du framework .net 4.5.1Au coeur du framework .net 4.5.1
Au coeur du framework .net 4.5.1Cellenza
 
2. Prestashop - Installation
2. Prestashop - Installation2. Prestashop - Installation
2. Prestashop - InstallationAgence Webup
 
Comment Rue Du Commerce est devenu le site e-commerce le plus rapide de France ?
Comment Rue Du Commerce est devenu le site e-commerce le plus rapide de France ?Comment Rue Du Commerce est devenu le site e-commerce le plus rapide de France ?
Comment Rue Du Commerce est devenu le site e-commerce le plus rapide de France ?Fasterize
 
Supports de cours Fit4Digital future - CMS
Supports de cours Fit4Digital future - CMSSupports de cours Fit4Digital future - CMS
Supports de cours Fit4Digital future - CMSAnnabelle Buffart
 
Déploiement et débogage à distance
Déploiement et débogage à distanceDéploiement et débogage à distance
Déploiement et débogage à distancepprem
 

Similar to Bien qu'en ligne votre site web n'est probablement pas en production (20)

Accroître la sécurité de son site internet et de Joomla! plus spécifiquement
Accroître la sécurité de son site internet et de Joomla! plus spécifiquementAccroître la sécurité de son site internet et de Joomla! plus spécifiquement
Accroître la sécurité de son site internet et de Joomla! plus spécifiquement
 
Javascript as a first programming language : votre IC prête pour la révolution !
Javascript as a first programming language : votre IC prête pour la révolution !Javascript as a first programming language : votre IC prête pour la révolution !
Javascript as a first programming language : votre IC prête pour la révolution !
 
Formation Wordpress 3
Formation Wordpress 3Formation Wordpress 3
Formation Wordpress 3
 
10 conseils pour booster les performances de votre site sous WordPress
10 conseils pour booster les performances de votre site sous WordPress10 conseils pour booster les performances de votre site sous WordPress
10 conseils pour booster les performances de votre site sous WordPress
 
Un site web rapide ?
Un site web rapide ? Un site web rapide ?
Un site web rapide ?
 
Le meilleur pour votre site WordPress
Le meilleur pour votre site WordPressLe meilleur pour votre site WordPress
Le meilleur pour votre site WordPress
 
WordPress Jurassique
WordPress JurassiqueWordPress Jurassique
WordPress Jurassique
 
Optimiser réellement le référencement naturel de WordPress
Optimiser réellement le référencement naturel de WordPressOptimiser réellement le référencement naturel de WordPress
Optimiser réellement le référencement naturel de WordPress
 
La mise en cache et ses secrets
La mise en cache et ses secretsLa mise en cache et ses secrets
La mise en cache et ses secrets
 
Un site de collectivité sur WordPress ? Méthodes et retours d'XP
Un site de collectivité sur WordPress ? Méthodes et retours d'XPUn site de collectivité sur WordPress ? Méthodes et retours d'XP
Un site de collectivité sur WordPress ? Méthodes et retours d'XP
 
Sécuriser un site WordPress - Semaine du web
Sécuriser un site WordPress - Semaine du webSécuriser un site WordPress - Semaine du web
Sécuriser un site WordPress - Semaine du web
 
Sécuriser un site Wordpress
Sécuriser un site WordpressSécuriser un site Wordpress
Sécuriser un site Wordpress
 
LoadTime & SEO - Erlé Alberton
LoadTime & SEO - Erlé AlbertonLoadTime & SEO - Erlé Alberton
LoadTime & SEO - Erlé Alberton
 
We❤️SEO 2019 : WebPerf et SEO
We❤️SEO 2019 : WebPerf et SEOWe❤️SEO 2019 : WebPerf et SEO
We❤️SEO 2019 : WebPerf et SEO
 
Optimisation de son site web
Optimisation de son site webOptimisation de son site web
Optimisation de son site web
 
Au coeur du framework .net 4.5.1
Au coeur du framework .net 4.5.1Au coeur du framework .net 4.5.1
Au coeur du framework .net 4.5.1
 
2. Prestashop - Installation
2. Prestashop - Installation2. Prestashop - Installation
2. Prestashop - Installation
 
Comment Rue Du Commerce est devenu le site e-commerce le plus rapide de France ?
Comment Rue Du Commerce est devenu le site e-commerce le plus rapide de France ?Comment Rue Du Commerce est devenu le site e-commerce le plus rapide de France ?
Comment Rue Du Commerce est devenu le site e-commerce le plus rapide de France ?
 
Supports de cours Fit4Digital future - CMS
Supports de cours Fit4Digital future - CMSSupports de cours Fit4Digital future - CMS
Supports de cours Fit4Digital future - CMS
 
Déploiement et débogage à distance
Déploiement et débogage à distanceDéploiement et débogage à distance
Déploiement et débogage à distance
 

Bien qu'en ligne votre site web n'est probablement pas en production

  • 1. Quelque part au 21e siècle WAQ Bien qu’en ligne Votre site n’est probablement pas en production
  • 2. À propos • Web depuis 2003 • Mandats pour toute sorte de clients • Dev frontend, dev backend, directeur techno • Maintenant s’occupe que les choses soient up (un monde assez étrange) • @marcboivin
  • 3. • Cette présentation est basée sur des erreurs que j’observe depuis 2 ans; • Si vous avez fait ces erreurs, sachez que je n’ai rien contre vous #biglove; • Je déteste les PowerPoints (c’est d’ailleurs un Keynote); • La structure n’est pas mon forte; • Laissez-moi vous poser quelques questions afin d’ajuster mon « geek knob » Avant de commencer
  • 4. Alors vous êtes en ligne…
  • 6. … vous n’êtes plus tant en ligne : Hacké Erreur de code Surcharge du serveur Mise à jour ratée L’internet est mort?
  • 7. •  Votre site est sur une infrastructure qui va tomber; • Sur un logiciel qui ne tolère pas les erreurs, dans un environnement ou les données se corrompent toute seule; • Et ou une durée de vie de 2 ans est plus qu’excellente. Soyons brutalement honnêtes
  • 8. Crédit @stephaniesalman pour l’inspiration …sans offense
  • 9. Date Uptime et visibilité Comment avoir un site en productions (le gros minimum)
  • 10. « If you’re not monitoring something it is out of control » -Jonh Wikes, PSE, Google
  • 11. • Au minimum : un script quelque part qui valide que le serveur ping • ping www.example.com • Pour un site vignette : un service comme server density • On parle du DNS, de redirections et que les noms de domaines arrivent quelque part Surveillance du site
  • 12. • Codes de retour • Le titre de votre page • Le temps de réponse • Les entêtes HTTP • Au minimum : un des 50 000 services SaaS, ou, un script bash dans une cron Surveillance du serveur web
  • 13. • Mises à jour de sécurité • SURTOUT pas les mises à jours recommandées • Valider pour les erreurs dans les mises à jour • Je vous encourage à ne pas faire ça sur du Windows • Au minimum : un cron, comme apt-cron qui vous envoi un mail S’assurer des mises à jour
  • 14.
  • 15. • Une vrai sauvegarde est : • Complète • Peut-être validée • Utilisable par le client • Adapté à son environnement (OS, contrainte spécifiques) • Au minimum : un genre de rsync bancale (au moins il y aura quelque chose) Une sauvegarde, une vraie
  • 16. • HA (high availability : Haute disponibilité) • Buzzword des 2-3 dernières années • C’est le future • Si vous avez des VRAIES web app, go for it • Votre CMS N’EST PAS HA arrêtez, maintenant. Oui mais pourquoi pas du HA?
  • 17. • Si jamais vous faite du HA pareil : • Fail hard (pas de demie état) • Fail fast • Don’t look back Juste au cas
  • 18. • Un git de production • etckeeper • binlog, wal ou autre pour votre BD • UN README, utile et utilisable (we’ll find your secret sauce, might as well share) Donc des mécanismes de secours
  • 19. « Stop writing tutorials - start writing Vagrantfiles or Dockerfiles » -Hendrik Volkmer
  • 20. • Si votre CMS prends plus de 30 minutes à remonter X • Si seulement votre fournisseur peut remonter votre site X • Si déployer une mise à jour demande une planif en 
 heures et non en minutes X • Au minimum: un Vagrantfile avec des bash scripts « Reproduisible »
  • 21. • Il arrive quoi si ma BD plante • Il arrive quoi si mon serveur web plante • Il arrive quoi si ma cache plante • Est-ce que mon site est affecté si Facebook est down? • On fait quoi s’il y a une sauvegarde corrompue? • Minimum : un petit « disaster recovery plan » Prévisible
  • 22. • Il y a des gens qui s’occupent de tout ça pour vous. On appel ça du managed hosting (validé quand même un peu avant) • Un webmestre devrait être au courant des mécanismes en place pour chacun de ses aspects. Pas d’excuse! C’est votre site. • Livrer quelque chose qui ne couvre pas ces aspects, en production, c’est juste amateur, sorry mate! • Le cloud transforme la manière de développer, mais on est pas encore là dans le domaine du service, désolé à tous. Petites pensées de la fin