Disclaimer: This is an example of a student written essay.
Click here for sample essays written by our professional writers.

Any opinions, findings, conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of UKEssays.com.

Microservices over cloud: A Comparative Model

Paper Type: Free Essay Subject: Information Technology
Wordcount: 2715 words Published: 23rd Sep 2019

Reference this

         Microservices over cloud: A Comparative Model

IST MS Capstone Project Proposal

Abstract

   There is a growing need for small-mid size organizations to understand the benefits of adapting to Microservices model with Cloud integration as compared to the monolithic architecture. Getting to realize the importance of Dev-ops in recent times is another aspect. A model to measure Manageability, Reliability, Scalability of E-commerce Web App containing micro- services built in .Net STACK integrated to Microsoft Azure Cloud over Monolithic architecture is showed along with Continuous Integration/Continuous deployment benefits.

1      Introduction and Background Information

Microservices architecture has been in news in the recent years. We can define microservice to be a small application that can be deployed independently, scaled independently, and tested independently and that has a single responsibility (Thoenes, 2015, p.116).

With the rapidly changing technologies in the industry, there has been a requirement wherein

organizations are looking for systems which go well on the measures of: Manageability, Reliability, Scalability. When the application is developed using a Microservice architecture in mind compared to architecture like Monolithic, there are many advantages.

Melvin Conway in the 60’s discovered that a software system whose structure matches its organization’s communication structure works better compared to a system whose structure differs from its organizations communication structure. Conway’s law looks to be more relevant in this present World. “Conways Law is an important principle: As you plan to decouple your application into smaller, independent services, expect to split your existing teams into smaller, independent units “(Bucchiarone et al., 2018, p.50-55).  Jeff Bezos, CEO of Amazon.com, coined the idea of a two-pizza team – which says, teams should not be larger than what two pizzas can feed (Bucchiarone et al., 2018, p.50-55). Organizations can benefit from moving to Microservices utilizing the power of cloud computing, hosting their services in clouds such as Microsoft Azure.

2 Motivations and Goals

2.1 Problem/Purpose and Significance

  • There is a need for a model which demonstrates the Benefits of moving to Microservices running in a cloud such as Microsoft Azure over traditional architectures like monolithic based on metrics like scalability, manageability & reliability.

2.2 Project Goals

         Design and development of a Web Application with Microservices/Monolithic architecture styles. Deployment of the Web Application to Microsoft Azure showcasing modules of deployment illustrating continuous integration/continuous deployment.

2.3 Project Objectives

  • Developing E-commerce Web Application with layers of Microservices in .NET
  • Within the application, Modules of micro services implemented in various technologies such as: .NET, JAVA, PHP, MySQL.
  • Integration & Deployment of the application to Microsoft Azure cloud.
  • Bringing up a model taking various measures: Reliability, Manageability, scalability over Azure versus local servers.
  • Comparisons of ways a Web application is authenticated in Azure: OAuth2.0, Web Tokens.

2.4 Potential Contributions and Benefits

  • The model would help organizations as a reference to understand what the advantages and disadvantages are of moving to Microservices with integration to cloud.

3 Prior Work

“The International Data Corporation has forecasted by 2021, 80 percent of application development on cloud platforms will be using microservices. Companies such as Amazon, LinkedIn, Netflix, SoundCloud, The Guardian, Uber, and Verizon are quickly adopting microservice-based approaches” (Larrucea et al., 2018, p.96-100). There is going to be a huge increase in the demand of microservices in the near future. Legacy applications are modernized using Microservices. Through refactoring monolithic applications can be split into microservices. This results in the incremental modernization of legacy software and is better compared to redeveloping the entire software in microservices.  Microservices is significantly different from SOA. SOA can be thought of has loosely coupled modules linked together. Emphasis was more towards service orchestration rather than on service development and deployment (Bucchiarone et al., 2018, p.50-55).

For example, let us think about a day to day life instance. We all in the comfort of our homes, use electricity to charge phones, watch television, using laptops. We drink water, use it for laundry. But have we ever thought about how we are getting electricity, water? We just use the electric switch to turn on the electricity. Switch is like interface which gives access to the implementation of electricity, water into our homes. Electricity generator may be thousands of miles away, but we are utilizing the various services already present through interfaces. This is SOA.

Get Help With Your Essay

If you need assistance with writing your essay, our professional essay writing service is here to help!

Essay Writing Service

Software vendor companies such as IBM, Microsoft have been using microservices and DevOps practices for quite a time. Content provider companies are not far behind, companies like Netflix, BBC have been able to quickly adapt and are using them. Google Trends reveal that both DevOps and microservices are growing concepts, with an equal rate of growth after 2014(Balalaie et al., 2016, p.42-52). It is not that we cannot apply DevOps practices to Monolithic architecture. Dev-Ops can also be applied to monolithic software systems, but it is just that microservices enable effective implementation of DevOps by promoting the importance of small teams. We need to consider the effectiveness part in order to truly understand the importance.

