Adaptation et expérimentation de l algorithme des trains dans le contexte des centres de données géorépliqués

Dimension: px
Commencer à balayer dès la page:

Download "Adaptation et expérimentation de l algorithme des trains dans le contexte des centres de données géorépliqués"

Transcription

1 Adaptation et expérimentation de l algorithme des trains dans le contexte des centres de données géorépliqués dans le Cloud Etudiants : Trong Lam PHAN, Yaxiong OU Encadrant : Mr. Michel SIMATIC Octobre 2014 Janvier 2015

2 Remerciements Nous tenons à remercier très sincèrement et à exprimer notre gratitude à tous ceux qui ont contribué à la réalisation du projet «des trains» depuis le début, plus particulièrement notre encadrant M. Michel SIMATIC qui nous a suivi tout au long de ce projet et nous a beaucoup aidé dans nos nombreux questionnements. Ses conseils avisés ont participé au bon déroulement de notre projet. Nous voudrons également envoyer nos remerciements à tous les professeurs de Télécom SudParis qui nous ont fourni des connaissances précieuses. Cela nous a permis de bien effectuer ce projet. 1

3 Table des matières I. Introduction... 5 a. Protocole des trains... 5 b. Intuition... 6 II. Algorithme... 6 a. Uniformité... 6 b. Non Uniformité à ordre total... 6 c. Causalité Twitter... 6 III. Environnement, Outils, API... 7 a. Outils de test de montée en charge Gatling... 7 b. Amazon Web Service... 7 c. Netperf... 7 d. ZeroMQ... 7 IV. Mesures de performance du protocole «des trains»... 8 a. Scénario des mesures... 8 b. En local... 9 c. Dans le cloud... 9 V. Applications Clients a. Twitter b. Zamazon VI. Résultat de test des applications VII. Conclusion VIII. Bibliothèque

4 Liste des figures Figure 1 : Centre de données géo-répliqués (Willy Zwaenepoel)... 5 Figure 2 : Architecture de ZeroMQ... 8 Figure 3 Architecture de l application Twitter dans le Cloud Figure 4 : Logo de l application Zamazon Figure 5 : Architecture de la base de données de l application Zamazon Figure 6 : Architecture du système de l application Zamazon Figure 7 : Capture d écran de la page d accueil de l application Zamazon Figure 8 : Capture d écran de la page de la consultation de l application Zamazon Figure 9 : Capture d écran de la page d achat de l application Zamazon Figure 10 : Architecture de la réplication des données de l application Zamazon Figure 11 : Résultat du test en boucle de 100 fois en utilisant Gatling Figure 12 : Résultat du test en boucle de 200 fois en utilisant Gatling Figure 13 : Résultat du test en boucle de 1000 fois en utilisant Gatling Figure 14 : Erreur au cas où on utilise une boucle de 1000 fois Liste de tableaux Tableau 1 : Résultat du test en C en local... 9 Tableau 2 : Résultat de la mesure «latence» en utilisant Netperf Tableau 3 : Résultat du test en C dans le Cloud AWS sur le circuit optimal en termes «latence» Tableau 4 : Résultat du test en Java dans le Cloud AWS sur le circuit optimal en termes «latence» Tableau 5 : Résultat de la mesure du débit en utilisant Netperf Tableau 6 : Résultat du test en C dans le Cloud AWS sur le circuit optimal en termes «débit» Tableau 7 : Résultat du test en Java dans le Cloud AWS sur le circuit optimal en termes «débit»

5 Résumé Dans le cadre du projet de fin d études, on a travaillé sous la supervision de M. Michel SIMATIC depuis Octobre 2014 jusqu à la fin du mois de Janvier Notre projet est un héritage de plusieurs projets déjà réalisés. Le protocole du projet s appelle «des trains» est commencé par M. SIMATIC en 2012 et développé par plusieurs anciens élèves. Ce protocole est conçu pour être un protocole efficace en termes de débit pour des petits clusters et des messages courts. Actuellement, la performance du protocole est prouvée d avoir un rendement supérieur au meilleur, en termes de débit, des protocoles présentés dans la littérature. Cependant, M. SIMATIC pense que le protocole pourrait devenir plus efficace si on concilie la performance et la qualité de la cohérence du protocole en retirant la propriété d uniformité. L objectif de ce projet est de vérifier cette intuition. Voici les tâches qu on a finies dans le cadre du projet : - Améliorer le protocole en retirant la propriété d uniformité. Programmer en langage C. - Développer l outil de test de latence en Java. - Mesurer la performance de l algorithme «non_uniforme» dans le Cloud Amazon Web Services (AWS) en considérant une application répliquée sur Frankfurt, California, Tokyo et Sao Paulo. Ces tests sont réalisés en C et en Java. - Développer une application en Java jouet de vente par internet qui s appelle Zamazon. Cette application est reposée sur l interface Java programmée par deux anciennes élèves. Cette interface permet d interagir avec le protocole en C mais utiliser le langage Java. - Enlever l ordre total du protocole mais garder l ordre causal que on s appelle «Causalité Twitter» pour servir aux cas concrets comme : Twitter, Facebook. Développer un outil de test en C et en Java, qui permet de tester le protocole en local et dans le cloud Amazon. - Développer une application Twitter avec l interface client qui déploie l algorithme «Causalité Twitter» et qui dispose deux fonctions de base de la vraie application : o Afficher des tweets dans la base de données. o Répondre à un tweet. - Mesurer la performance de l application Twitter en utilisant l outil de test Gatling dans le Cloud Amazon Web Services. 4

6 I. Introduction a. Protocole des trains Il y a de nombreuses applications qui sont actuellement géo-répliquées dans le Cloud : une instance d'application munie d'une copie de l'ensemble des données de l'application s'exécute aux USA, pendant qu'une autre instance (et sa copie des données) s'exécute en Europe, pendant qu'une autre instance s'exécute en Chine, etc. Figure 1 : Centre de données géo-répliqués (Willy Zwaenepoel) Quand un client souhaite accéder à une instance d'applications, il est dirigé vers l'instance géographiquement la plus proche pour éviter des temps de latence trop longs. Et, quand ce client modifie des données au niveau de cette instance, ces mises-à-jour doivent être répercutées de manière cohérente sur l'ensemble des instances. Répondre à ce besoin de cohérence est un problème difficile. Actuellement, les industriels (Google, Amazon) et la communauté scientifique proposent de s'appuyer sur certains protocoles (exemple : famille de protocole Paxos) pas assez performants dans un contexte Cloud pour certaines applications, ou bien de réduire les ambitions de cohérences (en se contentant, par exemple, d'une eventual consistency) pour préserver les performances. Le protocole des trains est inspiré de l idée du protocole du train de [Cristian, 1991]. Dans un petit cluster de machines interconnectées, le protocole des trains s'exécute par un réseau. Plusieurs trains qui portent des messages, circulent en parallèle entre n processus participants répartis selon un anneau virtuel. Chaque processus participe au protocole, a une connexion TCP ouverte avec son prédécesseur et une autre connexion TCP ouverte avec son successeur sur cet anneau. Sur chacune de ces connexions TCP, les messages circulent en général toujours dans le même sens. 5

