Présentation ESTRABOX

Slides:



Advertisements
Présentations similaires
Les Web Services Schéma Directeur des Espaces numériques de Travail
Advertisements

La Gestion de la Configuration
Une solution personnalisable et extensible
- Couche 7 - Couche application. Sommaire 1)Introduction 1)DNS 1)FTP et TFTP 1)HTTP 1)SNMP 1)SMTP 1)Telnet.
INTRODUCTION INTRODUCTION ERGONOMIE Tri par cartes Formulaires Interface Installation Lanceur Documentation TECHNOLOGIES XML + XSL CSS Formulaires génériques.
Virtualisation dorchestration de services TER Master 1 Infomatique 4 Avril 2008 Encadrant : Philippe Collet.
Guillaume KRUMULA présente Exposés Système et Réseaux IR3 Mardi 5 Février 2008.
51 Les technologies XML Cours 7 : Utilisations dXML Janvier Version 1.0 -
Design Pattern MVC En PHP5.
Le mécanisme de Single Sign-On CAS (Central Authentication Service)
Soutenance de stage · Par : Guillaume Prévost · Entreprise : Cynetic
1 ARCHITECTURE DACCÈS la méthode générale modèle de données définitions module daccès / modules métiers construction des modèles les modules daccès, les.
Projet Drone/Android M2
LOG 02 Bases de Données Avancées Rappels sur JSP / Servlet
Dynamisez la gestion de votre atelier CNC.
Formation Centra - GDE.
Intégrer IdRef dans les applications documentaires de votre université. Pourquoi ? Comment ? Atelier JABES2011.
XML-Family Web Services Description Language W.S.D.L.
Présentation Struts1-JaxB
Sommaire Objectif de Peakup Principes de fonctionnement
Développement Rapide dApplications Web avec.NET « Mon premier site »
ASP.NET Par: Hugo St-Louis. C ARACTÉRISTIQUES A SP. NET Évolution, successeur plus flexible quASP (Active Server Pages). Pages web dynamiques permettant.
.Net Remoting.
Gestion des bases de données
Développement d’un réseau social professionnel
ISICIL SWEETDEKI Intégration du logiciel Mindtouch Core dans la plate-forme ISICIL Guillaume HUSSON.
Développement d’application web
Clients riches RIA (Rich Internet Application) / RDA
SSO : Single Sign On.
Projet de Master première année 2007 / 2008
La souris danse Espace Régional Internet Citoyen.
JEE 5 F.Pfister 2 institut eerie JEE – Une plateforme serveur  Développement et exécution d'applications réparties.
LES CLIENTS WEB RICHES Tuteur : Olivier CARON LEFEBVRE Benoit
Outil de gestion des cartes grises
Introduction au développement Office 2007
Supports de formation au SQ Unifié
0 Objectifs de la session n°1  Revenir sur toutes les bases théoriques nécessaires pour devenir un développeur Web,  Découvrir l’ensemble des langages.
AngularJS.
Expose sur « logiciel teamviewer »
Metro Web Services Ben Yaflah Marouen Dhrif Mohamed Hbib Hajlaoui Nader.
GESTION DE COMPOSANTS ELECTRONIQUES
Auvray Vincent Blanchy François Bonmariage Nicolas Mélon Laurent
Présentation Finale Spirit 07 / 03 / 2011 Groupe Vert 1 Equipe Verte.
© WYNIWYG / Communication, reproduction interdite sauf autorisation.
Présentation Finale Spirit 07 / 03 / 2011 Groupe Vert 1 Equipe Verte.
AFPA CRETEIL 14-1 Windows NT Environnement des utilisateurs Chapitre 14.
Architecture base de données interface graphique technologies utilisée
PHP 6° PARTIE : LES SESSIONS 1.Introduction 2.Identificateur de session 3.Variables de session 4.Client / Serveur 5.Principe 6.Ouverture de session 7.Enregistrement.
 Formulaires HTML : traiter les entrées utilisateur
