123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243 |
- <!doctype html>
- <html lang="en">
- <head>
- <meta charset="utf-8">
- <title>reveal.js - The HTML Presentation Framework</title>
- <meta name="description" content="A framework for easily creating beautiful presentations using HTML">
- <meta name="author" content="Hakim El Hattab" />
- <meta name="apple-mobile-web-app-capable" content="yes" />
- <meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
- <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
- <link rel="stylesheet" href="css/reveal.min.css">
- <link rel="stylesheet" href="css/theme/osi.css" id="theme">
- <!-- For syntax highlighting -->
- <link rel="stylesheet" href="lib/css/zenburn.css" />
- <!-- If the query includes 'print-pdf', use the PDF print sheet -->
- <script>
- document.write( '<link rel="stylesheet" href="css/print/' + ( window.location.search.match( /print-pdf/gi ) ? 'pdf' : 'paper' ) + '.css" type="text/css" media="print">' );
- </script>
- <!--[if lt IE 9]>
- <script src="lib/js/html5shiv.js"></script>
- <![endif]-->
- </head>
- <body>
- <div class="reveal">
- <!-- Any section element inside of this container is displayed as a slide -->
- <div class="slides">
-
- <section>
- <img src="osinet.png" class="cover-img" style="height: 150px;" />
- <div class="cover-osi">
- <h1>Drupal en production</h1>
- <p></p>
- </div>
- </section>
-
- <section>
- <section>
- <h2>Hosting</h2>
- <h4 class="left">Besoins spécifiques de Drupal</h4>
- <ul class="left">
- <li>PHP : APC cache d'opcodes, mémoire, ligne de commande</li>
- <li>SGBD : charge, serveurs supportés, master/slave vs multi-master, backup</li>
- <li>Accès fichier : Web servers, SGBD</li>
- <li>Caches : Varnish, Memcached, APC User, CDN</li>
- <li>Serveurs additionnels : recherche (SOLR et autres), NoSQL (MongoDB / Redis)</li>
- </ul>
- </section>
- <section>
- <h3>Hosting</h3>
- <h4 class="left">Besoins liés au professionnel</h4>
- <ul class="left">
- <li>Poste Dév</li>
- <li>Intégration</li>
- <li>Préproduction</li>
- <li>Production</li>
- <li>Instance volatiles (tests)</li>
- </ul>
- </section>
- <section>
- <h3>Hosting</h3>
- <h4 class="left">Typologie</h4>
- <ul class="left">
- <li>Low-cost : mutualisé, VPS</li>
- <li>Cloud public : IaaS (AWS, Rackspace, Heroku), PaaS (Acquia Drupal, Pantheon)</li>
- <li>Professionnel : dédié, cloud privé, cloud hybride, infra propre</li>
- </ul>
- <h4 class="left">Prestataires pro</h4>
- <ul class="left">
- <li>Hébérgeur : MIPS connecté, transit (redondance), climatisation, électricité</li>
- <li>Infogérant : bon fonctionnement, support middleware</li>
- <li>CDN</li>
- </ul>
- </section>
- </section>
- <section>
- <section>
- <h2>Garantie ou maintenance</h2>
- <h4 class="left">Garantie</h4>
- <ul class="left">
- <li>Généralement incluse
- <ul>
- <li>CAPEX</li>
- <li>Pas obligatoire entre pros</li>
- <li>Couramment 30–90 jours</li>
- </ul>
- </li>
- <li>Contenu :
- <ul>
- <li>Corrections anomalies</li>
- <li>Compatibilité MAJ mineures core + contrib</li>
- <li>N'inclut pas les MAJ core + contrib</li>
- </ul>
- </li>
- </ul>
- </section>
- <section>
- <h3>Garantie ou maintenance</h3>
- <h4 class="left">Maintenance</h4>
- <ul class="left">
- <li>Optionnelle : OPEX, récurrent</li>
- <li>Contenu
- <ul>
- <li>Réactif : minimum les MÀJ de sécurité et comptabilité, courant toutes les MÀJ mineures</li>
- <li>Proactif : monitoring (baseline, quantitatif, projectif)</li>
- <li>Évolutif : MÀJ majeures (7.x → 8.x), branches n+1, refactoring</li>
- </ul>
- </li>
- <li>Réassurance
- <ul>
- <li>Contact du marché</li>
- <li>Formalisation</li>
- <li>Entretien des sources</li>
- <li>Entretien de la doc</li>
- </ul>
- </li>
- </ul>
- </section>
- </section>
- <section>
- <section>
- <h2>Après la V1</h2>
- <h4 class="left">Les MÀJ Drupal</h4>
- <ul class="left">
- <li>Security Advisories</li>
- <li>Releases ordinaires D7</li>
- <li>Contributions (Dev en dév, stable en prod)</li>
- <li>D7 → D8</li>
- </ul>
- </section>
- <section>
- <h3>Après la V1</h3>
- <h4 class="left">Suivi</h4>
- <ul class="left">
- <li>Intégrité : fingerprinting</li>
- <li>Métriques techniques : baseline, alertes</li>
- <li>SEO : Analytics
- <ul>
- <li>Vanity Metrics !</li>
- <li>Conversions, CA ...</li>
- <li>Tiers</li>
- </ul>
- </li>
- </ul>
- </section>
- <section>
- <h3>Après la V1</h3>
- <h4 class="left">Changer</h4>
- <ul class="left">
- <li>Révolution</li>
- <li>Incrémental</li>
- <li>A/B</li>
- <li>Feature flip</li>
- <li>Git à la rescousse</li>
- </ul>
- </section>
- </section>
-
- <section>
- <img src="osinet.png" class="cover-img" style="height: 150px;" />
- <div class="cover-osi">
- <h3>Merci !</h3>
- <img src="images/druplicon-glow.png" class="cover-img" style="height: 200px;" />
- </div>
- </section>
-
- <section>
- <h2 class="people" style="text-align: center; margin-bottom: 0.8em;">L'équipe OSInet</h2>
-
- <table class="people">
- <tr class="blue">
- <td>Frédéric G. Marand</td>
- <td class="td-middle">Outi Munter</td>
- <td>Brigitte Taïeb</td>
- </tr>
- <tr>
- <td><img src="images/fgm-dublin.jpg" class="cover-img"></td>
- <td class="td-middle"><img src="images/outi-2.jpg" class="cover-img"></td>
- <td><img src="images/brigitte.jpg" class="cover-img"></td>
- </tr>
- <tr style="font-size: 0.78em; opacity: 0.8;">
- <td>Cofondateur et gérant – et spécialiste en programmation système et réseau</td>
- <td class="td-middle">Chef de projet, graphiste et thémeuse</td>
- <td>Directrice commerciale</td>
- </tr>
- </table>
-
- <p style="text-align: center;"><a href="http://www.osinet.fr" style="font-size: 1.05em; margin-left: 0;">www.osinet.fr</a></p>
-
- </section>
-
-
- </div>
-
- <div class="footer"><img src="osinet.png" alt="logo" class="logo" height="70"><span class="footnote">Drupal en production / DGTD / © 2013 OSInet / Licence CC-BY-SA 2.0 France</span></div>
- </div>
- <script src="lib/js/head.min.js"></script>
- <script src="js/reveal.min.js"></script>
- <script>
- // Full list of configuration options available here:
- // https://github.com/hakimel/reveal.js#configuration
- Reveal.initialize({
- controls: true,
- progress: true,
- history: true,
- center: false,
- theme: Reveal.getQueryHash().theme, // available themes are in /css/theme
- transition: Reveal.getQueryHash().transition || 'default', // default/cube/page/concave/zoom/linear/fade/none
- // Optional libraries used to extend on reveal.js
- dependencies: [
- { src: 'lib/js/classList.js', condition: function() { return !document.body.classList; } },
- { src: 'plugin/markdown/marked.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } },
- { src: 'plugin/markdown/markdown.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } },
- { src: 'plugin/highlight/highlight.js', async: true, callback: function() { hljs.initHighlightingOnLoad(); } },
- { src: 'plugin/zoom-js/zoom.js', async: true, condition: function() { return !!document.body.classList; } },
- { src: 'plugin/notes/notes.js', async: true, condition: function() { return !!document.body.classList; } }
- ]
- });
- </script>
- </body>
- </html>
|