Migrating to a Distributed Microservices Solution on Azure Service Fabric | Exam AZ-300 Solution

Migrating to a Distributed Microservices Solution on Azure Service Fabric

Question

You develop an entertainment application where users can buy and trade virtual real estate. The application must scale to support thousands of users.

The current architecture includes five Azure virtual machines (VM) that connect to an Azure SQL Database for account information and Azure Table Storage for backend services. A user interacts with these components in the cloud at any given time.

-> Routing Service "" Routes a request to the appropriate service and must not persist data across sessions.

-> Account Service "" Stores and manages all account information and authentication and requires data to persist across sessions

-> User Service "" Stores and manages all user information and requires data to persist across sessions.

-> Housing Network Service "" Stores and manages the current real-estate economy and requires data to persist across sessions.

-> Trade Service "" Stores and manages virtual trade between accounts and requires data to persist across sessions.

Due to volatile user traffic, a microservices solution is selected for scale agility.

You need to migrate to a distributed microservices solution on Azure Service Fabric.

Solution: Create a Service Fabric Cluster with a stateful Reliable Service for Routing Service. Deploy a Guest Executable to Service Fabric for each component.

Does the solution meet the goal?

Answers

Explanations

Click on the arrows to vote for the correct answer

A. B.

B

The proposed solution does not fully meet the requirements for the microservices solution for the entertainment application.

The solution proposes creating a Service Fabric Cluster and deploying a Guest Executable for each component of the application. However, this approach does not fully address the requirements of the application.

The Routing Service is proposed to be implemented as a stateful Reliable Service, which is a good choice because it allows the service to maintain state across multiple sessions. However, the proposed solution does not address the persistence requirements of the Account Service, User Service, Housing Network Service, and Trade Service, which all require data to persist across sessions.

To address these requirements, each of these services should be implemented as a stateful service using Service Fabric's Reliable Stateful Services. This will allow each service to maintain its state across multiple sessions, ensuring that data is persisted and available even if a service instance fails.

In addition, Service Fabric provides a built-in stateful Reliable Collections feature that can be used to store data that needs to be shared across multiple instances of a service. This can be used to implement shared data storage for services like the Account Service, User Service, Housing Network Service, and Trade Service.

Therefore, a better solution would be to create a Service Fabric Cluster with stateful Reliable Services for each component of the application, including the Routing Service, Account Service, User Service, Housing Network Service, and Trade Service. Each service should be designed to maintain its state across multiple sessions and use Reliable Collections for shared data storage.

In summary, the proposed solution does not fully meet the requirements for the microservices solution for the entertainment application, as it does not address the persistence requirements of all services. A better solution would be to implement each service as a stateful Reliable Service with Reliable Collections for shared data storage.