Integrating Serverless Architecture: Using Azure Functions, Cosmos Db, and Signalr Service
Design, develop, build, and deliver an end-to-end serverless architecture by leveraging Azure services, frameworks, and tools. This book offers a holistic approach, guiding you through the design and development of a Twitter Bot application, while leveraging Azure Functions.
Integrating Serverless Architecture begins with an overview of serverless computing and getting started with Azure Functions. Here, you will create a Twitter bot function which scans Twitter for the latest tweets and makes use of dependency injection. Further, you will learn about Azure Cosmos DB where you will cover its change feed mechanism and the repository pattern. You will create a Cosmos DB trigger-based tweet notifier function, which will broadcast the latest tweets to connected clients. You will explore the basics of Azure Service Bus and create a tweet scheduler function, which will prioritize different keywords for the Twitter bot function. Along the way, you will debug, deliver, and test the functions in the Azure environment.
This book shows you how to secure your Azure Function secrets with the help of Azure Key Vault. To further your understanding of the technology, you will learn logging and exception handling in Azure Functions.Later in the book, you will build a Twitter bot web application by using ASP.NET Core and Materialize CSS, which will interact with several HTTP-based Azure Functions. The Twitter bot web application allows users to log in through the Twitter Identity Provider, subscribe to different keywords/hashtags, and browse the latest tweets based on subscriptions. You will get started with SignalR Service and integrate it with Azure Functions and web applications. Towards the end you will go through app service authentication on Azure Functions and discover how to configure continuous integration and delivery to Azure Functions.
After reading this book, you will be able to understand the steps involved in design, development, and delivery of a workflow using Azure Functions.
What You Will Learn
- Design and develop a Twitter bot application using Azure Functions with Azure Web App Service as the front end
- Leverage Azure Cosmos DB as data storage and trigger notifications using its change feed mechanism
- Store and retrieve secrets from Azure Key Vault
- Integrate Azure Functions with Azure SignalR Service to broadcast real-time messages
- Secure Azure Functions by enabling Twitter identity authentication using built-in App Service authentication
- Build a continuous integration and continuous delivery pipeline for Azure Functions using Visual Studio Team Services (VSTS)
Who This Book Is For
Developers, software engineers, and architects who design and manage infrastructures and build applications by leveraging Microsoft cloud services.
Rami Vemula is a technology consultant who has more than 8 years of experience in delivering scalable Web and Cloud solutions using Microsoft Technologies and platforms, which includes ASP.NET MVC/Web API, .NET Core, ASP.NET Core, JQuery, C#, Entity Framework, SQL Server and Azure.
He is currently working for Microsoft India Global Delivery as a Consultant. As part of his work, he architects, develops and maintains technical solutions to various clients in Public and Private Sectors.Although web technologies are his primary area of focus, he also worked on other technologies which include Big Data Analytics using HDInsight, Universal Windows Platform Apps, Containerization using Docker etc. He is also interested in providing streamlined DevOps integration flows through which development teams can achieve greater productivity. Now a days he is promoting Open Source technologies, platforms and tools to build cross platform solutions.
He is a Microsoft Certified ASP.Net and Azure Developer. He was a Microsoft Most Valuable Professional (MVP) in ASP.NET from 2011 to 2014 and an active trainer. In his free time, he enjoys answering technical questions at StackOverflow and forums.asp.net. He loves to share his technical experiences through his blog at http: //intstrings.com/ramivemula. Apart from technology, his other interests include movies, drama and theatre arts.
He holds a Master's Degree in Electrical Engineering from California State University, Long Beach, USA. He is married and lives with his wife, kid and parents in Hyderabad, India.You can reach Rami at email@example.com or https: //twitter.com/RamiRamilu.