Quantcast
Channel: chsakell's Blog
Viewing all articles
Browse latest Browse all 42

New e-book: Globally-Distributed Applications with Microsoft Azure

$
0
0

Microsoft Azure provides a huge amount of cloud services and is probably the best option for building applications in the cloud. While Microsoft provides documentation for its services, many times it isn’t clear how those services can fit together in a single application. I decided to write the Globally-Distributed Applications with Microsoft Azure book because I believed it will help developers and architects to understand not only how to use Azure Services but also how to combine them to solve complex problems while optimizing performance in a globally-distributed cloud solution.

The book is backed by an open-source .NET Core – Angular project that makes use of the following Azure Services:


About the book

The first 4 parts describe the features for each Azure Service used and their role in the design of the Online.Store application. It provides step by step instructions to configure Online.Store application settings and secret keys so that you can deploy it all over the globe. The final chapter explains the PowerShell scripts that you can use to automate processes in a globally distributed application (resource provisioning, releases or rolling back updates)

Continuous Integration & Delivery

Business continuity in geographically distributed systems with SQL Active Geo-Replication is a tough task to accomplish. The last part of the book covers all the DevOps processes needed to automate releases in globally-distributed applications. Learn how to structure and design resource groups, how to effortless provision their resources and release or rolling back new versions of your software, without affecting the end user experience.

Who should read this book

This book is both for developers and architects.

Developers will profit by learning to code against Azure Services. For every Azure Service
introduced such as Redis Cache or Service Bus, the source code contains a relevant library project with generic repositories.

public interface IRedisCacheRepository
{
   Task SetStringAsync(string key, string value);
   Task SetStringAsync(string key, string value, int expirationMinutes);
   Task SetItemAsync(string key, object item);
   Task SetItemAsync(string key, object item, int expirationMinutes);
   Task<T> GetItemAsync<T>(string key);
   Task RemoveAsync(string key);
}
public interface IDocumentDBRepository
{
   Task<T> GetItemAsync<T>(string id) where T : class;
   Task<T> GetItemAsync<T>(string id, string partitionKey) where T : class;
   Task<Document> GetDocumentAsync(string id, string partitionKey);
   Task<IEnumerable<T>> GetItemsAsync<T>() where T : class;
   Task<IEnumerable<T>> GetItemsAsync<T>(Expression<Func<T, bool>> predicate) where T : class;
   // Code omitted
}

Architects will find this book extremely useful as well. They will learn how to properly design
and group Azure resources in order to ease and automate release processes while keeping business
continuity. There are lots of PowerShell scripts written for DevOps automation and most of them
can easily change and meet your application requirements.

$serviceBusNameSpace 
    = "$PrimaryName-$ResourceGroupLocation-$serviceBusPrefix";
$serviceBusExists = Test-AzureName -ServiceBusNamespace $serviceBusNameSpace
# Check if the namespace already exists or needs to be created
if ($serviceBusExists)
{
    # Report what was found
    Get-AzureRMServiceBusNamespace -ResourceGroup $resourceGroupName `
                                    -NamespaceName $serviceBusNameSpace
}
else
{
    New-AzureRmServiceBusNamespace -ResourceGroup $resourceGroupName `
     -NamespaceName $serviceBusNameSpace -Location $ResourceGroupLocation

    $namespace = Get-AzureRMServiceBusNamespace `
                        -ResourceGroup $resourceGroupName `
                        -NamespaceName $serviceBusNameSpace
}

The book is available on Leanpub here. Anyone who buys the book gets any new releases instantly for free. To follow along with the examples you will need an Azure Free Account.

In case you find my blog’s content interesting, register your email to receive notifications of new posts and follow chsakell’s Blog on its Facebook or Twitter accounts.

Facebook Twitter
.NET Web Application Development by Chris S.
facebook twitter-small
twitter-small

Viewing all articles
Browse latest Browse all 42

Trending Articles