7 Un train est un jeton qui circule sur un anneau virtuel. Il transporte les messages à diffuser au sein de wagons. Un wagon est une structure de données qui permet de stocker les messages à diffuser. Quand un processus p souhaite diffuser un message m, p ajoute m à un wagon w. Ce wagon w est ajouté en queue du premier train qui passe. Il y a deux versions du protocole des trains : mono-train et multi-trains. Dans ce rapport, on présente seulement l algorithme multi-trains qu on a appris et utilisé au cours du projet. b. Intuition En simplifiant l'algorithme des trains pour supprimer la propriété d'uniformité et aussi l ordre total de sa diffusion, nous pensons que cet algorithme peut concilier performance et qualité de la cohérence. L'objectif de ce projet ASR est de vérifier cette intuition. II. Algorithme a. Uniformité La contrainte d uniformité est garantie par deux propriétés d ordre : l ordre FIFO et l ordre causal. Elle garantit que dès qu un processus uot-livre un message, in fine tous les processus l uot-livereront. L ordre FIFO : «Si un processus correct diffuse un message m avant de diffuser un message m, alors aucun processus correct ne livre m avant d'avoir au préalable livré m». (Ordre FIFO [Hadzilacos et Toueg, 1994]) L ordre causal : «Si la diffusion d'un message m précède causalement la diffusion d'un message m, alors aucun processus correct ne livre m avant d'avoir livré m au préalable». (Ordre causal [Hadzilacos et Toueg, 1994]) La garantie de la propriété «uniforme» cause une diminution des performances. Elle demande des ressources supplémentaires (CPU, mémoire et réseau). De plus, le temps écoulé entre l uot-diffusion du message par un processus et son uot-livraison par les différents processus est allongé. En effet, le protocole d uot-diffusion doit garantir que tous les processus participant au protocole ont reçu le message et sont prêts à l uot-livrer. b. Non Uniformité à ordre total La propriété d uniformité concerne l ensemble des processus, ceux qui sont corrects et ceux qui ont défailli. Pour la propriété de non-uniformité à ordre total, si un processus p2 diffuse un message m et il est mort, on ne peut pas assurer que tous les processus (p2 inclus) ont reçu le message m. La propriété «non_uniformité» est alors bien moins fort que la propriété «uniformité» mais dans plusieurs cas actuels, on peut la mettre en pratique avec aucun problème. c. Causalité Twitter 6

8 Dans ce cas, on respecte l ordre causal mais on ne respecte plus l ordre total. Un processus p1 diffuse un message m1 et ensuite, un message m2, c est possible que le processus p2 délivre m2 avant m1 (m2 ne dépend pas causalement de m1). Mais si la diffusion d un message m1 précède causalement de la diffusion d un message m2, aucun processus correct alors délivre m2 avant d avoir délivré m1. III. Environnement, Outils, API a. Outils de test de montée en charge Gatling Gatling est un outil de test de montée en charge gratuit et open source. Gatling permet de simuler un nombre d utilisateurs à partir d une seule machine, consistant à communiquer par échanger de messages asynchrones. Gatling est fiable, puissante et facile à alimenter et il permet d étudier les performances d applications web. Pour mettre en œuvre des requêtes de manière optimale, Gatling s appuie sur la librairie Asynchronous HTTP Client et sur le framework Netty. Cet outil permet également de générer un ensemble de pages HTML pour afficher les rapports de tests. Afin de produire des graphiques de manière optimisée, il repose sur les librairies javascript highstock et highcharts. b. Amazon Web Service L Amazon Web Service regroupe plusieurs services proposés en ligne. Pour ce projet, on a utilisé un des services les plus connus : EC2. EC2 (Amazon Elastic Compute Cloud) permet de louer des machines virtuelles qui peuvent être configurées et pilotées en ligne. Ces infrastructures informatiques fournissent de la puissance de calcul «depuis les nuages» qui est destinée aux développeurs. Ce service est conçu pour faciliter l accès aux ressources de cloud computing à l échelle du Web. Puisque nos tests sont temporaires dans le Cloud, c est la raison pour laquelle on a utilisé EC2. c. Netperf Netperf est un logiciel libre permettant de simuler du trafic entre deux points d'un réseau. NetPerf permet de simuler des transactions TCP et UDP du transfert de données. NetPerf permet de mesurer le débit de notre réseau, c'est à dire la quantité des données que l'on peut transporter en une seconde d'une machine vers une autre. d. ZeroMQ ZeroMQ est une API de files d attentes basée sur des sockets TCP et conçue spécialement pour des applications à hautes performances et faible latence. Cette API est en mode «sans broker». L objectif de cette API est de concevoir une API de Messaging conçue pour des applications de micro-trading haute fréquente. 7

9 Les points forts de ZeroMQ sont ses performances et sa fiabilité. Sa taille est très réduite et ses performances sont hors normes. L'inconvénient évident est qu'il y a davantage de travail nécessaire pour l'intégrer dans une application. Une clé de ZMQ est de ne pas utiliser de mécanisme de synchronisation: les sockets ZMQ ne sont pas thread-safe. Un même socket ne donc doit pas être utilisé par deux threads différents. Les échanges entre deux sockets sont asynchrones et se font par messages. Voici l architecture de ZeroMQ : Figure 2 : Architecture de ZeroMQ Entre deux processus, il y a un socket qui transporte des messages. Le «Directory Service» fait la gestion des adresses de tous les processus. IV. Mesures de performance du protocole «des trains» a. Scénario des mesures En gardant le débit approximatif égal, les mesures nous permettent de comparer la latence de chaque algorithme «uniformité», «non_uniformité» et «causalité twitter». Pour les deux premiers tests «uniformité» et «non_uniformité à ordre total», on a réalisé des tests de type PING_PONG, c est-à-dire que le processus p diffuse un message PING avec son temps d envoi au réseau, quand ce processus p délivre le message PING, il n enregistre pas encore la latence du message, mais il continue à diffuser une copie du message PING que l on s appelle PONG qui prend le temps d envoi du message PING au lieu de son temps d envoi propre. Quand ce processus p délivre le message PONG, il compte l intervalle depuis le temps d envoi du message PING jusqu au temps de livraison du message PONG comme la latence du message PING. Avec cette méthode, on peut savoir la latence d un message PING 8

10 et bien sûr également, en fin, la latence moyenne de tous les messages diffusés par le processus p. Pour le test «causalité twitter», on mesure trois propriétés : la latence, le débit et l overhead (le temps entre le temps d envoi du message provenant d un processus et le temps où le premier train qui passe). Le processus p diffuse un message m, quand un train t arrive au processus p, ce processus délivre ce message m toute de suite. Les autres processus délivrent également ce message m quand le train t arrive chez eux. La latence alors est l intervalle entre le temps d envoi du message m et le temps le train t finit un tour et retourner au processus p. b. En local En local, on fait un test sur deux, trois et quatre machines. Uniformité Latence (ms) Débit Non uniformité Latence (ms) Débit Causalité Overhead (ms) Latence (ms) Débit Tableau 1 : Résultat du test en C en local Le résultat répond à notre attente. En gardant le débit approximatif égal : Latence «Uniformité» 1.6 * latence «Non_Uniformité» 2.8 latence «Causalité» c. Dans le cloud Dans le Cloud AWS, on fait également un test sur deux, trois et quatre machines à Frankfurt, California, Tokyo et Sao Paulo. Pour nos tests, le circuit commence toujours par la machine à Frankfurt. Grâce à l outil NetPerf, on est capable de mesurer le débit et la latence entre les quatre machines pour choisir un circuit optimal à notre objectif. i. Circuit par rapport à la latence Voici le résultat de la mesure «latence» entre les quatre machines en utilisant Netperf : 9

11 Sao Paulo California Tokyo Frankfurt Sao Paulo California Tableau 2 : Résultat de la mesure «latence» en utilisant Netperf Ce résultat nous permet de spécifier le circuit optimal en termes de «latence» : - Avec deux machines de Frankfurt et de Sao Paulo : on a un seul circuit : Frankfurt Sao Paulo. - Avec trois machines de Frankfurt, de Sao Paulo et de California : le circuit optimal est : Frankfurt California Sao Paulo. - Avec quatre machines de Frankfurt, de Sao Paulo, de California et de Tokyo : le circuit optimal est : Frankfurt California Tokyo Sao Paulo. Test en C Uniformité Latence (ms) Débit Non uniformité Latence (ms) Débit Causalité Overhead (ms) Latence (ms) Débit Tableau 3 : Résultat du test en C dans le Cloud AWS sur le circuit optimal en termes «latence» Le résultat répond à notre attente. En gardant le débit approximatif égal : Latence «Uniformité» 1.78 * latence «Non_Uniformité» 2.87 latence «Causalité» Test en Java Uniformité 10