Cours Web Services ISIMA 3F3
4/13/2017 3:41 PM Intégration Visio SharePoint 2010 Application à la création de Workflows Genève -15 Avril 2010 Michel LAPLANE MVP Visio - WGroupe.
L’enseignement de spécialité SLAM
Les Servlets Présentation Cycle de vie Principe de fonctionnement
3.3 Communication et réseaux informatiques
Citrix ® Presentation Server 4.0 : Administration Module 5 : Gestion des paramètres de serveur et de batterie de serveurs.
Victor Victor Sabourin Marie Sévilla Fraysse Pauline They
CPI/BTS 2 Programmation Web Les sites dynamiques Prog Web CPI/BTS2 – M. Dravet – 02/10/2003 Dernière modification: 02/10/2003.
LE SERVEUR PROXY Un serveur proxy (traduction française de «proxy server», appelé aussi «serveur mandataire») est à l'origine une machine faisant fonction.
Gestion des documents internes avec SQL Server 2005 Date de publication : janvier 2006.
Subversion.
9 février 2010 Enrique Ruiz Mateos Architecte avant-vente Microsoft
TWP Toolkit Formation 21/10/2009.
SCABAL single page application. 1. Suivi du projet a) Tenue du planning b) Etat des lieux et contraintes c) Next sprints d) URLS 2. Aspects techniques.
Réunion Scabal SCABAL single page application.
SCABAL single page application. 1. Suivi du projet a) Tenue du planning b) Etat des lieux et contraintes c) Next sprints d) URLS 2. Aspects techniques.
CEGID et environnement réseau Groupe PGI Académie de Grenoble.
Parquet Geoffrey 3 ARIL EXIA.CESI ARRAS. Présentation du MLD Présentation de la persistance Présentation récapitulatif du projet JSP/SERVLET MVC Cycle.
Les fonctionnalités OVIDENTIA. Fonctions Bénéfices Prestations Contrat de service Avril 2004OVIDENTIA : le Portail d'Entreprise de CANTICO2 Les fonctionnalités.
Transcription de la présentation:

Présentation ESTRABOX 07/04/2015 PRéSENTATION GT NUXEO

Estrabox Pourquoi EstraBox Planning de notre projet Le fonctionnement Avant : Estra avec Nuxéo Maintenant : Estra ET EstraBox avec Nuxéo et Node.JS Planning de notre projet Le fonctionnement L’architecture Partie Serveur Partie Client Performance La communication Démo Questions / Réponses Préciser Fonctionnement Estra : Moteur – BD – Fichiers en binaires 07/04/2015 Presentation GT NUXEO

Estrabox Avant Estra avec Nuxéo Nombreuses fonctionnalités Ergonomie complexe à assimiler et peu accessible 3 serveurs (développement, recette, production) Pourquoi EstraBox ? Préciser Fonctionnement Estra : Moteur – BD – Fichiers en binaires 07/04/2015 Presentation GT NUXEO

Estrabox En plus d’Estra EstraBox Estra et EstraBox Conservation d’Estra pour certaines fonctionnalités « avancées »  Utilisation des métadonnées Administration avancée (versionning, mur, espace social collaboratif) EstraBox Interface simplifiée Reprise des fonctionnalités de base : Création de Dossier Rajouter / Copier / Coller / Supprimer / Déplacer des fichiers Partager des dossiers A terme, synchronisation avec Nuxeo Drive (interface depuis le poste client) Pourquoi EstraBox ? 07/04/2015 Présentation GT Nuxeo

Estrabox Avril - Juillet 2014 Octobre 2014 Pré cahier des charges pour estimation / Appel à prestataire Octobre 2014 Rédaction du cahier des charges / Choix techniques Novembre – Décembre 2014 – Janvier 2015 Développement et configuration Janvier – Février 2015 Recette par un groupe d’utilisateurs Mise en production pour ce groupe d’utilisateurs Mars 2015 Ouverture à des correspondants TICE Avril – Mai 2015 Mise en place de Nuxeo Drive à prévoir avant mise en production pour les personnels dans un premier temps Planning du Projet à l’Université d’Orléans 07/04/2015 Présentation GT Nuxeo

Estrabox Architecture du serveur accueillant EstraBox Java ≥ 6 Client Git (logiciel de gestion de version) ≥ 1.7 Java ≥ 6 Node.JS ≥ 0.11.1 Modules de Node.JS Bunyan : visualisation des logs Forever : lancer l’application en tant que daemon Redis (Serveur de cache) ≥ 2.6 MongoDB (Base de données utilisées principalement pour la communication autour d’EstraBox) ≥ 2.6.6 Dépendances de l’application (npm install) ≥ 2.0.0 Séparation de la partie Cliente et de la partie Serveur Fichier de configuration pour la partie accès aux serveurs, authentification, mails, logs Le fonctionnement 07/04/2015 Présentation GT Nuxeo

Estrabox Architecture : un Proxy pour Joue un rôle d’intermédiaire Mettre en place aisément une logique métier Gère et transforme les données transitant entre l’utilisateur final et Nuxéo Le fonctionnement De façon générale l'utilisation d'un serveur proxy permet de mettre en place la logique métier 07/04/2015 Présentation GT NUXEO

Estrabox Architecture Utilité du serveur Proxy Implémentation Contrôle des requêtes envoyées par le Client et à transmettre à Nuxéo Contrôle des réponses renvoyées par Nuxéo et à transmettre au client En plus : mise en place d’une session Utilisateur, contrôle des méthodes d’authentification , mise en place de communication avec d’autres bases de données, d’envoi de mails, d’un serveur cache Implémentation Au vu des API exposées par Nuxéo et des clients développés par Nuxéo pour interroger ces API, 2 choix : API Java avec des outils comme JAX-RS ou l’API REST avec Node.JS Choix Node.JS => présence d’un client développé par Nuxéo Communication du serveur Proxy avec Nuxéo A travers des appels à l’API REST exposée par ce dernier Le fonctionnement De façon générale l'utilisation d'un serveur proxy permet de mettre en place la logique métier 07/04/2015 Présentation GT NUXEO

