Microsoft Azure is an ever-expanding set of cloud services to help your organization meet the business challengers. Choosing the optimal service to solve the problem is the challenging part. Let’s take a common business problem and design an Application Architecture using azure services discussing some azure service and their usage considering basic architectural design aspects.
2. About Me
10+ years of experience as a Developer
Awarded with 4 MVP Awards
First Female MVP in Sri Lanka
Speaker, Blogger and a mentor
Senior Technical Lead at
4. Overview
Case Study
Front End
&
API
• Discuss a scenario where
we need to design an
architecture
• Azure Services for hosting
• Scalability
• Security
• Monitoring
• Availability
Supporting
Services
• Handling requests
• Improve searching
• Automating workflows
5. Case Study
Functional Requirements:
1. System should contain the above modules
2. Companies should be able to create their subscription and add
the users in to it for managing the event
3. All the modules will be available for each subscription
4. Global search should be there for event organizers to search
content in the system
Non-Functional Requirements:
1. There will be around 20-25 subscriptions and around 250 users
2. This will be a used by users in multiple regions
3. High traffic should be handled when events are published
8. Hosting Options
• Azure Offering – IaaS
you are responsible for
managing everything from the
Operating System on up to the
application you are running
• Azure Offering – PaaS
It comes with lot of added
services
Ex: Deployment Slots,
Monitoring, Scaling
Price (Per Month) : $20
• Azure Offering – PaaS
- It comes with lot of added
services
Ex: Scaling, Simple,
Price (Per Month) : $0.46
13. Hosting Options
• Azure Offering – IaaS
you are responsible for
managing everything from the
Operating System on up to the
application you are running
• Azure Offering – PaaS
It comes with lot of added
services
Ex: Deployment Slots,
Monitoring, Scaling
• Azure Offering – Serverless
- Event Based trigger
- Highly Scalable
- Pay-Per-Use Pricing Model
15. Scaling - Attendee Registrations
• Event Hub
you are responsible for
managing everything from the
Operating System on up to the
application you are running
• Queue
Queues care more about
making sure that every
message gets processed and
gets processed completely
17. Security – User Authentication
Azure B2B Azure B2C
• Intended for: Organizations that want
to be able to authenticate users from a
partner organization, regardless of
identity provider.
• Identities supported: Employees with
work or school accounts, partners with
work or school accounts, or any email
address. Soon to support direct
federation.
Intended for: Inviting customers of your
mobile and web apps, whether individuals,
institutional or organizational customers into
your Azure AD.
Identities supported: Consumer users with
local application accounts (any email
address or user name) or any supported
social identity with direct federation.
18. Security – Storing Keys
Security
Administrator
Store Secret
Key URI
Access Policy for API APP
Developer
Key URI
Secret
19. Management – Application Insights
• Request rates, response times, and
failure rates
• Dependency rates, response times,
and failure rates
• Exceptions
• Set Alerts
21. Handling Notifications
Azure Cosmos DB Cosmos DB
triggered Function
Azure Signal R
Angular App
• All the clients would be connected to the
service only.
• Connection management is fully handled