12 Latence (ms) Débit Non uniformité Latence (ms) Débit Tableau 4 : Résultat du test en Java dans le Cloud AWS sur le circuit optimal en termes «latence» Le résultat répond à notre attente. En gardant le débit approximatif égal : Latence «Uniformité» 1.5 * latence «Non_Uniformité» i. Circuit par rapport au débit Voici le résultat de la mesure «débit» entre les quatre machines en utilisant Netperf : Sao Paulo California Tokyo Frankfurt Sao Paulo California 8.81 Tableau 5 : Résultat de la mesure du débit en utilisant Netperf Ce résultat nous permet de spécifier le circuit optimal en termes de «débit» : - Avec deux machines de Frankfurt et de Sao Paulo : on a un seul circuit : Frankfurt Sao Paulo. - Avec trois machines de Frankfurt, de Sao Paulo et de California : le circuit optimal est : Frankfurt Sao Paulo California. - Avec quatre machines de Frankfurt, de Sao Paulo, de California et de Tokyo : le circuit optimal est : Frankfurt Tokyo Sao Paulo California. Test en C Uniformité Latence (ms) Débit Non uniformité Latence (ms) Débit

13 Causalité Overhead (ms) Latence (ms) Débit Tableau 6 : Résultat du test en C dans le Cloud AWS sur le circuit optimal en termes «débit» Le résultat répond à notre attente. En gardant le débit approximatif égal : Latence «Uniformité» 1.74 * latence «Non_Uniformité» 2.75 latence «Causalité» Test en Java Uniformité Latence (ms) Débit Non uniformité Latence (ms) Débit Tableau 7 : Résultat du test en Java dans le Cloud AWS sur le circuit optimal en termes «débit» Le résultat répond à notre attente. En gardant le débit approximatif égal : Latence «Uniformité» 1.5 * latence «Non_Uniformité» En résumé, avec le débit approximatif égal, la latence «uniformité» est toujours supérieur à la latence «non_uniformité» et bien supérieur à la latence «causalité». V. Applications Clients a. Twitter Application Twitter est une application qui permet d envoyer et de recevoir des tweets entre les machines dans le Cloud. Il contient l application serveur et l application client. Associée avec le system de TrainsProtocol montré par la figure ci-dessous, on peut mesurer la performance en termes de débit et de latence du protocole des trains «causalité» : 12

14 Figure 3: Architecture de l application Twitter dans le Cloud Quand un client ajoute un tweet, il envoie une requête «addtweet» (1-1) au Twitter Web App. Cette requête est transférée (1-2 et 1-3) au TrainsProtocol par ZeroMQ. Le TrainsProtocol délivre ce nouveau tweet quand il y a un train qui passe. Il envoie une réponse (2-1, 2-2) au Twitter Web App par ZeroMQ. Le Twitter Web App ajoute ce nouveau tweet dans la base de données (2-3) et répond au client (2-4) avec un statut «success». En même temps, le TrainsProtocol diffuse ce nouveau tweet dans le Cloud, un train qui porte ce tweet circule de Frankfurt à California (3-1), de California à Tokyo (4-1) et de Tokyo à Sao Paulo (5-1). Pour montrer comment ça marche sur une instance (sauf Frankfurt c est celui qui diffuse ce tweet), sur la figure 3, on détaille le processus sur la machine à Tokyo. Le TrainsProtocol reçoit le tweet et le délivre toute de suite en envoyant à TwitterSync par ZeroMQ (4-2, 4-3). Le TwitterSync est un programme Java qui permet de recevoir des nouveaux tweets délivrés et les mettre dans la base de données. Le client met à jours son affichage en faisant un «gettweet» qui le permet de récupérer tous les tweets dans la base de données de façon structurée. b. Zamazon i. Présentation de l application 13

15 Après on voit la performance dans le Cloud Amazon Web Services(AWS), on essaie de concevoir une application qui s'appuie sur l'interface Java de l'algorithme des trains pour diffuser les mises-à-jour faites sur la base de données d'une instance. Zamazon est une application client-serveur qui permet d acheter des produits sur le serveur. Le nombre de produits doit être identique sur toutes les instances dans le Cloud. Figure 4 : Logo de l application Zamazon i. Des fonctionnalités réalisées Des utilisateurs peuvent accéder et visiter le site «ZAMAZON» en utilisant ses navigateurs, et les deux fonctionnalités simples qu'on veut réaliser sont de «consulter la quantité des produits», et «faire l'achat». Par un identifiant de produit, des utilisateurs peuvent choisir des actions qu'il veut. i. Conception de base de données Entre le serveur et la base de données, des actions «consulter la quantité des produits» et «faire l'achat» peuvent être décrites comme des requêtes SQL «Select» et «Update». Un produit enregistré dans un tableau de la base de données se compose de deux propriétés «Référence» et «Quantité». Et la «Référence» est la clé primaire intuitivement, selon la référence, on peut faire des actions. Figure 5 : Architecture de la base de données de l application Zamazon 14

16 Et au niveau du système de gestion des bases de données, on utilise MySQL pour le réaliser, sachant qu'il est multi-thread et multi-utilisateur et il peut fonctionner dans des différentes plateformes C, C ++, Java, Perl, PHP, Python etc. Le protocole de trains est réalisé en code JAVA, et on peut utiliser JDBC (Java DataBase Connectivity) qui est une interface de programmation pour accéder à la base de données et faire des requêtes SQL au niveau du code JAVA. i. Architecture de l application Sachant que la séparation client-serveur REST des préoccupations simplifie la mise en œuvre de composants, réduit la complexité de la sémantique des connecteurs, améliore l'efficacité de l'optimisation des performances, et augmente l'évolutivité des composants du serveur pures, on peut utiliser l'architecture RESTFUL pour la partie ZAMAZON. Parlant de REST, toutes les requêtes et réponses sont sur le «transfer of representations of resources», et il nous fournit quatre type d'opérations GET, READ,UPDATE et DELETE qui sont correspondant aux opérations créer, lire, mettre à jour, supprimer au niveau de base de données. Pour l'application ZAMAZON, on a besoin de récupérer la quantité des produits GET, faire l'achat PUT. Le problème apparaît lorsqu'on veut tester le REST sur un navigateur pour la méthode PUT, la plupart des navigateurs ne supporte pas l'action PUT de REST, mais on peut essayer de faire le GET qui fait quand même la mises-à-jour au niveau de base de données et retour un nouveau résultat de la quantité des produits qu'on veut acheter. Figure 6 : Architecture du système de l application Zamazon i. Démonstration La page d'accueil. 15

17 Figure 7 : Capture d écran de la page d accueil de l application Zamazon La page du retour de la consultation. Figure 8 : Capture d écran de la page de la consultation de l application Zamazon La page de faire l'achat et afficher la quantité restant. 16

18 Figure 9 : Capture d écran de la page d achat de l application Zamazon i. Réplication de base de données Sachant que des grandes entreprises B2C et C2C comme Amazon et Ebay ont des services de l'achat dans le monde, ces services sont souvent fourni dans des différent pays et régions et ainsi pour l'application ZAMAZON on a besoin de construire certains nombre de serveurs et base de données dans différents endroits. Et ces bases de données doivent être synchronisées ou répliquées. Souvent un serveur se trouve loin de l'autre, la transmission rapide des messages pour la synchronisation des bases de données est nécessaire. Figure 10 : Architecture de la réplication des données de l application Zamazon L'algorithme des trains est utile pour résoudre ce type de problème. Au niveau des serveurs, d'abord il reçoit une requête de HTTP, avant de faire la requête SQL, il le diffusera aux autres serveurs en protocole des trains et il attend que tous les serveurs ont reçus la diffusion de requête. Dans ce protocole, la méthode de CallBack sert à retourner le résultat et faire mises-à-jour de la base de données. Et il y a aussi de problème de synchronisation entre ces deux actions et on peut le résoudre en utilisant Sémaphore au niveau du code JAVA. 17

19 VI. Résultat de test des applications On a testé l application Twitter en utilisant l outil Gatling et le scénario qui déploie la structure montrée par la figure 1 : Il y a 4 serveurs à Frankfurt, Sao Paulo, California et Tokyo. Il y a 4 clients qui envoient à son serveur correspondant les requêtes HTTP. Un client envoie une requête «AddTweet» au serveur correspondant, puis, il attend la réponse du serveur, ensuite, il attend 1 milliseconde avant d envoyer une requête «GetTweets» au serveur. Après d avoir le résultat de la requête «GetTweets», il fait un délay 1 milliseconde avant de retourner au début de la boucle (c està-dire qu il continue à envoyer une requête «AddTweet»). Pour une boucle de 100 fois ou bien 200 fois, le système marche normalement mais 1000 fois, ça cause un problème du serveur glassfish dont sa queue de requête est remplie et le serveur glassfish est bloqué. Voici le résultat qui nous intéresse : i. Boucle de 100 fois (correspondant 200 requêtes par client) : Figure 11 : Résultat du test en boucle de 100 fois en utilisant Gatling Sur la figure 11, on peut voir que les 200 requêtes sont terminées sans problème. Le temps d attente moyen est de 199 ms, des requêtes «add_tweet» est de 376 ms et des requêtes «get_tweet» est de 22 ms. On peut voir également que de plus en plus, le temps augmente à cause du nombre de requêtes envoyées au serveur. 18

