Social mobile and web app with authentication
This mobile client app offers social image sharing with a companion web app. The app back end service does background image processing using an Azure Function and can notify users of progress via a notification hub. Non-image data is stored in CosmosDB. The web app accesses the back end service data and images via Traffic Manager.
The mobile client app works in offline mode, allowing you to view and upload images even when you don’t have a network connection.
Create the app using Visual Studio and Xamarin.
Add the Azure App Service Mobile Apps back end service to the app solution.
Implement authentication through social identity providers.
Store non-image data in CosmosDB and cache it in Redis Cache.
Store uploaded images in Azure Blob Storage.
Queue messages about newly uploaded images.
Use Azure Functions to dequeue messages and process images retrieved from blob storage.
Send push notifications to users through a notification hub.
Build and test the app through Visual Studio App Center and publish it.
Control the distribution of user traffic to service endpoints in different datacenters.
Use Application Insights to monitor the app service.
- 1 Create the app using Visual Studio and Xamarin.
- 2 Add the Azure App Service Mobile Apps back end service to the app solution.
- 3 Implement authentication through social identity providers.
- 4 Store non-image data in CosmosDB and cache it in Redis Cache.
- 5 Store uploaded images in Azure Blob Storage.
- 6 Queue messages about newly uploaded images.
- 7 Use Azure Functions to dequeue messages and process images retrieved from blob storage.
- 8 Send push notifications to users through a notification hub.
- 9 Build and test the app through Visual Studio App Center and publish it.
- 10 Control the distribution of user traffic to service endpoints in different datacenters.
- 11 Use Application Insights to monitor the app service.
Linee guida di implementazione
|Build the web front end, mobile apps, and back end services with C# in Visual Studio 2017 or Visual Studio for Mac.|
|Create mobile apps for iOS and Android using C# and Azure SDKs.|
Visual Studio App Center
|App Center enables a continuous integration and deployment workflow by pulling code from BitBucket, GitHub, and Visual Studio Team Services.|
|An App Service web app can host a customer-facing web app and a service that is used by both the web and mobile client.|
|Use Azure Functions for serverless background processing. For example, one Azure function can automatically resize new blobs when they're added to a container, while another function listens for messages on a queue in order to delete multiple background images.|
|Detect issues, diagnose crashes, and track usage in your web app with Application Insights. Make informed decisions throughout the development lifecycle.|
Azure Cosmos DB
|Azure Cosmos DB is a fully-managed NoSQL document database service. It offers querying and transaction-processing over schema-free data, predictable and reliable performance, and rapid development.|
|Azure Queue storage is used for durable messaging between the App Service backend and Azure Functions.|
|Images are stored in Azure Storage to take advantage of better scalability with lower cost. Communication between the web app and the Azure function is often performed using blob triggers and Azure Queue storage.|
Hub di notifica
|Azure Notification Hubs are used for scalable, cross-platform push notifications.|
|Azure Traffic Manager controls the distribution of user traffic for service endpoints in different datacenters in order to deliver a highly responsive and available application.|
Informazioni sui prodotti
Architetture delle soluzioni correlate
Questa architettura per app per dispositivi mobili consumer usa le app per dispositivi mobili del servizio app di Azure per semplificare l'autenticazione con più provider di identità basata su social network, l'archiviazione dei dati, la sincronizzazione dei dati per l'accesso offline e l'invio di notifiche push.
L'architettura dell'app per la forza lavoro mobile usa Active Directory per proteggere i dati aziendali da un sistema back-end SAP, distribuito ai dispositivi tramite Gestione API del Servizio app di Azure.