Microservices Architecture Assignment: Application Of MSA On Netflix
This proposal prepared within this microservices architecture assignment should be approximately 1500 words (+/- 10%) excluding cover page, references and appendix. This proposal must be typed and clearly set out (presented professionally). You need to pay special attention to principles and key concepts of Microservices Architecture (MSA), service design and DevOps. The purpose of this assessment is to give you an opportunity to contextualise and convey to learning facilitator relevant knowledge based on “real-world” application. Particularly, the aim of this assessment is to enhance your employability skills through providing hands-on education and opportunities to practice real life experience. As a result, this assessment item is developed not only to evaluate your understanding of MSA application, but also to assist you practicing and improving your research skills.
MSA have been getting more and more popular over the last year, and several organisations are migrating monolithic applications to MSA. A MSA consists of a collection of small, autonomous services that each service is a separate codebase, which can be managed by a small development team. A team can update an existing service without rebuilding and redeploying the entire application. Services are responsible for persisting their own data or external state. This differs from the traditional model, where a separate data layer handles data persistence.
More recently, with the development of cloud computing, new ways of software development have evolved with MSA recognised as a cloud-native software development approach. As a professional, your role will require that you understand the principles of software development, especially in the field of cloud-based platforms, which are rapidly becoming the preferred hosting solution for many organisations. Having a working understanding of these concepts will enable you to fulfil many roles and functions, and be informed as to what factors influence decision making when software development architecture has been selected. Whilst you may not be a developer, it will enable you to have meaningful conversations about the principles of MSA and why certain decisions may be made in a certain way. This will support you to manage the bridge between IT and the business.
You are expected to address the following steps to fulfil this assessment task:
1. From the list below, select an organisation that you are familiar with and / or have enough data and information. Here are list of organisations using microservices:
o Comcast Cable
o Sound Cloud
2. Discuss how MSA has transformed or revolutionised the operations of the organisation. Identify and analyse at least three business or organisational reasons for justifying your discussion.
3. Develop a business proposal to introduce the selected organisation, justify why you choose it and why microroservices is the best architecture in the selected organisation.
Herein microservices architecture assignment, a vivid discussion on Microservices Architecture (MSA) will be conducted and how it has changed the business scenario for organisations like Netflix. MSA is the organisational and architectural approach to develop software that is composed of small independent components for communication of the well-specified APIs(Ghofrani & Lübke, 2018). The essence of MSA lies in effective application, enabling innovation, and continuously updating the features and characteristicsof the time-to-market elements. This business proposal will show how MSA has enabled Netflix to command the market and deliver an effective service in the targeted market segment.
The proposal will run a comprehensive discussion on MSA outlining its advantages and disadvantages in the business scenario. It will come up with the different benefits of MSA to address complex business needs in dynamic business conditions. Lastly, the proposal will highlight the ethical and moral aspects of MSA to uphold the security and privacy issues as the business undergoes a transition to a new domain. The goal of the business proposal is to show how MSA serves as an integral component of the functioning of OTT giants like Netflix and is the best architecture in contemporary times.
Concept of MSA in the business scenario
In the current scenario, Netflix is the leading OTT platform across the world operating in more than 200 countries with subscribers over 170 million(BBC News, 2020). The subscribers opt for Netflix as the platform facilitates 165 million hours of streaming that has been possible due to the high scalability and availability of the video streaming quality. Netflix chose Amazon Web Services (AWS) cloud to migrate its infrastructure from monolithic to microservices architecture (MSA). Itenabled to run each application as an independent component through lightweight APIs delivering a better streaming quality. As they are run independently, the services are updated, scaled, and deployed to meet the specified demand of the individual applications(Li, et al., 2020). So MSA is a better version than the monolithic architecture wherein the individual specification was not plausible rather the entire architecture needs to be revamped. Thus MSA saves time, money, effort, and is capable to deliver a better output to heighten the streaming satisfaction of the Netflix subscribers.
Figure 1: Monolithic architecture vs. MSA
Source: (Li, et al., 2020)
Advantages of MSA –
• MSA can be positioned autonomously to facilitate continuous improvement and quick updates of the application.
• Specified MSA can be allotted to definite development groups to focus exclusively on a particular service without disturbing other components(Xu, Nikouei, Chen, Blasch, & Aved, 2019).
• MSA facilitates effective scalability as the demand for Netflix services increase to make it quicker at a cost-efficient manner.
• It is possible to repair a specified MSA if damaged.So that there is a negligible chance that the entire Netflix app would crash as the other functions run as per expectations.
• MSA possesses smaller codebases which are easier to maintain and organise enabling proper functioning of the entire Netflix app(Waseem, Liang, & Shahin, 2020).
• It is characterised by less dependency and is easier to test for developing and organic applications that can be easily upgraded in the future.
Disadvantages of MSA –
• The communication process among the different services is quite complicated as the growing numbers of applications raise security issues(Kazanavi ius & Mažeika, 2019).
• Debugging is an imminent risk in Netflix comprising of multiple microservices as each set has its logs and tracing it to the origin becomes difficult.
• Integration testing is difficult as the system analysts in Netflix cannot test the entire system making it a time-consuming process owing to its complex distribution process.
• As each microservice in Netflix can be upgraded to the latest facility, there seems to be a disturbance if the latest API cannot collaborate with other backward components.
• The developer ought to solve the MSA issues such as load balancing and network latency(De Lauretis, 2019).
Benefits of MSA to diverse stakeholders
Netflix is a major MSA benefactor to experience scalability and workload partitioning. It expedited the Netflix engineers to change the requisite services leading to faster deployments and track the service performances to isolate the issues from other services(Xu, Nikouei, Chen, Blasch, & Aved, 2019). Thus Netflix owing to its migration from the monolithic architecture to MSA has been able to benefit its stakeholders in the following ways–
The client can experience the high-quality streaming quality of the Netflix app across various platforms like desktops, laptops, smartphones, and smart TVs(Waseem, Liang, & Shahin, 2020). The OTT service provider has developed Android and iOS apps to deliver an excellent viewing experience irrespective of the device. MSA assists in delivering a high-quality streaming service under different conditions despite hazards like overloaded servers and slow networks.
Figure 2: Playback architecture for Netflix
Source: (Waseem, Liang, & Shahin, 2020)
The above diagram shows that whenever the subscriber clicks the play button, the instruction is transmitted to the backend on AWS on the Netflix CDN for streaming facilities. The Open Connect Appliances (OCAs) monitors the functioning of the system by auditing its workload status and availability of videos owing to cache control to deliver better service to the customers. Thus a satisfied pool of clients indicates better revenue prospect for Netflix and its leading presence in the prevailing market(Li, et al., 2020).
Backend support –
It comprises databases, services, and storage facilities running totally on the AWS cloud. It handles everything to provide a better streaming service through its back-end functioning like scalable storage (AWS S3), scalable computing instances (AWS EC2), and business logic microservices. The latter is especially built to serve the purpose of Netflix. The backend support provides a conducive platform to the client appsenabling them to have a greater viewing experience.
MSA provides a high-quality viewing experience to the targeted market segment earning scores of viewership in each quarter enabling the investors to get a handsome return.
The employees are motivated to continue the services relentlesslyas MSA not only enhances the viewing experience but their prospect in the company in the upcoming future.
The community is benefitted owing to MSA as Netflix provides wholesome entertainment for each kind of viewer, especially during the lockdown when there was ample idle time (BBC News, 2020). Simultaneously, the complexity of microservices alongside the demand for continuous streaming services require huge consumption of energy affecting the sustainability proposition.
Moral and ethical considerations to uphold security and privacy issues
MSA has brought in a revolution to change the outlook of entertainment streaming facilities owing to faster application and playing the chords at the click of a second. Accordingly, the digital industry has leaped from the monolithic architecture to MSA facilities and Netflix has followed suit.Though it has been a digital feat, there are trending issues of privacy and security issues like compromising the credit card information of a client incurring severe financial loss(Pearson, 2017). Thus Netflix ought to follow the following aspects to uphold the ethical stance –
• A higher level of cohesion and a lower level of coupling will help in better functioning and testing the components effectively.
• The MSA should be limited in its application as a single microservice neednot shoulder multiple responsibilities(Woo, 2017).
• There will be a fault-tolerant and resilient software mechanism to identify the plausible memory leak, issues in data connectivity, and other MSA-relatedservices that can bring down the entire system.
• It will be effective to run strict monitoring continuously to do away with errors and implement an automated monitoring system to identify plausible debugging upholding the client’s credential.
It is concluded that MSA is the need of the hour to provide better service quality in the competitive market scenario. Companies like Netflix have taken the right stride from the transition of the monolithic architecture to MSA to be relevant with the time and market. The transition facilitated Netflix to deliver a better service and timely updating as per the requirement. So the phenomenon generates a pool of satisfied customers which leads to the popularity and scores of subscription and revenue for Netflix benefitting each sort of stakeholder.
The backend support of Netflix plays a crucial role in proper functioning and outlining the benefits of MSA as per the customised demand of the customers. The success of MSA also strives for its moral and ethical responsibilities to ensure that the transition from a monolithic architecture to MSA does not create space for any sorts of loopholes in the process. This is to ensure that the customers can enjoy relentless streaming facilitieswithout fearing their cyber security and privacy issues. Certain issues may endanger customer security but the teams are working hard to resolve these matters effectively.
BBC News. (2020). Netflix gets 16 million new sign-ups thanks to lockdown. Retrieved October 20, 2020, from https://www.bbc.com/news/business-52376022
De Lauretis, L. (2019). From monolithic architecture to microservices architecture. 2019 IEEE International Symposium on Software Reliability Engineering Workshops (ISSREW) (pp. 93-96). New York: IEEE.
Ghofrani, J., & Lübke, D. (2018). Challenges of Microservices Architecture: A Survey on the State of the Practice. ZEUS 2018, 1-8. Kazanavi ius, J., & Mažeika, D. (2019). Migrating legacy software to microservices architecture. 2019 Open Conference of Electrical, Electronic and Information Sciences (eStream) (pp. 1-5). New York City: IEEE.
Li, S., Zhang, H., Jia, Z., Zhong, C., Zhang, C., Shan, Z., . . . Babar, M. (2020). Understanding and addressing quality attributes of microservices architecture: a systematic literature review. Information and Software Technology, 106449. Pearson, R. (2017). Business ethics as communication ethics: Public relations practice and the idea of dialogue.Microservices architecture assignment In Public relations theory (pp. 111-131). Perth: Routledge.
Waseem, M., Liang, P., & Shahin, M. (2020). A systematic mapping study on microservices architecture in DevOps. Journal of Systems and Software, 170, 110798.
Woo, M. (2017, March 27). Ethics and the IT Professional. Retrieved from EDUCAUSE: https://er.educause.edu/articles/2017/3/ethics-and-the-it-professional
Xu, R., Nikouei, S., Chen, Y., Blasch, E., & Aved, A. (2019). Blendmas: A blockchain-enabled decentralized microservices architecture for smart public safety. 2019 IEEE International Conference on Blockchain (Blockchain) (pp. 564-571). New York City: IEEE.