20 L overhead moyen dans le test ce qu on a montré sur 4 machines est de 86 ms. Sur l application, cette valeur est montée à 376 ms. On a l intuition que le serveur n est pas encore optimisé et le problème est sur des requêtes «INSERT» dans la base de données qui fait ralentir le système. i. Boucle de 200 fois (correspondant 400 requêtes par client) : Dans le cas 200 fois de boucle, l overhead des requêtes «add_tweet» du système (487ms) est supérieur à celui au cas où 100 fois de boucle (376ms). Figure 12 : Résultat du test en boucle de 200 fois en utilisant Gatling i. Boucle de 1000 fois (correspondant 2000 requêtes par client) : Dans ce cas, il y a seulement 51% des requêtes qui ont réussi. Les autres requêtes sont échouées à cause de la limite du serveur. Figure 13 : Résultat du test en boucle de 1000 fois en utilisant Gatling Les erreurs montrées ci-dessous nous permettent de savoir quels sont les erreurs rencontrées et les problèmes à résoudre dans le futur. 19

21 Figure 14 : Erreur au cas où on utilise une boucle de 1000 fois VII. Conclusion En résumé, ce projet de fin d études est une expérience très riche qui nous a permis d élargir notre champ de vision dans le monde informatique professionnel, nos connaissances et nos capacités. Il nous permet également de mettre en pratique les connaissances d ASR dans un projet concret. Nous sommes bien conscients d avoir eu de la chance de travailler sur ce projet. VIII. Bibliothèque - M. Simatic, Contributions au rendement des protocoles de diffusion à ordre total et aux réseaux tolérants aux délais à base de RFID, Thèse de doctorat, Conservatoire National des Arts et Métiers (CNAM), octobre Jean-Sébastien Mercy, Gatling, nouvelle solution libre pour les tests de montée en charge, le 20 Janvier Virgile Juhan, AWS : Amazon Web Services, l emblème du cloud computing, le 18 Sep ZeroMQ, The Guide 20

Programmation Web. Introduction

Programmation Web. Introduction Programmation Web Introduction 1 Introduction 10 séances 1 h cours + 1h TD Notes : contrôle continu DS 1 TP : note de groupe : rapport + code source + démo TD : note personnelle (=0 si 2 absences non justifiées)

Plus en détail

Petite définition : Présentation :

Petite définition : Présentation : Petite définition : Le Web 2.0 est une technologie qui permet la création de réseaux sociaux, de communautés, via divers produits (des sites communautaires, des blogs, des forums, des wiki ), qui vise

Plus en détail

Architectures en couches pour applications web Rappel : Architecture en couches

Architectures en couches pour applications web Rappel : Architecture en couches Rappel : Architecture en couches Une architecture en couches aide à gérer la complexité : 7 Application 6 Presentation 5 Session Application Les couches hautes dépendent des couches basses 4 Transport

Plus en détail

Introduction aux applications réparties

Introduction aux applications réparties Introduction aux applications réparties Noël De Palma Projet SARDES INRIA Rhône-Alpes http://sardes.inrialpes.fr/~depalma Noel.depalma@inrialpes.fr Applications réparties Def : Application s exécutant

Plus en détail

Méthode de Test. Pour WIKIROUTE. Rapport concernant les méthodes de tests à mettre en place pour assurer la fiabilité de notre projet annuel.