Sharing of service could eliminate redundant work. We see different teams maintain different bunch of monolithic applications, there involves a lot of duplication of each other’s effort, with microservices we can implement the applications from existing services which have been already built and deployed by others. Some may say this to be reuse of code, but it is not – a live service is included as part of the application and its functionality is being tapped via API (Knorr, 2014).

Three of the most important benefits of microservices are faster delivery, scalability, and greater autonomy. Deploying the Application containing Microservices in a cloud computing platform like Microsoft Azure could prove beneficial to organization. “Microsoft Azure is a cloud service created by Microsoft for building, testing, deploying, and managing applications and services through a global network of Microsoft-managed data centers” (Wikipedia).

Find Out How UKEssays.com Can Help You!

Our academic experts are ready and waiting to assist with any writing project you may have. From simple essay plans, through to full dissertations, you can guarantee we have a service perfectly matched to your needs.

View our services

RightScale found Azure grew overall from 20 to 34 percent, while Amazon Web Services stayed flat at 57 percent. Google had a growth from 10 to 15 percent to maintain third position. Within enterprises, Azure increased adoption significantly: from 26 percent to 43 percent (Mateo, 2017). This really shows Azure is picking up in various enterprises pretty fast. It is also important to understand how the present technology market shows future for Azure. Organizations have been depending upon various Microsoft products for effective running of their enterprises over the years. Microsoft came up with the Azure Devops platform, featuring a set of cloud-hosted services including CI/CD, and testing. Azure Devops replaces Visual Studio Team Services, the cloud-based companion to company’s Team Foundation Server (TFS) application life cycle management platform. Users of VSTS will be moved into Azure DevOps projects, still receiving end-to-end traceability & integration (Krill, 2018).

Azure supports Dev-ops effectively. Microsoft has supported Jenkins on Azure in past, mainly by contributing to the broad array of Jenkins plug-ins. This team-up provides Jenkins with a lot of support, but also benefits Microsoft—not only by having a prestigious project associated with its cloud. It sends yet another signal that Azure is an environment for non-Microsoft and open source technologies to flourish—in this case, Linux, Java, Jenkins itself (Basso, 2016).

 

4 Methodology

4.1 Plan of Work

Initially, will start with the requirement gathering. The goal is to develop E-commerce Web application in .NET stack which will internally consists of various microservices for performing functionalities like: Ordering, Shipment, Records. Each of these microservices will be implemented in different technologies. For instance, Ordering microservice may be in C#, Shipment in Java, Records maintenance in MySQL database. Followed by integration of all these microservices under a Web application roof in the Microsoft framework.

Deployment/Containerization of the microservices developed into Microsoft Azure. Demonstrating the effectiveness of DevOps practice works effectively with Microservices. Authentication of the Web application in Azure using Azure Active Directory (AAD).

Once the above is implemented, testing the manageability, reliability, scalability of the Web app deployed with Microservices architecture in Azure over other traditional deployments. Comparative model report creation based upon the above findings dwelling into the effectiveness of Microservices.

4.2 Challenges or Barrier

  • Increased effort for operations, deployment and monitoring.
  • Integration of microservices implemented in various technologies.
  • Increased configuration management.

4.3 Deliverables

  • Design and development of an E-commerce Web Application in Microsoft Visual Studio.
  • Implementing different functionalities of the application: ordering, shipment, records as units of microservices. Containerization of the units in Azure.
  • Deployment of the Web application to Microsoft Azure with Continuous integration/continuous deployment.
  • Authentication, Azure Active Directory configuration of the Web App.
  • Testing the model with respect to a local server like: Serenity server of our IST Department, AWS over Azure.
  • Manageability, Reliability, Scalability measure report of Web App deployment with Microservices architecture in Azure over other traditional deployments.
  • Demonstration of CI/CD benefits to an organization.

4.4 Technologies

  • Programming Languages: C#, Java, PHP (For Microservices implementation)
  • Environment: Microsoft .NET
  • Cloud service: Microsoft Azure
  • Database: MySQL
  • DevOps: Visual Studio Team Services (VSTS)

5 Timeline for Proposed Work

Requirement Analysis: Two week (Jan 14th – Jan 28th)

System Design: One week (Jan 28th – Feb 4th)

Development, Integration & Testing: Two months (Feb 4th – April 1st)

Comparative Model Report: One week (April 1st – April 8th)

Final Report: One week (April 8th – April 15th)

6 References

 

Cite This Work

To export a reference to this article please select a referencing stye below:

Reference Copied to Clipboard.
Reference Copied to Clipboard.
Reference Copied to Clipboard.
Reference Copied to Clipboard.
Reference Copied to Clipboard.
Reference Copied to Clipboard.
Reference Copied to Clipboard.

Related Services

View all

DMCA / Removal Request

If you are the original writer of this essay and no longer wish to have your work published on UKEssays.com then please: