39
Xamarin & le Cloud

Xamarin day - Xamarin et le cloud

Embed Size (px)

Citation preview

Xamarin & le Cloud

Speakers

Michel Hubert• Directeur Technique

Antony Canut• Consultant Xamarin

@michelhubert

Qu’est-ce qu’une application mobile ?

API (Rest/Json) B/L Tier Database

« 80% d’appels de services API/Rest »

Enjeux de la mobilité

Disponibilité

Scalabilité

Performance

Sécurité

Architecture technique

Sécurité

API Management

ESB

SAP AS/400

API Management

Firewall

XML to JSON / SOAP to REST

REST SOAP

Architecture technique

Démo - Sécurité

API Management

Architecture technique

Scalabilité

Qu’est-ce qu’une application mobile ?

API (Rest/Json) B/L Tier Database

Scalabilité

API (Rest/Json) B/L Tier Database

Serveur surchargé

Scalabilité

API (Rest/Json) B/L Tier Database

Timeout

Scalabilité

« Comment gère-t-on ce cas de figure avec une architecture on-premises ? »

Scalabilité

API (Rest/Json) B/L Tier Database

API (Rest/Json)

API (Rest/Json)Lo

ad

Bala

nce

r

Scalabilité

API (Rest/Json) B/L Tier Database

API (Rest/Json)

API (Rest/Json)Lo

ad

Bala

nce

r B/L Tier

B/L TierLo

ad

Bala

nce

r

P1 P2 P3

Architecture complexe et coûteuse

Scalabilité

API (Rest/Json) B/L Tier Database

API (Rest/Json)

API (Rest/Json)Lo

ad

Bala

nce

r B/L Tier

B/L TierLo

ad

Bala

nce

r

P1 P2 P3

Solution surdimensionnée

Baisse d’activité

Scalabilité

Temps

Nombre de

visites

CapacitéMarge de

sécurité

Surdimensionnement

En période normale, la plateforme traditionnelle est surdimensionnée et

coûteuse

Scalabilité

Temps

Nombre de

visitesPic

prévisible

Capacité

Certes, elle permet d’anticiper les pics prévisibles …

Scalabilité

Temps

Nombre de

visites Pic

imprévisible

Capacité

… Mais pas les pics imprévisibles

Scalabilité

« Comment le Cloud Computing peut vous aider ? »

Cloud & Scalabilité

Temps

Nombre de

visites

3

4

6

4

6

Avec le Cloud, la capacité s’adapte aux besoins réels !

Cloud & Scalabilité

• L’élasticité : les différentes politiquesPlusieurs politiques peuvent être mises en place pour rendre les services « élastique » et adaptableà la charge réellement utilisée :

Manuelle

Programmée

Automatique

Cloud & Scalabilité

Architecture technique

Démo - Scalabilité

Portail Azure

t

Co

mp

ute

Inactivity

Period

t

t

t

On and OffOn & off workloads (e.g. batch job)Over provisioned capacity is wasted Time to market can be cumbersome

Unpredictable BurstingUnexpected/unplanned peak in demand Sudden spike impacts performance Can’t over provision for extreme cases C

om

pu

te

Growing FastSuccessful services needs to grow/scale Keeping up w/ growth is big IT challenge Cannot provision hardware fast enoughC

om

pu

te

Predictable BurstingServices with micro seasonality trends Peaks due to periodic increased demandIT complexity and wasted capacity

Co

mp

ute

Cloud Computing Patterns

Architecture technique

Disponibilité

Business Continuity

Offre Azure

Disponibilité

Azure

99,95 %

Design for failureAutomatisation

Réplication

Disponibilité

Règle des 9

Cluster

Backup

DR « cold »

DR « hot »

Live / Live

99,999 %

99,99%

99%

98%

€ €€ €€€ €€€€

Azure Site Recovery

Customer 1 DC

Microsoft Azure Site Recovery

Microsoft Azure

Customer 2 DC

DR OrchestrationDR Orchestration

Target: Microsoft Azure

Extensible Data

Channel

Traffic Manager

X

Architecture technique

Performance

Performance

Avant tout une question d’architecture technique/logicielle Exemples : Patterns CQRS, Stratégie de caching, Fire&Forget …

Database

Database

Esclave

Maître

Synchronisation

Lecture (80%)

Internationalisation

https://monservicerest.com

Internationalisation

https://monservicerest.com

Datacenters Azure 28 Regions Worldwide

100+ datacenters

Top 3 networks in the world

2.5x AWS, 7x Google DC Regions

G Series – Largest VM in World, 32 cores, 448GB Ram, SSD…

Operational

Announced/Not Operational

Central US

Iowa

West US

California

East US

Virginia

US Gov

Virginia

North Central US

Illinois

US Gov

Iowa

South Central US

Texas

Brazil South

Sao Paulo State

West Europe

Netherlands

China North *

Beijing

China South *

Shanghai

Japan East

Tokyo, Saitama

Japan West

Osaka

India South

Chennai

East Asia

Hong Kong

SE Asia

Singapore

Australia South East

Victoria

Australia East

New South Wales

* Operated by 21Vianet ** Operated by Deutsche Telekom

India Central

Pune

Canada East

Quebec City

Canada Central

Toronto

India West

Mumbai

Germany North East **

Magdeburg

Germany Central **

FrankfurtNorth Europe

Ireland

East US 2

Virginia

United Kingdom

RegionsUnited Kingdom

Regions

Un peu de PowerShell…

Créer un profil Traffic Manager

New-AzureTrafficManagerProfile -Name "SDP-TM-Performance" -DomainName "SDP-TM-Performance.trafficmanager.net" -LoadBalancingMethod "Performance" -MonitorProtocol "Http" -MonitorPort 80 -MonitorRelativePath "/iis85.jpg" -Ttl30

$TMProfile = Get-AzureTrafficManagerProfile -name "SDP-TM-Performance"

Add-AzureTrafficManagerEndpoint -TrafficManagerProfile $TMProfile -DomainName"SDP-EUS-CS01.cloudapp.net" -Status "Enabled" -Type "CloudService" | Set-AzureTrafficManagerProfile

Add-AzureTrafficManagerEndpoint -TrafficManagerProfile $TMProfile -DomainName"SDP-WE-CS01.cloudapp.net" -Status "Enabled" -Type "CloudService" | Set-AzureTrafficManagerProfile

Le mode dégradé / Offline

API (Rest/Json) B/L Tier DatabaseX

Mobile App fournit un SDK Xamarin (Synchronisation, …)

Architecture technique

Performance

Mode Offline - Synchronisation

Pour conclure

Disponibilité

Scalabilité

Performance

Sécurité

Questions ?Nous avons peut être une réponse