1 / 29

Zope : environnement professionnel

Zope : environnement professionnel. Steve Giraud Pentila 02/11/2004. Zope : Environnement professionnel. CV de Zope Lettre de motivation Entretien Mise en concurrence. CV de Zope. Etat civil Né en 1996 à Digital Creation Fils de Jim Fulton Formation Programmation OO Base de donnée

maddy
Télécharger la présentation

Zope : environnement professionnel

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Zope : environnement professionnel Steve Giraud Pentila 02/11/2004

  2. Zope : Environnement professionnel • CV de Zope • Lettre de motivation • Entretien • Mise en concurrence

  3. CV de Zope • Etat civil • Né en 1996 à Digital Creation • Fils de Jim Fulton • Formation • Programmation OO • Base de donnée • Transaction • Sécurité • Divers Langage de template

  4. CV de Zope • Stages • OTAN • SGI • Ministère de l’intérieur • Ministère de l’éducation • ENT Universitaire (Savoie,Bristol, ENS Lyon …)

  5. CV de Zope • Expérience professionnelle • Cap Gemini • Unilog • Atos Origin • Ingeniweb • Pentila • Logilab • Pilot system • …

  6. CV de Zope • Recommandation • "Parmi tous les projets Open Source chez Cap Gemini Ernst & Young en France, la plus grande partie est basée sur Zope", dit Mickael Remond, responsable de l'Open Source chez Cap Gemini Ernst & Young.

  7. Lettre de motivation • Qualité de l’OO • Logiciel libre • Réutilisabilité • Scalabilité • Alternative

  8. Entretien • Comment réagiriez vous si vous étiez confronté à un usage intensif ? Vous avez 1 heure …

  9. Problématique • Compromis en fonction des priorités du client entre : • Performance • Évolutivité • Disponibilité • Sécurité (ici intégrité des données) • Coût

  10. Performance : Distribuer les responsabilités • Principe de distribution • Séparer les responsabilités sur différents serveurs • Architecture n-tiers • Présentation web • Traitement • Donnée • Gérer au mieux le type de matériel (ex. SMP)

  11. Performance : Clusturiser • Principe de clusturisation • Augmenter le nombre de serveurs pour une même responsabilité • 3 niveaux de clusturisation • Présentation • Traitement • Donnée

  12. Et Zope dans tout ça • ZEO : Zope Entreprise Object

  13. Performance : cache • Système de cache • Stocker pour éviter le calcul et/ou le transfert • 3 niveaux de cache : • Cache de donnée • Cache applicatif • Cache externe

  14. Et Zope dans tout ça ? • Cache • Support ICP (Internet Cache Protocol) • RAM Cache Manager • HTTP Cache Manager • Cache Storage ZODB

  15. Performance : Équilibrer les charges • Principe d’équilibrage • Répartir les charges sur les serveurs d’un même niveau en fonction de leur disponibilité • Plusieurs tactiques d’équilibrage • En fonction de variable • En fonction de poids • Round robin • ICP

  16. Et Zope dans tout ça • LoadBalancing • Squid + ICP • ZEO : Zope Entreprise Object • Mountable Storage

  17. Performance : Niveau application • Optimisez en dernier mais optimisez • Profilez avant d’optimiser • Limitez le nombre de requête au serveur de traitement (éléments statiques…) • Poids des éléments • CSS

  18. Evolutivité • Principe • Augmenter simplement les capacités du système • Des règles • Le nombre de couches doit pouvoir être augmenté • Le nombre de composants de chaque couche doit pouvoir être augmenté • Chaque composant doit pouvoir être remplacé • Important : Les composants d’une même couche doivent s’ignorer

  19. Et Zope dans tout ça • Evolutivité • Squid + ICP • ZEO • Mise en place de réplication des données • SAN

  20. Disponibilité • Principe • Le service doit être disponible en permanence • Des règles • Aucun point de failure unique • Les composants doivent être tous de bonne qualité • Les composants d’une couche doivent gérer la failure d’un composant de la couche inférieure

  21. Et Zope dans tout ça • Intérêt d’ICP + Squid • Nécessité de ZEO + Réplicats readonly • Nécessité de Mountable storage • Problème : ZEO Main  Solution matériel

  22. Sécurité des données • Principe • L’intégrité des données doit être assuré même lors d’usage simultané important • Utiliser des systèmes transactionnels ACID • Atomicité (toutes les actions sont réalisées ou aucune ne l'est ) • Consistance (les transformations apportées par une transaction préservent certains invariants : consistant avant  consistant après) • Isolation (les effets d'une transaction ne sont visibles de l'extérieur que si elle peut être totalement exécutée) • Durabilité (une fois une transaction validée, quoiqu'il puisse arriver, ses effets deviennent permanents et visibles de l'extérieur.)

  23. Et Zope dans tout ça • ZODB système transactionnel ACID • get_transaction.commit() • ZEO : Idem avec plusieurs serveurs • Choisir le bon type de storage • Fichier (FileStorage) • Arborescence de fichiers (DirectoryStorage) • Base de données • Adaptable Persistence Engine • Système de fichiers ReiserFS par exemple : • Journalisation, • Rapidité d’accès car il est basé sur les btree pour accéder aux données, • Robustesse, • Capacité de gérer de grosses volumétries (en nombre de fichier et en taille de fichier

  24. Coût • Principe • Faire au moins cher • Possibilité d’économie • Licence logiciel • Hardware vs Software • Importance de l’évolutivité !

  25. Et Zope dans tout ça … • Coût • Logiciel libre (Squid, Zope, SGBD, Linux …) • Squid vs Switch layer 4

  26. Finalement www Zope1 Zope2 Zope n

  27. Mise en concurrence • SUN  Java  J2EE • Microsoft  C#  .NET • GNU  Python  Zope 2 et 3

  28. Zope 3 en quelques mots • Architecture par composant • Interopérabilité avec J2EE et .NET via CORBA et Jython • Internationnalisation

  29. Intérêt de Zope dans votre CV • Serveur d’application / Middleware / Infrastructure • Base de donnée objet • Langage de template • Sécurité • Workflow • Gestion de contenu • CSS et XHTML • Système transactionnel • Architecture par composant(Zope 3) • Connaissance alternative

More Related