Méthode de Test. Pour WIKIROUTE. Rapport concernant les méthodes de tests à mettre en place pour assurer la fiabilité de notre projet annuel. Méthode de Test Pour WIKIROUTE Rapport concernant les méthodes de tests à mettre en place pour assurer la fiabilité de notre projet annuel. [Tapez le nom de l'auteur] 10/06/2009 Sommaire I. Introduction...

Plus en détail

PHP et le Cloud. All rights reserved. Zend Technologies, Inc.

PHP et le Cloud. All rights reserved. Zend Technologies, Inc. PHP et le Cloud Les plateformes de cloud IAAS PAAS SAAS Applications Applications Applications Runtimes Sécurité et intégration Base de données Runtimes Sécurité et intégration Base de données Runtimes

Plus en détail

MySQL. (Administrateur) (Dernière édition) Programme de formation. France, Belgique, Suisse, Roumanie - Canada

MySQL. (Administrateur) (Dernière édition) Programme de formation. France, Belgique, Suisse, Roumanie - Canada MySQL (Administrateur) (Dernière édition) Programme de formation Microsoft Partner France, Belgique, Suisse, Roumanie - Canada WWW.SASGROUPE.COM Formez vos salariés pour optimiser la productivité de votre

Plus en détail

Architecture N-Tier. Ces données peuvent être saisies interactivement via l interface ou lues depuis un disque. Application

Architecture N-Tier. Ces données peuvent être saisies interactivement via l interface ou lues depuis un disque. Application Architecture Multi-Tier Traditionnellement une application informatique est un programme exécutable sur une machine qui représente la logique de traitement des données manipulées par l application. Ces

Plus en détail

Julien MATHEVET Alexandre BOISSY GSID 4. Rapport RE09. Load Balancing et migration

Julien MATHEVET Alexandre BOISSY GSID 4. Rapport RE09. Load Balancing et migration Julien MATHEVET Alexandre BOISSY GSID 4 Rapport Load Balancing et migration Printemps 2001 SOMMAIRE INTRODUCTION... 3 SYNTHESE CONCERNANT LE LOAD BALANCING ET LA MIGRATION... 4 POURQUOI FAIRE DU LOAD BALANCING?...

Plus en détail

Cloud Computing Maîtrisez la plate-forme AWS - Amazon Web Services

Cloud Computing Maîtrisez la plate-forme AWS - Amazon Web Services Avant-propos 1. Amazon Web Services 11 2. Public concerné et pré-requis 13 3. Périmètre de l'ouvrage 14 4. Objectifs à atteindre 15 Le cloud computing 1. Présentation 17 1.1 Définition 17 1.2 Points forts

Plus en détail

Architecture distribuée

Architecture distribuée Architecture distribuée Conception et développement d algorithmes distribués pour le moteur Baboukweb Jean-Christophe DALLEAU Département de Mathématiques et Informatique Université de La Réunion 26 juin

Plus en détail

Service WEB, BDD MySQL, PHP et réplication Heartbeat. Conditions requises : Dans ce TP, il est nécessaire d'avoir une machine Debian sous ProxMox

Service WEB, BDD MySQL, PHP et réplication Heartbeat. Conditions requises : Dans ce TP, il est nécessaire d'avoir une machine Debian sous ProxMox Version utilisée pour la Debian : 7.7 Conditions requises : Dans ce TP, il est nécessaire d'avoir une machine Debian sous ProxMox Caractéristiques de bases : Un service web (ou service de la toile) est

Plus en détail

Mise en œuvre des serveurs d application

Mise en œuvre des serveurs d application Nancy-Université Mise en œuvre des serveurs d application UE 203d Master 1 IST-IE Printemps 2008 Master 1 IST-IE : Mise en œuvre des serveurs d application 1/54 Ces transparents, ainsi que les énoncés

Plus en détail

Grid Technology. ActiveMQ pour le grand collisionneur de hadrons (LHC) Lionel Cons Grid Technology Group Information Technology Department

Grid Technology. ActiveMQ pour le grand collisionneur de hadrons (LHC) Lionel Cons Grid Technology Group Information Technology Department DB GT CF Grid ActiveMQ pour le grand collisionneur de hadrons (LHC) Lionel Cons Grid Group Information Department Journée de la communauté FUSE, Paris, 2010 CERN IT Department CH-1211 Geneva 23 Switzerland

Plus en détail

Bien architecturer une application REST

Bien architecturer une application REST Olivier Gutknecht Bien architecturer une application REST Avec la contribution de Jean Zundel Ce livre traite exactement du sujet suivant : comment faire pour que les services web et les programmes qui

Plus en détail

Devenez un véritable développeur web en 3 mois!

Devenez un véritable développeur web en 3 mois! Devenez un véritable développeur web en 3 mois! L objectif de la 3W Academy est de former des petits groupes d élèves au développement de sites web dynamiques ainsi qu à la création d applications web

Plus en détail

CNAM 2010-2011. Déploiement d une application avec EC2 ( Cloud Amazon ) Auteur : Thierry Kauffmann Paris, Décembre 2010

CNAM 2010-2011. Déploiement d une application avec EC2 ( Cloud Amazon ) Auteur : Thierry Kauffmann Paris, Décembre 2010 CNAM 2010-2011 Déploiement d une application avec EC2 ( Cloud Amazon ) Auteur : Thierry Kauffmann Paris, Décembre 2010 Déploiement d une application dans le cloud. 1. Cloud Computing en 2010 2. Offre EC2

Plus en détail

Le cloud computing au service des applications cartographiques à haute disponibilité

Le cloud computing au service des applications cartographiques à haute disponibilité Le cloud computing au service des applications cartographiques à haute disponibilité Claude Philipona Les Rencontres de SIG-la-Lettre, Mai 2010 camptocamp SA / www.camptocamp.com / info@camptocamp.com

Plus en détail

Hibernate vs. le Cloud Computing

Hibernate vs. le Cloud Computing Hibernate vs. le Cloud Computing Qui suis-je? Julien Dubois Co-auteur de «Spring par la pratique» Ancien de SpringSource Directeur du consulting chez Ippon Technologies Suivez-moi sur Twitter : @juliendubois

Plus en détail

Hébergement MMI SEMESTRE 4

Hébergement MMI SEMESTRE 4 Hébergement MMI SEMESTRE 4 24/03/2015 Hébergement pour le Web Serveurs Mutualités Serveurs Dédiés Serveurs VPS Auto-Hébergement Cloud Serveurs Mutualités Chaque Serveur héberge plusieurs sites Les ressources

Plus en détail

Amazon Elastic MapReduce (Amazon EMR)

Amazon Elastic MapReduce (Amazon EMR) Amazon Web Services S'inscrire Compte / Console Français Produits et solutions AWS Product Information Développeurs Support Amazon EMR Présentation d'amazon EMR FAQ Tarification Ressources pour développeurs

Plus en détail

Hébergement de sites Web

Hébergement de sites Web Hébergement de Solutions complètes et évolutives pour l hébergement de sites Web dynamiques et de services Web sécurisés. Fonctionnalités Serveur Web Apache hautes performances Apache 1. et.0 1 avec prise

Plus en détail

Enseignant: Lamouchi Bassem Cours : Système à large échelle et Cloud Computing

Enseignant: Lamouchi Bassem Cours : Système à large échelle et Cloud Computing Enseignant: Lamouchi Bassem Cours : Système à large échelle et Cloud Computing Chapitre 1 : Introduction Introduction générale Origine du cloud Concepts prédécésseurs «liés aux serveurs» Concepts prédécesseurs

Plus en détail

Informatique en nuage Cloud Computing. G. Urvoy-Keller

Informatique en nuage Cloud Computing. G. Urvoy-Keller Informatique en nuage Cloud Computing G. Urvoy-Keller Sources de ce documents Next Stop, the cloud Objectifs de l'étude : Comprendre la popularité des déploiements de services basés sur des clouds Focus

Plus en détail

les techniques d'extraction, les formulaires et intégration dans un site WEB

les techniques d'extraction, les formulaires et intégration dans un site WEB les techniques d'extraction, les formulaires et intégration dans un site WEB Edyta Bellouni MSHS-T, UMS838 Plan L extraction des données pour un site en ligne Architecture et techniques Les différents

Plus en détail

Conception des systèmes répartis

Conception des systèmes répartis Conception des systèmes répartis Principes et concepts Gérard Padiou Département Informatique et Mathématiques appliquées ENSEEIHT Octobre 2012 Gérard Padiou Conception des systèmes répartis 1 / 37 plan

Plus en détail

Optimisation WAN de classe Centre de Données

Optimisation WAN de classe Centre de Données Optimisation WAN de classe Centre de Données Que signifie «classe centre de données»? Un nouveau niveau de performance et d'évolutivité WAN Dans le milieu de l'optimisation WAN, les produits de classe

Plus en détail

Compte Rendu d intégration d application

Compte Rendu d intégration d application ISMA 3EME ANNEE Compte Rendu d intégration d application Compte Rendu Final Maxime ESCOURBIAC Jean-Christophe SEPTIER 19/12/2011 Table des matières Table des matières... 1 Introduction... 3 1. Le SGBD:...

Plus en détail

Proposition d une architecture pour ebay, en mettant l accent sur les notions de scalabilité, de résilience, et de tolérance aux pannes.

Proposition d une architecture pour ebay, en mettant l accent sur les notions de scalabilité, de résilience, et de tolérance aux pannes. PROJET «EBAY» V1 MANUEL ROLLAND, SCIA 2009, REMIS LE 7 MARS 2008 1. Rappels sur le projet : Proposition d une architecture pour ebay, en mettant l accent sur les notions de scalabilité, de résilience,

Plus en détail

Institut Supérieure Aux Etudes Technologiques De Nabeul. Département Informatique

Institut Supérieure Aux Etudes Technologiques De Nabeul. Département Informatique Institut Supérieure Aux Etudes Technologiques De Nabeul Département Informatique Support de Programmation Java Préparé par Mlle Imene Sghaier 2006-2007 Chapitre 1 Introduction au langage de programmation

Plus en détail

Architectures web/bases de données

Architectures web/bases de données Architectures web/bases de données I - Page web simple : HTML statique Le code HTML est le langage de base pour concevoir des pages destinées à être publiées sur le réseau Internet ou intranet. Ce n'est

Plus en détail

et Groupe Eyrolles, 2006, ISBN : 2-212-11747-7

et Groupe Eyrolles, 2006, ISBN : 2-212-11747-7 Tsoft et Groupe Eyrolles, 2006, ISBN : 2-212-11747-7 OEM Console Java OEM Console HTTP OEM Database Control Oracle Net Manager 6 Module 6 : Oracle Enterprise Manager Objectifs Contenu A la fin de ce module,

Plus en détail

Développement d'applications Web HTML5 L'art et la manière avec Visual Studio 2015 et TFS

Développement d'applications Web HTML5 L'art et la manière avec Visual Studio 2015 et TFS Avant de commencer 1. Introduction 15 2. HTML5 oui, mais pas que... 15 2.1 HTML5 16 2.2 JavaScript 17 2.3 CSS 18 3. Les outils 18 Préparation des outils et création du projet 1. Introduction 21 2. Team

Plus en détail

Maxpho Web Services. Maxpho Cloud Services. Date: 20 Septembre 2013 Version: 1.2 Auteur: Maxpho Ltd

Maxpho Web Services. Maxpho Cloud Services. Date: 20 Septembre 2013 Version: 1.2 Auteur: Maxpho Ltd Maxpho Web Services Maxpho Cloud Services Date: 20 Septembre 2013 Version: 1.2 Auteur: Maxpho Ltd Sommaire général 1 - Introduction... 3 2 - Service Cloud Base... 4 2.1 - Comment ça marche... 4 2.2 - Sécurité...

Plus en détail

Cloud public d Ikoula Documentation de prise en main 2.0

Cloud public d Ikoula Documentation de prise en main 2.0 Cloud public d Ikoula Documentation de prise en main 2.0 PREMIERS PAS AVEC LE CLOUD PUBLIC D IKOULA Déployez vos premières instances depuis l interface web ou grâce à l API. V2.0 Mai 2015 Siège Social

Plus en détail

FORMATION PcVue. Mise en œuvre de WEBVUE. Journées de formation au logiciel de supervision PcVue 8.1. Lieu : Lycée Pablo Neruda Saint Martin d hères

FORMATION PcVue. Mise en œuvre de WEBVUE. Journées de formation au logiciel de supervision PcVue 8.1. Lieu : Lycée Pablo Neruda Saint Martin d hères FORMATION PcVue Mise en œuvre de WEBVUE Journées de formation au logiciel de supervision PcVue 8.1 Lieu : Lycée Pablo Neruda Saint Martin d hères Centre ressource Génie Electrique Intervenant : Enseignant

Plus en détail

NFA 008. Introduction à NoSQL et MongoDB 25/05/2013

NFA 008. Introduction à NoSQL et MongoDB 25/05/2013 NFA 008 Introduction à NoSQL et MongoDB 25/05/2013 1 NoSQL, c'est à dire? Les bases de données NoSQL restent des bases de données mais on met l'accent sur L'aspect NON-relationnel L'architecture distribuée

Plus en détail

WINDOWS AZURE ET LES ÉDITEURS DE LOGICIELS

WINDOWS AZURE ET LES ÉDITEURS DE LOGICIELS WINDOWS AZURE ET LES ÉDITEURS DE LOGICIELS GUIDE POUR LES DÉCIDEURS DAVID CHAPPELL JUILLET 2009 PARRAINÉ PAR MICROSOFT CORPORATION TABLE DES MATIERES Les éditeurs de logiciels et le cloud computing...

Plus en détail

Informatique & Systèmes de Communication. Stages de 12 à 16 semaines aux Etats-Unis

Informatique & Systèmes de Communication. Stages de 12 à 16 semaines aux Etats-Unis Informatique & Systèmes de Communication Stages de 12 à 16 semaines aux Etats-Unis PROGAMME DES STAGES Depuis 2010, les stages en entreprise sont devenus obligatoires dans le cadre des études master. Les

Plus en détail

Mysql. Les requêtes préparées Prepared statements

Mysql. Les requêtes préparées Prepared statements Mysql Les requêtes préparées Prepared statements Introduction Les prepared statements côté serveur sont une des nouvelles fonctionnalités les plus intéressantes de MySQL 4.1 (récemment sorti en production

Plus en détail

Comment booster vos applications SAP Hana avec SQLSCRIPT

Comment booster vos applications SAP Hana avec SQLSCRIPT DE LA TECHNOLOGIE A LA PLUS VALUE METIER Comment booster vos applications SAP Hana avec SQLSCRIPT 1 Un usage optimum de SAP Hana Votre contexte SAP Hana Si vous envisagez de migrer vers les plateformes

Plus en détail

Application Web et J2EE

Application Web et J2EE Application Web et J2EE Servlet, JSP, Persistence, Méthodologie Pierre Gambarotto Département Informatique et Math appli ENSEEIHT Plan Introduction 1 Introduction Objectfis

Plus en détail

AWS avancé. Surveiller votre utilisation d EC2

AWS avancé. Surveiller votre utilisation d EC2 10 AWS avancé Dans ce chapitre, nous bâtirons sur les bases que nous avons apprises jusqu ici. Nous étudierons des sujets plus avancés tels que la surveillance de votre utilisation d AWS, l utilisation

Plus en détail

AJAX. (Administrateur) (Dernière édition) Programme de formation. France, Belgique, Suisse, Roumanie - Canada

AJAX. (Administrateur) (Dernière édition) Programme de formation. France, Belgique, Suisse, Roumanie - Canada AJAX (Administrateur) (Dernière édition) Programme de formation Microsoft Partner France, Belgique, Suisse, Roumanie - Canada WWW.SASGROUPE.COM Formez vos salariés pour optimiser la productivité de votre

Plus en détail

LIVRE BLANC PRODUIT. Evidian SafeKit. Logiciel de haute disponibilité pour le clustering d application

LIVRE BLANC PRODUIT. Evidian SafeKit. Logiciel de haute disponibilité pour le clustering d application Evidian SafeKit Logiciel de haute disponibilité pour le clustering d application Le produit idéal pour un éditeur logiciel «SafeKit est le logiciel de clustering d application idéal pour un éditeur logiciel

Plus en détail

Hébergement de site web Damien Nouvel

Hébergement de site web Damien Nouvel Hébergement de site web Plan L'hébergeur Le serveur web Apache Sites dynamiques 2 / 27 Plan L'hébergeur Le serveur web Apache Sites dynamiques 3 / 27 L'hébergeur L'hébergeur sous-traite l'architecture

Plus en détail

Module BD et sites WEB

Module BD et sites WEB Module BD et sites WEB Cours 8 Bases de données et Web Anne Doucet Anne.Doucet@lip6.fr 1 Le Web Architecture Architectures Web Client/serveur 3-tiers Serveurs d applications Web et BD Couplage HTML-BD

Plus en détail

E-mail : contact@nqicorp.com - Web : http://www.nqicorp.com

E-mail : contact@nqicorp.com - Web : http://www.nqicorp.com - 5, rue Soutrane - 06560 Valbonne Sophia-Antipolis E-mail : contact@nqicorp.com - Web : http://www.nqicorp.com NQI Orchestra 3.3 - Guide d'installation Windows.................................................................

Plus en détail

Introduction à. Oracle Application Express

Introduction à. Oracle Application Express Introduction à Oracle Application Express Sommaire Qu est-ce que Oracle Application Express (APEX)? Vue d ensemble des fonctionnalités et des différents composants d Oracle APEX Démonstration de création

Plus en détail

Le test automatisé des applications web modernes

Le test automatisé des applications web modernes Le test automatisé des applications web modernes Résumé : Aujourd hui, les applications Web sont développées au moyen de différentes technologies AJAX et Web 2.0. Des outils nouveaux et puissants offrent

Plus en détail

Installation d un serveur HTTP (Hypertext Transfer Protocol) sous Débian 6

Installation d un serveur HTTP (Hypertext Transfer Protocol) sous Débian 6 Installation d un serveur HTTP (Hypertext Transfer Protocol) sous Débian 6 1 BERNIER François http://astronomie-astrophotographie.fr Table des matières Installation d un serveur HTTP (Hypertext Transfer

Plus en détail

<Insert Picture Here>ApExposé. Cédric MYLLE 05 Février 2008. Exposé Système et Réseaux : ApEx, Application Express d Oracle

<Insert Picture Here>ApExposé. Cédric MYLLE 05 Février 2008. Exposé Système et Réseaux : ApEx, Application Express d Oracle ApExposé Cédric MYLLE 05 Février 2008 Exposé Système et Réseaux : ApEx, Application Express d Oracle Sommaire Introduction Les besoins L outil ApEx Le développement d applications

Plus en détail

Présentation du déploiement des serveurs

Présentation du déploiement des serveurs Présentation du déploiement des serveurs OpenText Exceed ondemand Solutions de gestion de l accès aux applications pour l entreprise OpenText Connectivity Solutions Group Février 2011 Sommaire Aucun environnement

Plus en détail

18 TCP Les protocoles de domaines d applications

18 TCP Les protocoles de domaines d applications 18 TCP Les protocoles de domaines d applications Objectifs 18.1 Introduction Connaître les différentes catégories d applications et de protocoles de domaines d applications. Connaître les principaux protocoles

Plus en détail

Chapitre 4: Introduction au Cloud computing

Chapitre 4: Introduction au Cloud computing Virtualisation et Cloud Computing Chapitre 4: Introduction au Cloud computing L'évolution d'internet Virt. & Cloud 12/13 2 Définition Le cloud computing est une technologie permettant de délocaliser les

Plus en détail

Serveurs de noms Protocoles HTTP et FTP

Serveurs de noms Protocoles HTTP et FTP Nils Schaefer Théorie des réseaux (EC3a) Serveurs de noms Protocoles HTTP et FTP Théorie des réseaux (EC3a) Séance 7 Pourquoi DNS? Internet est une structure hiérarchique et arborescente de réseaux et

Plus en détail

ARCHITECTURE ET SYSTÈMES D'EXPLOITATIONS

ARCHITECTURE ET SYSTÈMES D'EXPLOITATIONS ARCHITECTURE ET SYSTÈMES D'EXPLOITATIONS Axel François bureau C19 (2eme étage) cours disponibles en pdf sur : www.iut-arles.up.univ-mrs.fr/francois 1 PLAN En Cours : qu'est-ce qu'un ordinateur? à quoi

Plus en détail

Google Drive, le cloud de Google

Google Drive, le cloud de Google Google met à disposition des utilisateurs ayant un compte Google un espace de 15 Go. Il est possible d'en obtenir plus en payant. // Google Drive sur le web Se connecter au site Google Drive A partir de

Plus en détail

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines) Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines) Module 1 : Programmer une application informatique Durée

