Solution architecture: Social mobile and web app with authentication

A mobile client app for social image sharing with a companion web app. The app back-end carries out background image processing using an Azure Function. The mobile client app works in offline mode, allowing you to view and upload images, even when you don't have a network connection.

This solution is built on the Azure-managed services: App Service, Traffic Manager, DocumentDB, Redis Cache, Notification Hubs, Azure Active Directory, Functions, Application Insights and HockeyApp. These services run in a high-availability environment that is patched and supported, allowing you to focus on your solution instead of the environment they run in.

Social mobile and web app with authentication A diagram showing the solution architecture of a social mobile and web app with authentication, built on the Azure-managed services App Service, Traffic Manager, DocumentDB, Redis Cache, Notification Hubs, Azure Active Directory, Functions, Application Insights and HockeyApp. Application Insights App Service Phone & Tablet Traffic Manager Other regions HockeyApp Notification Hub Continuous integrationand deployment Browser Identity provider Document DB Redis Cache Queue Blob Storage Function

Implementation guidance

Products Documentation

App Service

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.

Traffic Manager

Azure Traffic Manager is used to improve app performance and content delivery by directing users to the App Service instance with the lowest network latency.


DocumentDB is a fully managed NoSQL database service built for fast and predictable performance, high availability, automatic scaling and global distribution.

Redis Cache

Redis Cache enables high-throughput, low-latency data access and improves scalability by reducing the load on the main database.

Queue storage

Azure Queues are used for durable messaging between the App Service back-end and Azure Functions.

Blob storage

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 Queues.

Notification Hubs

Azure Notification Hubs are used for scalable cross-platform push notifications.

Azure Active Directory

Azure Active Directory is used for secure, enterprise-grade authentication.


Use Azure Functions for serverless background processing. For instance, whenever a new blob is added to a container, an Azure Function can automatically resize it. Another Azure Function can listen for messages on a queue in order to delete multiple images in the background.

Application Insights

Detect issues, diagnose crashes and track usage in your web app with Application Insights. Make informed decisions throughout the development life cycle.


Use HockeyApp to get crash reports, track app usage and distribute your mobile apps.

Identity provider

Use App Service Authentication/Authorisation to integrate with a social or enterprise identity provider.

Continuous integration and deployment

App Service enables a continuous integration and deployment workflow by pulling code from BitBucket, GitHub and Visual Studio Team Services.

Related solution architectures