31
#azurecamp Site ou API Web + SQL Benjamin Guinebertière Technical Evangelist – DX Microsoft France http://3-4.fr , @benjguin 24 juin 2014 Cédric Derue Web Architect Altran @ cderue

[AzureCamp 24 Juin 2014] Site ou API Web + SQL par Benjamin Guinebertière et Cédric Derue

Embed Size (px)

DESCRIPTION

[AzureCamp 24 Juin 2014] Site ou API Web + SQL par Benjamin Guinebertière et Cédric Derue

Citation preview

Page 1: [AzureCamp 24 Juin 2014] Site ou API Web + SQL par Benjamin Guinebertière et Cédric Derue

#azurecampSite ou API Web + SQL

Benjamin GuinebertièreTechnical Evangelist – DXMicrosoft Francehttp://3-4.fr, @benjguin

24 juin 2014

Cédric DerueWeb ArchitectAltran@cderue

Page 2: [AzureCamp 24 Juin 2014] Site ou API Web + SQL par Benjamin Guinebertière et Cédric Derue

Windows Azure Camp: nos partenairesSPONSORS MICROSOFT AZURE CAMP

Page 3: [AzureCamp 24 Juin 2014] Site ou API Web + SQL par Benjamin Guinebertière et Cédric Derue

Architectures

Mobile Services

fonctionnement de Web Sites

PHP + MySql

ASP.NET Web API + SQL Database

Autres scénarios

Montée en charge, haute disponibilité

Au programme

Page 4: [AzureCamp 24 Juin 2014] Site ou API Web + SQL par Benjamin Guinebertière et Cédric Derue

Schéma synoptique

Application WebH

TML,

Base de données

relationnelle

HTML, …

Page 5: [AzureCamp 24 Juin 2014] Site ou API Web + SQL par Benjamin Guinebertière et Cédric Derue

Schéma synoptique

APIWeb

JSO

N, X

ML,

Base de données

relationnelle

Application Mobile, App HTML/js, …

Page 6: [AzureCamp 24 Juin 2014] Site ou API Web + SQL par Benjamin Guinebertière et Cédric Derue

Schéma synoptique

HTM

L,

Base de données

relationnelle

HTML, …

Application Web

et

APIWeb

JSO

N, X

ML,

Application Mobile, App HTML/js, …

Page 7: [AzureCamp 24 Juin 2014] Site ou API Web + SQL par Benjamin Guinebertière et Cédric Derue

Environnements d’exécution sur AzureMachines virtuelles

Mobile ServicesWeb SitesSQL Database, MySql via Add-On ClearDB

Page 8: [AzureCamp 24 Juin 2014] Site ou API Web + SQL par Benjamin Guinebertière et Cédric Derue

Langage/environnement de l’API ou du siteLangage : • Java (JVM), C# (.NET)• PHP, Node.js, Python, Ruby

Framework :• Zend Framework 2, Symfony, ASP.NET MVC, ASP.NET Web API,

Express, Django, Spring Web MVC, Ruby on Rails,…

Environnement de développement:• Visual Studio, Eclipse, vi, notepad++• git, Visual Studio Online, Mercurial, GitHub, Bitbucket, Codeplex, …

Page 9: [AzureCamp 24 Juin 2014] Site ou API Web + SQL par Benjamin Guinebertière et Cédric Derue

Base de données relationnelle

MySQL, MariaDB,PostgreSQL,SQL Server, Azure SQL Database,Oracle DB,DB2,…

Page 10: [AzureCamp 24 Juin 2014] Site ou API Web + SQL par Benjamin Guinebertière et Cédric Derue

demo #azurecamp

Mobile Services Node.js

Page 11: [AzureCamp 24 Juin 2014] Site ou API Web + SQL par Benjamin Guinebertière et Cédric Derue

Fonctionnement de Web Sites(version simplifiée)

Frontal (ARR)

Serveur 1

Serveur …

Serveur n

Contenu serveur du

site

définition du site

Page 12: [AzureCamp 24 Juin 2014] Site ou API Web + SQL par Benjamin Guinebertière et Cédric Derue

HTTP

Site DB

Site DB

Site DB

WebWorker

WebWorker

WebWorker

Azure LB

Frontend(IIS ARR)

Runtime DB

SQL Azure VHD blobs

Site DB

SQL Azure / MySQL / Mongo

API endpoint

Publish endpoint File Server

WebWorker

Site DB

Site DB

Serving HTTP(s) Traffic – Inactive Site (‘cold’ site)

http://site1..../

Page 13: [AzureCamp 24 Juin 2014] Site ou API Web + SQL par Benjamin Guinebertière et Cédric Derue