Plus en détail

CloudBees AnyCloud : Valeur, Architecture et Technologie cloud pour l entreprise

CloudBees AnyCloud : Valeur, Architecture et Technologie cloud pour l entreprise CloudBees AnyCloud : Valeur, Architecture et Technologie cloud pour l entreprise Alors que les plates-formes PaaS (Platform as a Service) commencent à s imposer comme le modèle privilégié auprès des entreprises

Plus en détail

4. SERVICES WEB REST 46

4. SERVICES WEB REST 46 4. SERVICES WEB REST 46 REST REST acronyme de REpresentational State Transfert Concept introduit en 2000 dans la thèse de Roy FIELDING Est un style d architecture inspiré de l architecture WEB En 2010,

Plus en détail

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau) CS WEB Ch 1 Introduction I. INTRODUCTION... 1 A. INTERNET INTERCONNEXION DE RESEAUX... 1 B. LE «WEB» LA TOILE, INTERCONNEXION DE SITES WEB... 2 C. L URL : LOCALISER DES RESSOURCES SUR L INTERNET... 2 D.

Plus en détail

Microsoft Application Center Test

Microsoft Application Center Test Microsoft Application Center Test L'outil de Test de performance des Sites Web Avec Visual Studio.NET, il est fourni une petite application qui permet de valider la performance de son site Internet ou

