Your contribution can guide someoneās learning journey. Share your
documents today.
Running head: MICROSERVICES ARCHITECTURE MIS603 MICROSERVICE ARCHITECTURE Assessment 2 06/04/2020 2500 words Name of the Student Student ID Torrens email address Name of campus learning facilitator Name of Subject coordinator
Secure Best Marks with AI Grader
Need help grading? Try our AI Grader for instant feedback on your assignments.
1MICROSERVICES ARCHITECTURE Executive Summary Whiteboard Company wants to implement the strategy of Microservices architecture for their learning system for ensuring the reliable services to their potential students. With the help of ālittle and move approachā, they can move to their Microservices architecture from their monolithic based systems. It provides agile development of the software. Microservices adopts some concepts regarding the service oriented architecture. It gives lots of benefit to the Whiteboard Company compared to their monolithic system. It helps the IT team of the company to develop the software at a faster rate. It helps to provide scalable software solutions to the company. This report gives a clear overview regarding the transition of the Microservices architecture of Whiteboard Company.
2MICROSERVICES ARCHITECTURE Table of Contents Introduction................................................................................................................................3 Three Successful implementation of Microservices architecture..............................................3 Service modelling principles......................................................................................................8 Limitations of monolithic architecture.....................................................................................15 Issues of Microservices architecture........................................................................................16 Conclusion................................................................................................................................17 Recommendation......................................................................................................................17 References................................................................................................................................19
3MICROSERVICES ARCHITECTURE Introduction Microservices architecture is a procedure of designing software for deploying services in independent manner (Pahl, Jamshidi and Zimmermann, 2020). It is totally based on the single function module. It has some outstanding interfaces and some excellent operations. It is a very popular technology among various companies because they want to implement agility in the software. It is also very helpful for DevOps teams. In this report, at first, successful implementation of Microservices architecture is discussed elaborately (Perkusich et al., 2020). After that, it will discuss some service modelling principles such as REST, SOAP, XML-RPC are discussed. After that, it will discuss regarding the challenges of the monolithic system. At the end, it will discuss regarding the issues related to the Microservices architecture. This report will discuss regarding some recommendations of the Microservices architecture. Three Successful implementation of Microservices architecture There are lots of companies who are using Microservices for implementing the software. Among three most successful companies are: ļ¼UBER Like any other companies, initially UBER developed their cab booking system by using the monolithic architecture. It was developed for the single offerings inside a single city. They had one code base (Putra et al., 2020). It was quite enough to resolve their businessrelated issues. After that, their business had stated increasing. At that, they felt thatmonolithic architecture was not at all sufficient for running their business.
Paraphrase This Document
Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
4MICROSERVICES ARCHITECTURE Figure 1: Monolithic architecture of UBER Source:https://medium.com/edureka/microservice- architecture-5e7f056b90f1 Inthisarchitecture,RESTAPIisusedforestablishingefficient communication among their cab drivers as well as passengers. In this case, three adapters are used with the REST API (Qiu et al., 2020). It gives lots of facilities to the passengers such as billing, payments, email forwarding and many others. These
5MICROSERVICES ARCHITECTURE activities can be performed when a passenger is willing to book a cab for him or her. They use MySQL as a database to preserve all the records. But, these features of their cab booking system were found inside a single framework (Ranjan & Sahoo, 2020). But, when they increased their businessin the entire world, then they faced lots of difficulties because they used monolithic architecture while developing the cab booking system. Some difficulties are as follows: ļ·All features of system required to be developed again ļ·Resolving of the bugs became very difficult while using the monolithic architecture. ļ·Faced difficulty to enhance the scalability inside the cab booking system of UBER. For resolving these problems, they decided to migrate from monolithic architecture to Microservices architecture (RumiÅski & Walczak, 2020). For example, if a passenger wants to change his or her billing services, then he or she need to deploy only that service. Heor she does not require deploying other services of those services. All the features ofthat software are scaleable.
6MICROSERVICES ARCHITECTURE Figure 2: UBER Microservices architecture Source:https://medium.com/edureka/microservice- architecture-5e7f056b90f1 UBER Company mainly modifies their API gateway. With the help of this gateway drivers and passengers are able to perform effective communication among them while booking a cab (Siavashi, 2020). In their new system, an individual module performs individual services.
Secure Best Marks with AI Grader
Need help grading? Try our AI Grader for instant feedback on your assignments.
7MICROSERVICES ARCHITECTURE ļ¼Zalando Zalando applies their Microservices architecture with the help of Amazon WebServicesforthepurposeofprovisioning(Sorgallaetal.,2020). Unfortunately, a tiny amount of technology is used within this architecture. They perform scaling in their new applications. Name of their new software is STRUMS. It is open source software. They had one magneto based application. But that application was not able to tackle a huge amount of load. For that reason, they required new software (Takase et al., 2020). They shifted from monolithic to Microservices in 2015.That new software was designed by keeping a closer touch with the structure of Zalando. It was also related to the business logic as well as culture. IT and business team wanted a new idea for their software. After the shift, they designed as well as a global system. They also designed a latest work culture for their management. By using their independent group, they increased their rate of productions as well enhanced the number of innovations. They used four eye policies while developing their software. ļ¼Netflix Ten years ago, Netflix developed their Microservices based applications. The special feature of this application is that, it can not be shred with each other. They used an application programmable interface (Wang et al., 2020). It had some tightly controlled procedureswhich could be tackled by any programs. It helped the software developer to performcertain changes within the software to ensure that it executed in an efficient manner.
8MICROSERVICES ARCHITECTURE The Company mentioned that they used around seven hundred Microservices for every part of the Microservices architecture. One Microservices used to preserve the videos watched by every user. Another service removed the monthly fee paid from the authorised credit card of the user. They defined the Microservices for playing the videos for the user (Siavashi, 2020). They wrote another service for the history and guessing theavailable movies within the Netflix application. IT team of the company modifies alot within the software of Netflix. They have the ability to perform modifications of the software without hampering the ongoing services offered by the Netflix. Service modelling principles ļ·SOAP It stands for Simple Object Access Protocol. It is not dependent on any platform and it is a messaging protocol. It is based on the XML. It helps to transfer data within the web services (Ranjan & Sahoo, 2020). It has the ability to establish connections to the client software with the remote servers. Main purpose of this web services is to perform the remote procedure call. It contains four major elements. These are as follows: oEnvelop It helps to do the starting and ending of the SOAP messages. oHeader It is not all a mandatory attribute in SOAP architecture. It is mainly used for message processing (RumiÅski & Walczak, 2020). It has a header entry which is defined inside the namespace.
9MICROSERVICES ARCHITECTURE oBody Body of the message SOAP is entirely based on the XML. It can be exchanged within the SOAP message (Putra et al., 2020). It is defined as the child element.Semantics of the body is defined in the associated SOAP schema. oFault ItisamandatoryelementavailableinsideSOAP(MarkoviÄ& ÄorÄeviÄ, 2020). It returns accurate information regarding the bugs involves the predefined code, detailed description and addresses the SOAP processor for calculating the outcome. It can carry one fault block. It is considered as an optional part of the SOAP message. SOAP fault is associated with 500 to 599 ranges of status codes. There are many advantages of SOAP web services. These are as follows: ļ§SOAP uses XML based data for the purpose of payload as well as contract (Madampe, Hoda & Singh, 2020). So that it can be easily fit with any type of technologies. ļ§It is accepted in the entire world. For that reason, it is considered as an approach related to the industry standard. That is why; it is mainly use in any type of open source applications offered by any organisation. ļ§It is a light weight protocol (Houmani et al., 2020). It is used for the exchange of data among various types of applications offered by different companies.
Paraphrase This Document
Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
10MICROSERVICES ARCHITECTURE There are some drawbacks of the SOAP based web services. These are as follows: oOnly XML based protocol is used in SOAP web services (AraĆŗjo et al., 2020). Other protocols such as JSON and other protocols are not used in this SOAP web services. oSOAP only uses the WSDL, but does not have any other procedure for using these services. Figure 1: SOAP web services Source:https://medium.com/@dilshanramesh81/soap-web- services-c62940e0de93 ļ·XML-RPC
11MICROSERVICES ARCHITECTURE It is a very simple version of the XML based protocol. It is used to shift the information among the computers. It helps the computer programs to apply functions in an efficient manner (Bora & Bezboruah, 2020). It helps the HTTP protocol for shifting of information fromone computer to another. A small XML vocabulary is present in the XML-RPC. It has the ability to describe many responses. It has three different parts. These are asfollows: oXML-RPC data model oXML-RPC response structures oXML-RPC request structures There are some basic data types for XML-RPC. These are as follows: oint or i64 obase64 odouble oBoolean odateTime.iso8601 If the developer wants to integrate more than one computing applications then XML-RPC is the important way to perform this one. But they do not share any kind of complicated data structures (Grambow et al., 2020). If the developer works within a single platform, then RPC procedure makes it very easy to establishconnection among the programs. These programs may have various data models. This architecture gives reusable logic for easy access. Basic data types are enclosed withvalueelements(Heeager&Nielsen,2020).Stringscanalsobe enclosed with the value elements but it can remove the string elements. In XML-RPC, arrays contain some sequential information.
12MICROSERVICES ARCHITECTURE Figure 2: XML-RPC protocol and IP disclosure Attacks Source:https://www.netsparker.com/blog/web-security/xml- rpc-protocol-ip-disclosure-attacks/ ļ·REST REST is called Representational State Transfer. It uses the protocol named Hyper Text Transfer Protocol. REST server gives access to the resources. REST client has the capability to modify the resources (MarkoviÄ & ÄorÄeviÄ, 2020). Every resource are detected by Uniform Resource Identifiers or global IDS. REST hasthe capability for representing the resources like XML, JSON and text. There are four HTTP methods used in the REST architecture. These are as follows: ļ§GET ļ§POST ļ§PUT ļ§PATCH ļ§DELETE
Secure Best Marks with AI Grader
Need help grading? Try our AI Grader for instant feedback on your assignments.
13MICROSERVICES ARCHITECTURE It has six architectural interfaces. These are as follows: ļ§Uniform Interfaces A resource situated inside a system must have a Uniform Resource Identifier. It is very good procedure to performsynonymize operation of a resource with the web page (Perkusich et al., 2020). Single resource is very small. It contains everything inside itself. All of these resources can be approached by using some simple and very popular approaches such as HTTP, POST and many others. It must follow some pre-defined guidelines. ļ§Stateless In case of REST, all architectures are considered as stateless. Server does not have any responsibility regarding the preserving of information. It is performed with respect to the current request of HTTP (Putra et al., 2020). If the REST architecture is totally based on the web services then it is called RESTfulwebservices.ItalsousesHyperTextTransferProtocolfor developing the REST architecture. It elaborates regarding the URI. It gives some representation of the resources such as JSON and HTTP methodologies. ļ§Client server In REST, client and server can be easily stayed separately. It does not have any dependency (MarkoviÄ & ÄorÄeviÄ, 2020). Client must have a sound knowledge regarding the Uniform Resource Locator of various resources. Benefits are as follows: ļRESTarchitectureisquiteeasierthanothersoftware development approaches such as SOAP (Madampe, Hoda &
14MICROSERVICES ARCHITECTURE Singh, 2020). It does not force the developers to reinvent the wheel as long as the HTTP request for operation continues. ļAs the REST is totally related to the HTTP based protocols, it utilizes some verbs having specific meanings such as āgetā or ādeleteā. It helps to avoid the ambiguity (Houmani et al., 2020). Resources of the REST are allocated to the individual Uniform Resource Identifier which adds flexibility. ļWith the help of REST architecture, produced and consumed information are totally different from the technologies which are facilitating the production as well as consumption (Heeager &Nielsen,2020).Forthatreason,RESTperforms exceptionally well and it is highly scalable. ļTesting can be done very easily inside the browser.
15MICROSERVICES ARCHITECTURE Figure 3: REST architecture Source:https://medium.com/@ahmetozlu93/mastering-rest- architecture-rest-architecture-details-e47ec659f6bc Limitations of monolithic architecture Drawbacks of monolithic architecture are as follows: ļIt has a limited amount of size. ļApplications developed using monolithic architecture is very large as well as complicated (Grambow et al., 2020). That is why; changes can be done in a faster rate.
Paraphrase This Document
Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
16MICROSERVICES ARCHITECTURE ļSize of the application is responsible to slow down the start up time of the application ļFor doing any update, developers have to redesign the entire application. ļEffect of the modification is not very well-understood and it can lead to a huge amount of manual testing. ļIt is hardly possible for the developers to perform the continuous development of the software. ļMonolithic applications are very difficult to perform the scaling. ļIt has a limitation for adopting various new technologies (Coulson, Sotiriadis & Bessis, 2020). As a small modification affects the modifications inside the framework then it may affect the entire application. Issues of Microservices architecture There are several issues of the Microservices architecture. These are as follows: ļ§As the number of Microservices based software increases, management of that software can be a challenging task (Bora & Bezboruah, 2020). Due to lack of software management, things can go quickly out of the hand. Mismanagement of the services can be a big deal for Microservices architecture as the problems facedattheinitialstepofthetransformationofthemonolithicbased applications. It may have lots complexity and development process can be very complicated. ļ§ConventionalITmonitoringapproachesarenotapplicableforthe Microservicesbasedarchitecturebecausemorethanoneservicesare performing the same functions (Bhavsar, Shah & Gopalan, 2020). When a problem occurred then, searching for the main cause can be a challenging one.
17MICROSERVICES ARCHITECTURE ļ§Testing procedure is very complicated for Microservices architecture because of different types of services, collaboration and internal dependencies (AraĆŗjo et al., 2020). Team members are responsible for assuring the quality software for performing the channel of communication between many services having a full coverage. Conclusion Microservices architecture is considered as a distributed design approach which has lots of ability to reduce the drawbacks of conventional monolithic based applications. If the Whiteboard Company wants to design a learning system then they should select agile as a software development methodology. For implementing agile methodology, Microservices are very useful approach. It is also true that development of the Microservices based architecture is a very challenging approach. It gives a paradigm shift with respect to the Microservices architecture. It does not have the capability to resolve the complexity of the software. But it is notaCargocult.However,Microservicesarchitectureisveryusefulinsoftware development.Forthatreason,WhiteboardCompanymustchoosetheMicroservices architecture. Recommendation Fordevelopingtheirlearningsystem,WhiteboardCompanymustusethe Microservices architecture. But they must be aware about the complexity, advantages and disadvantages of those applications. A crucial mistake that can be made by the company is to shift to the Microservices architecture without having a proper goal. If the company really wants to apply Microservices then they should select RESTful web services because it has lots of benefits with respect to the SOAP based web services. REST is collaborated with JSON. That is why, it gives a good support to the browser.
18MICROSERVICES ARCHITECTURE References AraĆŗjo, M., Maia, M., Rego, P., & de Souza, J. (2020, January). Performance analysis of computational offloading on embedded platforms using the gRPC framework. In8th InternationalWorkshoponADVANCEsinICTInfrastructuresandServices (ADVANCE 2020)(pp. 1-8). Bhavsar, K., Shah, V., & Gopalan, S. (2020). Scrum: An Agile Process Reengineering in Software Engineering.International Journal of Innovative Technology and Exploring Engineering (IJITEE),9(3), 840-848. Bora, A., & Bezboruah, T. (2020). Investigation on Reliability Estimation of Loosely Coupled Software as a Service Execution Using Clustered and Non-Clustered Web Server.International Journal of Engineering,33(1), 75-81. Coulson, N. C., Sotiriadis, S., & Bessis, N. (2020). Adaptive microservice scaling for elastic applications.IEEE Internet of Things Journal. Grambow, M., Meusel, L., Wittern, E., & Bermbach, D. (2020, March). Benchmarking microservice performance: a pattern-based approach. InProceedings of the 35th Annual ACM Symposium on Applied Computing(pp. 232-241). Heeager, L. T., & Nielsen, P. A. (2020). Meshing agile and plan-driven development in safety-critical software: a case study.Empirical Software Engineering, 1-28. Houmani, Z., Balouek-Thomert, D., Caron, E., & Parashar, M. (2020, November). Enhancing microservices architectures using data-driven service discovery and QoS guarantees. InThe 20th IEEE/ACM International Symposium on Cluster, Cloud and Internet Computing CCGrid(p. 10). Madampe, K., Hoda, R., & Singh, P. (2020). Towards Understanding Emotional Response to Requirements Changes in Agile Teams. InNew Ideas and Emerging Results track of the 42nd IEEE/ACM International Conference on Software Engineering, ICSE2020.
Secure Best Marks with AI Grader
Need help grading? Try our AI Grader for instant feedback on your assignments.
19MICROSERVICES ARCHITECTURE MarkoviÄ, M., & ÄorÄeviÄ, G. (2020). MOBILE GOVERNMENT SYSTEMS IN CROSS- BORDER ENVIRONMENTS.MeTTeG14, 67. Megargel, A., Shankararaman, V., & Walker, D. K. (2020). Migrating from Monoliths to Cloud-Based Microservices: A Banking Industry Example. InSoftware Engineering in the Era of Cloud Computing(pp. 85-108). Springer, Cham. Pahl, C., Jamshidi, P. and Zimmermann, O., 2020. Microservices and Containers.Software Engineering 2020. Perkusich, M., e Silva, L. C., Costa, A., Ramos, F., Saraiva, R., Freire, A., ... & Almeida, H. (2020). Intelligent software engineering in the context of agile software development: A systematic literature review.Information and Software Technology,119, 106241. Putra, B. W., Saputra, A., Sanjaya, R., & Kurniawan, D. (2020, February). Implementasi Framework CodeIgniter dan Restful API pada Sistem Informasi Manajemen Tugas Akhir. InAnnual Research Seminar (ARS)(Vol. 5, No. 1, pp. 307-313). Qiu, J., Du, Q., Yin, K., Zhang, S. L., & Qian, C. (2020). A Causality Mining and Knowledge Graph Based Method of Root Cause Diagnosis for Performance Anomaly in Cloud Applications.Applied Sciences,10(6), 2166. Ranjan, A., & Sahoo, B. (2020). Web Service Selection Mechanism in Service-Oriented Architecture Based on PublishāSubscribe Pattern in Fog Environment. InArtificial Intelligence and Evolutionary Computations in Engineering Systems(pp. 269-281). Springer, Singapore. RumiÅski, D., & Walczak, K. (2020). Large-scale distributed semantic augmented reality servicesāa performance evaluation.Graphical Models,107, 101027. Siavashi, F. (2020). Model-based Verification and Testing of Web services: Functionality, Robustness and Vulnerability Analysis.
20MICROSERVICES ARCHITECTURE Sorgalla,J.,Rademacher,F.,Sachweh,S.,&ZĆ¼ndorf,A.(2020,March).Modeling microservice architecture: a comparative experiment towards the effectiveness of two approaches.InProceedingsofthe35thAnnualACMSymposiumonApplied Computing(pp. 1506-1509). Takase, H., Mori, T., Takagi, K., & Takagi, N. (2020). mROS: A Lightweight Runtime EnvironmentofROS1nodesforEmbeddedDevices.JournalofInformation Processing,28, 150-160. Wang, Z., Cheng, B., Zhang, W., & Chen, J. (2020). Q-Graphplan: QoS-Aware Automatic Service Composition With the Extended Planning Graph.IEEE Access,8, 8314-8323.