Introducing Microsoft Orleans: Implementing Cloud-Native Services with a Virtual Actor Framework
- Length: 205 pages
- Edition: 1
- Language: English
- Publisher: Apress
- Publication Date: 2022-06-23
- ISBN-10: 148428013X
- ISBN-13: 9781484280133
- Sales Rank: #0 (See Top 100 Books)
Welcome to Orleans, a virtual actor framework from Microsoft that allows a single developer to create immensely scalable, available applications while maintaining a high throughput. This guide is designed to give you a foundational understanding of Orleans, an overview of its implementations, and plenty of hands-on coding experience. Side-by-side monolithic and microservice patterns alongside Orleans’ framework features are also discussed, to help readers without an actor model background understand how they can enhance applications.
Author Nelson’s approach is to introduce patterns as needed for business requirements, including monolithic microservices and to convert monolithic to microservices, in order to keep a microservice from growing into a monolithic application. Orleans is a good choice for either of these scenarios as the next step to build your backend services and reduce unnecessary orchestration, overhead, and tooling.
The Orleans framework was designed to handle tedious overhead, allowing the developer to focus on the solution. You will learn how Orleans can support billions of virtually parallel transactions while sustaining low latency and high availability. In addition, you will glimpse under the hood at Orleans to discover its useful attributes. All key learning points include hands-on coding examples to reinforce understanding.
This book goes beyond what Orleans is to explain where it fits within the realm of development. You will gain an in-depth understanding to build a foundation for future growth.
What You Will Learn
- Understand how Orleans can benefit your monolithic and/or microservice applications
- Gain a brief overview of actor models and how they relate to Orleans
- Observe the design patterns and how Orleans can simplify or reduce tooling requirements
- Know the pros and cons of microservices and Orleans to determine the best course of action based on the needs of an application
- Discover Orleans’ design patterns and practices, including life cycle, messaging guarantees, cluster management, streams, load balancing, and more
- Build your first Orleans’ application; build base knowledge of application structure, unit testing, dashboard, scheduled events
Who This Book Is For
This book is for developers. A basic understanding of .NET development and an understanding of service concepts is helpful. Readers will need a connection to download Nuget packages and a code editor (Community Edition Visual Studio or VS Code).
Table of Contents About the Author About the Technical Reviewer Acknowledgments Introduction Chapter 1: A Primer on Microsoft Orleans and the Actor Model Origins of Orleans Origins and Use Cases of Orleans Actor Model Explained Actor Model Infused with Orleans Grain Lifecycle Single Developer Production Uses and History Summary Chapter 2: Introducing Microsoft Orleans What Can Orleans Do for Us? Cloud-Native, Elastic, Highly Available Common Use Cases for Actor Model Frameworks Microsoft Orleans Base Libraries, Community, and Included Technologies Create and Maintain an Orleans Application as a Single Developer Community and Constant Advancements Multiple Hosting Solutions Are Supported Resource Management and Expansion Failure Handling Streaming Persistence Summary Chapter 3: Lifecycles Grain Lifecycle Grain Reentrancy External Tasks and Grains Grain Services Stateless Worker Grains Grain Call Filters Silos Grain Directory Message Path Development Setup Typical Configuration Silo Configuration Cluster Silo Membership Multi-clusters Gossip Protocol Journaled Grains Eventual Consistency Heterogeneous Silos Summary Chapter 4: Enhancing Current Designs Overview General Comparison Elasticity and Availability Comparisons Business Logic Complexity Deployment Summary Chapter 5: Starting Development Overview Composition Building Our First Application Grain Interface Grain Silo Client Grain Communication Summary Chapter 6: Timers and Reminders Overview Creating a Timer Running the Timer Creating a Reminder Setting Up an Azure Table Running the Reminder Summary Chapter 7: Unit Tests Unit Test Summary Orleans Unit Testing Overview Creating Our Unit Test Grain Setting Up Our Test Cluster Running the Test(s) Adding the CallingGrain Test Run the Unit Tests Additional Testing Summary Chapter 8: The Orleans Dashboard Overview Adding the Orlean Dashboard to Our Solution Running the Dashboard Additional Options Expanding the Dashboard Summary Chapter 9: Deployment Compatible Grains Database Handling (Deployment) Cluster Management CI/CD Overview Common Deployment Scenarios Setting Up the Azure Environment Walk-Through to Create a CI/CD Pipeline Initial Setup Creating Resources with Azure CLI Provisioning Scripts Pwsh_resource_provision.ps1 Code (PowerShell) Bash_resource_provision.sh Code (Command Line) Provision Script Summary Deployment Files Dockerfile Dockerfile Code Dockerfile Summary Deployment.yaml Deployment.yaml Code Deployment.yaml File Summary Continuous Integration and Continuous Delivery Pipeline Creation Continuous-Integration.yaml Continuous-Integration.yaml Code Continuous-Integration.yaml Summary Continuous-delivery.yaml Continuous-delivery.yaml Code Continuous-delivery.yaml Summary File Structure Validation Folders and Files Added Secrets for Deployment Service Principle Name (SPN) Subscription ID Tenant ID Adding Secrets to GitHub Automated Deployment Trigger the Process View AKS Status on Azure Portal AKS Load Balancer Dashboard Deploy Additional Orleans Troubleshooting Information Summary Chapter 10: Conclusion Origins Introduction of Microsoft Orleans Lifecycles Comparisons Project Structure Timers and Reminders Unit Tests Orleans Dashboard Deployment Future Aspects References Index
Donate to keep this site alive
How to download source code?
1. Go to: https://github.com/Apress
2. In the Find a repository… box, search the book title: Introducing Microsoft Orleans: Implementing Cloud-Native Services with a Virtual Actor Framework
, sometime you may not get the results, please search the main title.
3. Click the book title in the search results.
3. Click Code to download.
1. Disable the AdBlock plugin. Otherwise, you may not get any links.
2. Solve the CAPTCHA.
3. Click download link.
4. Lead to download server to download.