Plus en détail

Mesures DNS à l ère du Big Data : outils et défis. JCSA, 9 juillet 2015 Vincent Levigneron, Afnic

Mesures DNS à l ère du Big Data : outils et défis. JCSA, 9 juillet 2015 Vincent Levigneron, Afnic Mesures DNS à l ère du Big Data : outils et défis JCSA, 9 juillet 2015 Vincent Levigneron, Afnic Sommaire 1. Mesures DNS réalisées par l Afnic 2. Volumes et biais 3. Limitations 4. Pourquoi une approche

Plus en détail

Une solution opensource d'affichage dynamique - XIBO

Une solution opensource d'affichage dynamique - XIBO Une solution opensource d'affichage dynamique - XIBO - Retour sur le choix de la solution XIBO au laboratoire de mathématiques de Besançon Journées Mathrice Lyon Octobre 2011 : Solution d'affichage dynamique

Plus en détail

24/11/2011. Cours EJB/J2EE Copyright Michel Buffa. Plan du cours. EJB : les fondamentaux. Enterprise Java Bean. Enterprise Java Bean.

24/11/2011. Cours EJB/J2EE Copyright Michel Buffa. Plan du cours. EJB : les fondamentaux. Enterprise Java Bean. Enterprise Java Bean. Plan du cours 2 Introduction générale : fondamentaux : les fondamentaux Michel Buffa (buffa@unice.fr), UNSA 2002, modifié par Richard Grin (version 1.1, 21/11/11), avec emprunts aux supports de Maxime

Plus en détail

CQP Développeur Nouvelles Technologies (DNT)

CQP Développeur Nouvelles Technologies (DNT) ORGANISME REFERENCE STAGE : 26572 20 rue de l Arcade 75 008 PARIS CONTACT Couverture géographique : M. Frédéric DIOLEZ Bordeaux, Rouen, Lyon, Toulouse, Marseille Tél. : 09 88 66 17 40 Nantes, Lille, Strasbourg,

Plus en détail

Technologies du Web. Créer et héberger un site Web. Pierre Senellart. Page 1 / 26 Licence de droits d usage

Technologies du Web. Créer et héberger un site Web. Pierre Senellart. Page 1 / 26 Licence de droits d usage Technologies du Web Créer et héberger un site Web Page 1 / 26 Plan Planification Choisir une solution d hébergement Administration Développement du site Page 2 / 26 Cahier des charges Objectifs du site

Plus en détail

<Insert Picture Here> Solaris pour la base de donnés Oracle

<Insert Picture Here> Solaris pour la base de donnés Oracle Solaris pour la base de donnés Oracle Alain Chéreau Oracle Solution Center Agenda Compilateurs Mémoire pour la SGA Parallélisme RAC Flash Cache Compilateurs

Plus en détail

Infrastructure RDS 2012

Infrastructure RDS 2012 105 Chapitre 3 Infrastructure RDS 2012 1. Introduction Infrastructure RDS 2012 Une infrastructure RDS 2012 R2 est composée de plusieurs serveurs ayant chacun un rôle bien défini pour répondre aux demandes

Plus en détail

MapReduce. Malo Jaffré, Pablo Rauzy. 16 avril 2010 ENS. Malo Jaffré, Pablo Rauzy (ENS) MapReduce 16 avril 2010 1 / 15

MapReduce. Malo Jaffré, Pablo Rauzy. 16 avril 2010 ENS. Malo Jaffré, Pablo Rauzy (ENS) MapReduce 16 avril 2010 1 / 15 MapReduce Malo Jaffré, Pablo Rauzy ENS 16 avril 2010 Malo Jaffré, Pablo Rauzy (ENS) MapReduce 16 avril 2010 1 / 15 Qu est ce que c est? Conceptuellement Données MapReduce est un framework de calcul distribué

Plus en détail

PostgreSQL. Formations. Catalogue 2011. Calendrier... 8

PostgreSQL. Formations. Catalogue 2011. Calendrier... 8 Formations PostgreSQL Catalogue 2011 Administration PostgreSQL... 2 PostgreSQL Avancé... 3 PostgreSQL Réplication : Hot Standby... 4 Développer avec PostgreSQL... 5 Migration Oracle vers PostgreSQL...

Plus en détail

Les sites Internet dynamiques. contact : Patrick VINCENT pvincent@erasme.org

Les sites Internet dynamiques. contact : Patrick VINCENT pvincent@erasme.org Les sites Internet dynamiques contact : Patrick VINCENT pvincent@erasme.org Qu est-ce qu un site Web? ensemble de pages multimédia (texte, images, son, vidéo, ) organisées autour d une page d accueil et

Plus en détail

Les environnements de calcul distribué

Les environnements de calcul distribué 2 e Atelier CRAG, 3 au 8 Décembre 2012 Par Blaise Omer YENKE IUT, Université de Ngaoundéré, Cameroun. 4 décembre 2012 1 / 32 Calcul haute performance (HPC) High-performance computing (HPC) : utilisation

Plus en détail

Stocker des données sur Amazon S3

Stocker des données sur Amazon S3 4 Stocker des données sur Amazon S3 Dans ce chapitre, nous plongeons la tête la première dans Amazon S3, Simple Storage Service (service simple de stockage). Après un aperçu rapide des concepts de S3 les

Plus en détail

Architecture Orientée Service, JSON et API REST

Architecture Orientée Service, JSON et API REST UPMC 3 février 2015 Précedemment, en LI328 Architecture générale du projet Programmation serveur Servlet/TOMCAT Aujourd hui Quelques mots sur les SOA API - REST Le format JSON API - REST et Servlet API

Plus en détail

Technologies Web. Ludovic Denoyer Sylvain Lamprier Mohamed Amine Baazizi Gabriella Contardo Narcisse Nya. Université Pierre et Marie Curie

Technologies Web. Ludovic Denoyer Sylvain Lamprier Mohamed Amine Baazizi Gabriella Contardo Narcisse Nya. Université Pierre et Marie Curie 1 / 22 Technologies Web Ludovic Denoyer Sylvain Lamprier Mohamed Amine Baazizi Gabriella Contardo Narcisse Nya Université Pierre et Marie Curie Rappel 2 / 22 Problématique Quelles technologies utiliser