Estrabox Node.JS Avant : Javascript côté Client Node.JS offre un environnement côté serveur -> utilisation de js Node.JS offre un environnement coté serveur -> utilisation de js Javascript basé sur des évènements, donc Node.JS aussi Moteur V8 de Google Chrome (analyse et exécute du JS rapidement) Modèle Non Bloquant Fonctionnement 07/04/2015 Présentation GT Nuxeo

Estrabox Communication entre serveur Proxy et serveur Nuxéo API REST (Representational State Transfer) Accès à l’ensemble des services proposés par le serveur Nuxéo en utilisant le formalisme REST Création d’un client développé par Nuxéo pour faciliter la communication entre le serveur Node.JS et Nuxéo : module Node.JS : https://github.com/nuxeo/nuxeo-js-client) Attention : quelques lacunes au niveau de l’authentification : https://github.com/kfrapin/nuxeo-js-client Communication entre client et serveur proxy Appels Ajax qui interrogent des URL exposées par le serveur proxy Les données échangées transitent sous le format JSON (format de données => information structurée comme xml) Exemple d’URLs exposées /documents/:document_id (methode DELETE) /documents (methode GET) Fonctionnement REST est un style d'architecture, pas un standard. Il n'existe donc pas de spécifications de REST. Il faut comprendre le style REST et ensuite concevoir des applications ou des services Web selon ce style. Bien que REST ne soit pas un standard, il utilise des standards. En particulier : URI comme syntaxe universelle pour adresser les ressources, HTTP un protocole sans état (stateless) avec un nombre très limité d'opérations, Des liens hypermedia dans des documents (X)HTML et XML pour représenter à la fois le contenu des informations et la transition entre états de l'application, Les types MIME comme text/xml, text/html, image/jpeg, application/pdf, video/mpeg pour la représentation des ressources. REST concerne l'architecture globale d'un système. Il ne définit pas la manière de réaliser dans les détails. En particulier, des services REST peuvent être réalisés en .NET, JAVA, CGI ou COBOL Le premier principe d'architecture consiste donc à identifier les ressources avec des URI. TTP, GET et POST (Put et Delete) Le deuxième composant de l'architecture REST est le protocole HTTP. L'identification des ressources est la pierre angulaire d'une architecture REST. La définition des URI ne peut donc être la conséquence d'un développement. Les URI doivent être spécifiées au moment de la conception. Les URL manipulées par les serveurs web sont des URL physiques qui reflètent la structure physique des répertoires d'un serveur. 07/04/2015 Présentation GT Nuxeo

Estrabox Architecture Applicative Coté serveur Découpage de façon modulaire (évolution et maintenance) Ex de modules : authentification, configuration Coté serveur Les modules présents ci–dessous sont des modules développés pour le projet (les autres n’étant pas représentés comme ExpressJS par ex) Fonctionnement authenticator Gère l'authentification et Basé sur le module PassportJS cache Gère le cache de données Redis db-connector Gère la connexion à la base de données MongoDB document-enricher Enrichit un document en ajoutant des informations qui sont utiles côté client. Se base sur les informations renvoyées par le serveur Nuxéo document-filter Filtre les documents et les attributs à retourner côté client document-manipulator Extrait des informations du document à partir des informations renvoyées par le serveur Nuxéo 07/04/2015 Présentation GT Nuxeo

Estrabox Côté Client Principe du « Single Page Application » : ensemble des ressources au 1er chargement de la page et unique page qui ne se recharge jamais mais qui fait évoluer dynamiquement son contenu Rend l’application dynamique et expérience utilisateur fluide Les modules présents ci–dessous sont des modules développés pour le projet Fonctionnement authenticator Gère l’authentification client Gère les requêtes AJAX config Gère la configuration de l'application estrabox Gère l'initialisation de l'application restapi Gère les appels à l'API exposée par le serveur proxy ui Gère l'interface utilisateur 07/04/2015 Présentation GT NUXEO

Estrabox Performance Serveur de cache Redis : Permet de récupérer de manière quasi-instantanée des données qui n'ont pas vocation à évoluer dans le temps et qui pourraient être longues à récupérer à travers des appels au serveur Nuxéo (nom et prénom) Parallélisation de traitement Modèle Non Bloquant et lancement de programme en simultané Code Javascript embarqué dans l’application est optimisé via le compilateur « Closure » créé par Google (réduction des temps de traitement coté Client) Fonctionnement 07/04/2015 Présentation GT NUXEO

Estrabox Communication Mail envoyé à l’utilisateur lors de certains évènements : 1ère connexion 1er partage Centre d’assistance sous forme de FAQ On garde le « thème » de l’application EstraBox Fonctionnement 07/04/2015 Présentation GT NUXEO

Estrabox Démo 07/04/2015 Présentation GT Nuxeo