Les applications Facebook peuvent plus que les autres être soumises à de fortes bouffées de succès viral. Il est donc primordial de les héberger sur un cloud. Venez voir la simplicité de mise en oeuvre sur la plateforme Windows Azure.
6. Supervzin est une solution d'optimisation de la performance sur
les réseaux sociaux qui permet:
de comprendre et d'analyser son audience de mesurer la performance de ses
concurrents de suivre ses contenus les plus engageants
d'identifier ses ambassadeurs
7. SOMMAIRE
Présentation de Windows Azure
Déploiement / Elasticité de Windows Azure
Windows Azure Compute / Facebook Apps
La fédération d’identité
Access Control Service 2.0 / Windows Identity Fondation SDK
Facebook OpenGraph API avec ASP.NET MVC3
WebRole & Facebook C# SDK
Subscriptions API & WorkerRole
WorkerRole & Queue & Facebook C# SDK
10. Windows Azure
Application Services
Software Services
Platform Services
11. Windows Azure Platform
Application Services
Frameworks “Dublin” “Velocity”
Security Access Control “Geneva”
Project
Connectivity Service Bus “Sydney”
SQL Azure
Data Data Sync
Compute C/C++
Win32 VHD
Content Delivery
Storage Table Storage Blob Storage Queue Drive Network
12. Windows Azure Platform
Développement,Hébergement, et plateforme
d’administration
.NET, Java PHP, Python, Ruby, native code
(C/C++, Win32, etc.)
ASP.NET
providers, FastCGI, memcached, MySQL, Tomcat
Full-trust
Management API’s via REST, and logging and
diagnostics systems
Plusieurs rôle– Web, Worker, Virtual Machine (VHD)
Plusieurs taille de VM disponible
1.6 GHz CPU x64, 1.75GB RAM, reseau 100Mbps
, 250GB stockage volatile
Small (1X), Medium (2X), Large (4X), X-Large (8X)
Mises à jour séquencées par domain et par rôle, pas de
coupure de services
Compute C/C++
Win32 VHD
13. Windows Azure Platform
Rich data abstractions – tables, blobs, queues, drives, CDN
Capacity (100TB), throughput (100MB/sec),
transactions (1K req/sec)
High accessibility
Supports geo-location
Language & platform agnostic REST APIs
URL: http://<account>.<store>.core.windows.net
Client libraries for .NET, Java, PHP, etc.
High durability – data is replicated across datacenters
High scalability – data is automatically partitioned and load
balanced across servers
Storage
14. Windows Azure Platform
Storage for large, named files plus their metadata
Block Blob
Each blob consists of a sequence of blocks
Each block is identified by a Block ID
Size limit 200GB per blob
Blob Storage
15. Windows Azure Platform
Performance efficient, highly available and provide reliable
message delivery
Asynchronous work dispatch
Inter-role communication
Polling based model; best-effort FIFO data structure
Queue operations > Message operations
Create Queue • Add Message
Delete Queue
List Queues • Get Message(s)
Get/Set Queue Metadata • Peek Message(s)
• Delete Message
Queue
16. Windows Azure Platform
Highly available, scalable, and consistent distributed relational
database; geo-replication and geo-location of data
Relational database, provided as a service
Highly symmetrical development and tooling
experience (use TDS protocol and T-SQL)
Highly scaled out, on commodity hardware
Built on the SQL Server technology foundation
Editions: Web (1GB), Business (25GB)
Data
17. Windows Azure Platform
Security Access Control
Access Control Service 2.0
- Authentification via fournisseurs d’identité multiples
- S’intègre avec LiveId, Facebook, Yahoo, Google…
- Disponible en production
- Gratuit actuellement
- Courant 2012 : 1,99$ pour 100,000 transactions
36. Facebook OpenGraph API avec ASP.NET
MVC3
Installation de Facebook C# SDK avec nuget
Authentification client via Javascript SDK
Appel à l’API Facebook côté serveur
39. Subscriptions API & RealTime Update
A chaque connexion d’un utilisateur facebook sur l’application il est
nécéssaire de mettre à jour toutes les informations le concernant.
On ne fait plus de « polling » sur facebook pour mettre à jour les données
Facebook nous notifie directement de la modification d’un objet
Limitations, cela est disponible uniquement sur les objets suivants:
User
Permissions
Page
40. Subscriptions API & RealTime Update
User
feed, friends, activities, interests, music, books,
movies, television, likes, checkins
Permissions
Notification du changement des autorisations sur
une application
Page
Notification de mise à jour, uniquement les
champs de l’objet application disponible
publiquement.
41. Subscriptions API & RealTime Update
- Mise à jour des informations
du profil
(musics/movies/interests
etc….)
- Vérification des autorisation
sur l’application
42. Subscriptions API & RealTime Update
X
- Mise à jour des informations
du profil
(musics/movies/interests
etc….)
- Vérification des autorisation
sur l’application
43. Subscriptions API & RealTime Update
{ "object": "user", "entry": [ {
"uid": 1335845740, "changed_fields":
[ "name", "picture" ], "time": 232323
}, { "uid": 1234, "changed_fields": [
"friends" ], "time": 232325 } ] }
Traitement et appel à l’API
Subscriptions
Mise à jour des informations
Appel de l’URL de callback en GET
Schéma classique sans Windows Azure
44. Subscriptions API & RealTime Update
{ "object": "user", "entry": [ {
"uid": 1335845740, "changed_fields":
[ "name", "picture" ], "time": 232323
}, { "uid": 1234, "changed_fields": [
"friends" ], "time": 232325 } ] }
Traitement et appel à l’API
Subscriptions
Mise à jour des informations
Appel de l’URL de callback en GET
Schéma classique sans Windows Azure
45. Subscriptions API & RealTime Update
{ "object": "user", "entry": [ {
"uid": 1335845740, "changed_fields":
[ "name", "picture" ], "time": 232323
}, { "uid": 1234, "changed_fields": [
"friends" ], "time": 232325 } ] }
Traitement et appel à l’API
Subscriptions
Mise à jour des informations
Appel de l’URL de callback en GET
Schéma classique sans Windows Azure
46. Subscriptions API & RealTime Update
{ "object": "user", "entry": [ {
"uid": 1335845740, "changed_fields":
[ "name", "picture" ], "time": 232323
}, { "uid": 1234, "changed_fields": [
"friends" ], "time": 232325 } ] }
Stockage en queue On dépile la queue
Subscriptions des traitements de message à traiter
à effectuer
WebRole recevant le
callback en GET Queue Message WorkerRole assurant les
appels à l’api facebook
Avec Windows Azure
47. Subscriptions API & RealTime Update
{ "object": "user", "entry": [ {
"uid": 1335845740, "changed_fields":
[ "name", "picture" ], "time": 232323
}, { "uid": 1234, "changed_fields": [
"friends" ], "time": 232325 } ] }
Stockage en queue On dépile la queue
Subscriptions des traitements de message à traiter
à effectuer
Queue Message
X WebRole recevant le X WorkerRole assurant les
callback en GET appels à l’api facebook
Avec Windows Azure
51. Des ressources Windows Azure
gratuites
Testez Windows Azure Abonnés MSDN, vous
gratuitement pendant bénéficiez de
90 jours Windows Azure
http://aka.ms/ http://aka.ms/
tester-azure-90j activer-azure-msdn
52. Pour aller plus loin
Chaque semaine, les DevCamps Prochaines sessions des Dev Camps
10 février Open Data - Développer des applications riches avec le protocole Open
Live Meeting
ALM, Azure, Windows Phone, HTML5, OpenData 2012 Data
http://msdn.microsoft.com/fr-fr/devcamp 16 février
2012
Live Meeting
Azure series - Développer des applications sociales sur la plateforme
Windows Azure
17 février
Live Meeting Comprendre le canvas avec Galactic et la librairie three.js
2012
Téléchargement, ressources et 21 février
2012
Live Meeting La production automatisée de code avec CodeFluent Entities
toolkits : RdV sur MSDN 2 mars
2012
Live Meeting
Comprendre et mettre en oeuvre le toolkit Azure pour Windows Phone 7,
iOS et Android
http://msdn.microsoft.com/fr-fr/
6 mars
Live Meeting Nuget et ALM
2012
Les offres à connaître
9 mars
Live Meeting Kinect - Bien gérer la vie de son capteur
2012
13 mars
90 jours d’essai gratuit de Windows Azure 2012
Live Meeting Sharepoint series - Automatisation des tests
www.windowsazure.fr 14 mars
2012
Live Meeting
TFS Health Check - vérifier la bonne santé de votre plateforme de
développement
15 mars Azure series - Développer pour les téléphones, les tablettes et le cloud
Jusqu’à 35% de réduction sur Visual Studio 2012
Live Meeting
avec Visual Studio 2010
Pro, avec l’abonnement MSDN 16 mars
2012
Live Meeting
Applications METRO design - Désossage en règle d'un template METRO
javascript
www.visualstudio.fr 20 mars
Live Meeting
Retour d'expérience LightSwitch, Optimisation de l'accès aux données,
2012 Intégration Silverlight
23 mars
Live Meeting OAuth - la clé de l'utilisation des réseaux sociaux dans votre application
2012