Plus en détail

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES WEB & DÉVELOPPEMENT LES BASES DU WEB HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES LE LANGAGE HTML STRUCTURE D UNE PAGE En-tête et corps Syntaxe INSÉRER DES CONTENUS Texte : formatage (titre,

Plus en détail

Chapitre 1. Infrastructures distribuées : cluster, grilles et cloud. Grid and Cloud Computing

Chapitre 1. Infrastructures distribuées : cluster, grilles et cloud. Grid and Cloud Computing Chapitre 1. Infrastructures distribuées : cluster, grilles et cloud Grid and Cloud Computing Problématique Besoins de calcul croissants Simulations d'expériences coûteuses ou dangereuses Résolution de

Plus en détail

Les Architectures Orientées Services (SOA)

Les Architectures Orientées Services (SOA) Les Architectures Orientées Services (SOA) Ulrich Duvent Guillaume Ansel Université du Littoral Côte d Opale 50, Rue Ferdinand Buisson BP 699 62228 Calais Cedex Téléphone (33) 03.21.46.36.92 Télécopie

Plus en détail

WEA Un Gérant d'objets Persistants pour des environnements distribués

WEA Un Gérant d'objets Persistants pour des environnements distribués Thèse de Doctorat de l'université P & M Curie WEA Un Gérant d'objets Persistants pour des environnements distribués Didier Donsez Université Pierre et Marie Curie Paris VI Laboratoire de Méthodologie et

Plus en détail

EP60.92 Projet d application pluridisciplinaire La chasse aux trésors 2011-2012

EP60.92 Projet d application pluridisciplinaire La chasse aux trésors 2011-2012 EP60.92 Projet d application pluridisciplinaire La chasse aux trésors 2011-2012 I. Objectifs Mettre en œuvre les compétences acquises ou en cours d acquisition en: o Modélisation UML, Réseau, Base de données,

Plus en détail

Configurer le Serveur avec une adresse IP Statique (INTERFACE :FastEthernet) : 172.16.0.253 et un masque 255.255.0.0

Configurer le Serveur avec une adresse IP Statique (INTERFACE :FastEthernet) : 172.16.0.253 et un masque 255.255.0.0 RES_TP3 Objectifs : Les réseaux informatiques : Client - Serveur Utilisation de serveurs DHCP HTTP DNS FTP Configuration basique d un routeur Utilisation du simulateur CISCO PACKET TRACER G.COLIN Architecture

Plus en détail

«clustering» et «load balancing» avec Zope et ZEO

«clustering» et «load balancing» avec Zope et ZEO IN53 Printemps 2003 «clustering» et «load balancing» avec Zope et ZEO Professeur : M. Mignot Etudiants : Boureliou Sylvain et Meyer Pierre Sommaire Introduction...3 1. Présentation générale de ZEO...4

Plus en détail

Projet : PcAnywhere et Le contrôle à distance.

Projet : PcAnywhere et Le contrôle à distance. Projet : PcAnywhere et Le contrôle à distance. PAGE : 1 SOMMAIRE I)Introduction 3 II) Qu'est ce que le contrôle distant? 4 A.Définition... 4 B. Caractéristiques.4 III) A quoi sert le contrôle distant?.5

Plus en détail

Augmenter la disponibilité des applications JEE grâce au clustering : Le projet open source JShaft

Augmenter la disponibilité des applications JEE grâce au clustering : Le projet open source JShaft Augmenter la disponibilité des applications JEE grâce au clustering : Le projet open source Jérôme Petit, Serge Petit & Serli Informatique, ITMatic Jérôme Petit, Serge Petit & SERLI & ITMatic Serli : SSII

Plus en détail

MOTEUR DE WORKFLOW Mise en oeuvre d'openwfe Version 1.0-25 septembre 2006

MOTEUR DE WORKFLOW Mise en oeuvre d'openwfe Version 1.0-25 septembre 2006 MOTEUR DE WORKFLOW Mise en oeuvre d'openwfe Version 1.0-25 septembre 2006 SOMMAIRE 1 AVANT PROPOS...3 2 PRÉSENTATION...4 2.1 Quelques définitions...4 2.2 Besoins d'intégration d'un moteur de workflow...4

Plus en détail

Formation en Logiciels Libres. Fiche d inscription

Formation en Logiciels Libres. Fiche d inscription République Tunisienne Ministère de l'industrie et la Technologie - Secrétariat d'état de la Technologie Unité des Logiciels Libres Formation en Logiciels Libres Fiche d inscription (Une fiche par candidat)

Plus en détail

Programmation Web. Madalina Croitoru IUT Montpellier

Programmation Web. Madalina Croitoru IUT Montpellier Programmation Web Madalina Croitoru IUT Montpellier Organisation du cours 4 semaines 4 ½ h / semaine: 2heures cours 3 ½ heures TP Notation: continue interrogation cours + rendu à la fin de chaque séance

Plus en détail

Internets. Informatique de l Internet: le(s) Internet(s) Composantes de l internet R3LR RENATER

Internets. Informatique de l Internet: le(s) Internet(s) Composantes de l internet R3LR RENATER Internets Informatique de l Internet: le(s) Internet(s) Joël Quinqueton Dépt MIAp, UFR IV UPV Université Montpellier III RENATER, R3LR Services Internet Protocoles Web Sécurité Composantes de l internet

Plus en détail

Plan de notre intervention 1. Pourquoi le test de charge? 2. Les différents types de tests de charge 1.1. Le test de performance 1.2.

Plan de notre intervention 1. Pourquoi le test de charge? 2. Les différents types de tests de charge 1.1. Le test de performance 1.2. Plan de notre intervention 1. Pourquoi le test de charge? 2. Les différents types de tests de charge 1.1. Le test de performance 1.2. Le test aux limites 3. Méthode 2.1. Pré-requis 2.2. Préparation des

Plus en détail

Quels progrès dans le développement des composants icargo?

Quels progrès dans le développement des composants icargo? News letter n 5 Juin 2013 Editorial Erick Cornelisse icargo est un projet de l'union européenne du septième programme-cadre qui vise à faire progresser et à étendre l'utilisation des TIC pour soutenir

Plus en détail

Application web de gestion de comptes en banques

Application web de gestion de comptes en banques Application web de gestion de comptes en banques Objectif Réaliser une application Web permettant à un client de gérer ses comptes en banque Diagramme de cas d'utilisation 1 Les cas d'utilisation Connexion

Plus en détail

Les Content Delivery Network (CDN)

Les Content Delivery Network (CDN) Les Content Delivery Network (CDN) Paris Californie : + 45 ms Paris Sidney : + 85 ms Amazon : 100 ms de temps de chargement supplémentaires 1% de ventes en moins Poids moyen des pages d'accueil : 2000

Plus en détail

Auteur LARDOUX Guillaume Contact guillaume.lardoux@epitech.eu Année 2014 DEVELOPPEMENT MOBILE AVEC CORDOVA

Auteur LARDOUX Guillaume Contact guillaume.lardoux@epitech.eu Année 2014 DEVELOPPEMENT MOBILE AVEC CORDOVA Auteur LARDOUX Guillaume Contact guillaume.lardoux@epitech.eu Année 2014 DEVELOPPEMENT MOBILE AVEC CORDOVA Sommaire 1. Introduction 2. Installation 3. Fonctionnement 4. Développement 5. Démonstration 2

Plus en détail

FOIRE AUX QUESTIONS PAIEMENT PAR INTERNET. Nom de fichier : Monetico_Paiement_Foire_aux_Questions_v1.7 Numéro de version : 1.7 Date : 2014-05-29

FOIRE AUX QUESTIONS PAIEMENT PAR INTERNET. Nom de fichier : Monetico_Paiement_Foire_aux_Questions_v1.7 Numéro de version : 1.7 Date : 2014-05-29 FOIRE AUX QUESTIONS PAIEMENT PAR INTERNET Nom de fichier : Monetico_Paiement_Foire_aux_Questions_v1.7 Numéro de version : 1.7 Date : 2014-05-29 FOIRE AUX QUESTIONS Confidentiel Titre du document : Monetico

Plus en détail

Informatique industrielle A7-19571 Systèmes temps-réel J.F.Peyre. Partie I : Introduction

Informatique industrielle A7-19571 Systèmes temps-réel J.F.Peyre. Partie I : Introduction Informatique industrielle A7-19571 Systèmes temps-réel J.F.Peyre Partie I : Introduction Plan de la première partie Quelques définitions Caractéristiques communes des applications temps-réel Exemples d

Plus en détail