HTTP

Azure LB

Frontend(IIS ARR)

Runtime DB

SQL Azure VHD blobs

SQL Azure

API endpoint

Publish endpoint File Server

Site DB

Serving HTTP(s) Traffic – Inactive Site (‘cold’ site)

http://site1..../ WebWorker

site1site1

Page 14: [AzureCamp 24 Juin 2014] Site ou API Web + SQL par Benjamin Guinebertière et Cédric Derue

HTTP

Site DB

Site DB

Site DB

WebWorker

WebWorker

WebWorker

Azure LB Runtime

DBMetering

DBSQL Azure VHD blobs

Site DB

SQL Azure

API endpoint

Publish endpoint File Server

Site DB

Site DB

Serving HTTP(s) Traffic – Active Site (‘hot’ site)

http://site1..../

site1

WebWorker

Frontend(IIS ARR)

Page 15: [AzureCamp 24 Juin 2014] Site ou API Web + SQL par Benjamin Guinebertière et Cédric Derue

demo #azurecampAppli. PHP / MySql

Page 16: [AzureCamp 24 Juin 2014] Site ou API Web + SQL par Benjamin Guinebertière et Cédric Derue

Créer un site web sur AzureConfigurer le contrôle de

source

Coder

Pousser pour déployer

Admirer ! Sites Web Azure Git

Page 17: [AzureCamp 24 Juin 2014] Site ou API Web + SQL par Benjamin Guinebertière et Cédric Derue

Si vous venez à Lyon…

Page 18: [AzureCamp 24 Juin 2014] Site ou API Web + SQL par Benjamin Guinebertière et Cédric Derue

demo #azurecamp

API PHP / Table Storage

Page 19: [AzureCamp 24 Juin 2014] Site ou API Web + SQL par Benjamin Guinebertière et Cédric Derue

Sites Web Azure

API PHP App mobile

Page 20: [AzureCamp 24 Juin 2014] Site ou API Web + SQL par Benjamin Guinebertière et Cédric Derue

demo #azurecamp

ASP.NET Web APISQL Database

Page 21: [AzureCamp 24 Juin 2014] Site ou API Web + SQL par Benjamin Guinebertière et Cédric Derue

VM (ex: Ubuntu Server LTS)

Ruby + PostgreSQL – dev/test

Ruby On Rails

HTM

L, JS

ON

, XM

L, …

PostgreSQL

Page 23: [AzureCamp 24 Juin 2014] Site ou API Web + SQL par Benjamin Guinebertière et Cédric Derue

Montée en charge / haute disponibilitéAutoscaling automatique dans Web Sites et Mobile Services,

load balancing inclus

Page 24: [AzureCamp 24 Juin 2014] Site ou API Web + SQL par Benjamin Guinebertière et Cédric Derue

Montée en charge / haute disponibilitéAutoscaling automatique dans Web Sites et Mobile Services,

load balancing inclus

Page 25: [AzureCamp 24 Juin 2014] Site ou API Web + SQL par Benjamin Guinebertière et Cédric Derue

Montée en charge / haute disponibilitéVM: autoscaling

Page 26: [AzureCamp 24 Juin 2014] Site ou API Web + SQL par Benjamin Guinebertière et Cédric Derue

Montée en charge / haute disponibilitéVM: load balancing nginx1

nginx2

LB

Page 27: [AzureCamp 24 Juin 2014] Site ou API Web + SQL par Benjamin Guinebertière et Cédric Derue

Montée en charge / haute disponibilitéVM: availability set

CNODEX1X1

CNODEX1X1

CNODEX1X1

Page 28: [AzureCamp 24 Juin 2014] Site ou API Web + SQL par Benjamin Guinebertière et Cédric Derue

Ruby + PostgreSQL - distribué

Ruby On Rails

Ruby On Rails

LB

Azure

PostgreSQL

Notions Azure utiles:• Load Balancer

(endpoints)• vNet• VM• Availability Set

Page 29: [AzureCamp 24 Juin 2014] Site ou API Web + SQL par Benjamin Guinebertière et Cédric Derue

#azurecampConclusion

Page 30: [AzureCamp 24 Juin 2014] Site ou API Web + SQL par Benjamin Guinebertière et Cédric Derue

Windows Azure Camp: nos partenairesSPONSORS MICROSOFT AZURE CAMP

Page 31: [AzureCamp 24 Juin 2014] Site ou API Web + SQL par Benjamin Guinebertière et Cédric Derue

Boostez votre projet cloud!

Remportez un Hands-On

avec nos spécialistes Azure le 3 juillet

Inscrivez-vous sur notre stand!