Join Chander Dhall for an in-depth discussion in this video Azure Service Fabric: Key scenarios, part of Microservices and Azure Service Fabric Basics for Developers.
- [Instructor] Where to use Azure Service Fabric. Highly available applications. Due to any number of reasons like hardware of software failure, we must architect distributed systems while keeping in mind that failure is part of the game. It's a good practice to have replicas of the same service. We want our entire system to be highly available and with no downtime. Service Fabric allows the creation of secondary replicas that are automatically promoted to a primary replica in case of a failure.
This is accomplished with minimum loss, a factual service to the customer, and makes our system highly available. Scalable applications. The best use of Azure Service Fabric is to create services that need to be scaled. Imagine writing code for services and not having to worry about scaling them with traffic. It makes perfect sense when you have a business that needs to be scaled up and down at certain times of the year.
For example, you may have an online business that needs services to scale up from a few nodes to thousands of instances during the holiday season, and then needs to scale back down. With Azure Service Fabric, all you need to do is create your services and the rest is handled by the framework. Individual services can be partitioned. The fabric scales out the state across the cluster.
Service Fabric can be used to build these services and manage their complete life cycles. Data analytics. There are times when we have applications that must reliably process events or streams of data. That requires fast reads and writes, as well as reliable processing. These applications may also require processing pipelines. By processing pipelines, I mean results from every stage of the pipeline must be passed on to the next stage without incurring any loss.
A good example is the financial industry, where transactions are important. And data consistency and computation must be guaranteed. Distributed applications. When it comes to social networks that require analyzing large scale graphs in parallel. With Azure Service Fabric, you can scale extremely fast and process the load in a parallel fashion. This makes it a natural choice for billing services that require high scale, as in social networking, business intelligence, and scientific research, and any other application requiring big data.
Computation-intensive applications. In applications that require intensive computation, it makes a lot of sense to colocate the data, and then process it. If we were to do this on our own, we might involve an external data cache or storage tier. When we create stateful services with Azure Service Fabric, the need for that tier is completely eliminated, and that's why we have lower latency reads and writes.
This is very critical in real-time communication, where the round trip time needs to be less than 100 milliseconds. And Azure Service Fabric does a great job in helping us create applications that are highly responsive. Interactive stateful applications. Interactive applications, be it online gaming, or instant messaging, it requires low latency reads and writes. These applications definitely require session state, and every subsequent interaction with the server is state based.
They require low latency. For example, in an online game, low latency is critical for speed. This would mean clearing a separate store or cache to capture state. However, with Service Fabric, this is seamless and provided by default in stateful services.
- Reviewing microservices vs. monolithic architecture
- Reviewing microservices and Azure Service Fabric basics
- Programming model architecture
- Creating a stateless service and a stateful service
- Creating a cluster in Azure
- Adding security to a cluster
- Finalizing cluster creation
- Deploying to an Azure cluster
- Debugging an application remotely