This document discusses the microservice architecture of the DTGOV application, including stable and frequently changing modules, modules experiencing peak usage loads, phased transformation process, achieving high availability through microservices, and optimizing application performance.
Contribute Materials
Your contribution can guide someone’s learning journey. Share your
documents today.
Running head:MICROSERVICE ARCHITECTURE OF DTGOV APPLICATION Microservice Architecture of DTGOV Application Student Name University Name Note by the Author
Secure Best Marks with AI Grader
Need help grading? Try our AI Grader for instant feedback on your assignments.
1MICROSERVICE ARCHITECTURE OF DTGOV APPLICATION Question 1: Module Assessment 1.1 Modules being stable The Search Engine, Cart, Travel Requirements and Account Administration modules in the Travel Booking Application of DTGOV are identified to remain stable compared to the other modules. This can be due to the regular usage of these modules by the DTGOV customers who are repeatedly accessing the application of DTGOV without deciding on any particular product or service and proceeding further to enter checkout or completing transactions (Lou, Tian & Koh, 2017). In general, the above discussed modules are extensively used by the customers in all travel booking applications for doing research based and price specific calculations in order to help in planning for their upcoming travel trips. 1.2 Modules with frequent changes Search Engine, Travel Recommendation Engine and the Accommodation Recommendation engine end up being those modules requiring regularmodifications. This results from the several services and facilities offered by DTGOV like travel booking, hotel booking, registration for packaged tours and others along with the associated vendors and specifications they select which are to be mapped. Time and again newer services, products and travel packages get included into this application of DTGOV for purchase by customers, some of these have newer features sets and functionalities that need modifications to keyword configurations and filters of the search engine (Li et al., 2016). Recommendation based modules of the DTGOV application need serious research be conducted by DTGOV regarding the travel and interest related information of their customers and curated offers so requires frequent updates. 1.3 Modules experiencing peak usage loads Modules experiencing heaviest usage loads are Travel and Accommodation processing engine, Search Engine, Cart, Travel requirements and account administration modules. As every one of the above modules serve a crucial role in enabling customers to complete the process of purchasing a
2MICROSERVICE ARCHITECTURE OF DTGOV APPLICATION service, these get heavily stressed during peak use of DTGOV’s application. When peak use of the application is seen from users, it can be known that the users are not just browsing through the services but also completing transactions and thus use of all the above critical modules which support the process step by step. Question 2: Phased manner of Transformation 2.1 First set of modules that need to be refactored Initial batch of modules in DTGOV application which has to get refactored will be the modules going by the names Account Administration and Travel Requirements modules. These modules are the ones that get used most heavily and even get to experience highest workloads when the application sees peak loads of usage. Adding products and services to the cart as well as other cart specific services can exist in several instances for the application. Among these wish lists of the customers as well as services offered by the modules (Xu & Huang, 2015). Travel requirements can use catalogues and other classification features for which the products and services a user is adding to their cart should be mapped with this module. Data associated with the cart and products or services listed in it occupy substantial memory space and this gets multiplied owing to the number of items as well as the total users who are choosing them. Thus by introducing microservices for the modules Travel Requirements and Account Administration, the performance and functionalities of the Cart module can be greatly improved as this module is deeply inter-related with the modules selected for refactoring. This is how the cloud computing based resources can turn extremely beneficial for DTGOV. 2.2 Shifting towards Microservices Travel requirements and Account Administration are the two modules that can immensely benefit DTGOV by embracing microservices (Villamizar et al., 2016). Each of the two modules are heavily interconnected with the services, products and facilities being offered to the customers who needs to add these to their respective carts first. Thus, adoption of microservices for the selected
3MICROSERVICE ARCHITECTURE OF DTGOV APPLICATION modules - travel requirements and the Account Administration reduces hefty processing load from the cart module. Traditionally all the three different modules are allocated large chunks of resources which often ends up getting inefficiently distributed in practise and this slows down the the application performance gradually leading to application down times as the Trael and Booking Application becomes unavailable to many of the customers. Question 3: Achieving high availability through Microservices Microservice specificfeaturesmake DTGOVable to deploy the traveland booking application independently while also allowing resources scaling functionalities (Hasselbring, 2016). Adoption of microservices is essential as this application sets out to offer a variety of application specific functions to better serve their respective customers which can be catalogue, user profiles search function and others among the rest. All these are important software side functions that greatly improve the user experience in application usage and ushering convenience of operating through the application. This is why most businesses try to accommodate them in their applications and DTGOV is no exception. However, these features consume substantial resources and can freeze the application when demand peaks. It is here that DTGOV can significantly benefit from microservices. When microservices are adopted the data is stored is the clients used by the customers instead of the servers of DTGOV and thereby eliminates the hardware limitations. Business applications like the Travel and Booking Application of DTGOV can be optimized through microservices in five key methods. These five different methods are: Optimizing Application Architecture: The most important aspect of optimizing applications through microservices is by getting the architecture done right (Dragoni et al., 2017). Running too many microservices, use of poor API designs and excess network hardware can affect efficient communication. Increasing Efficiency in Codes: Microservices aid developers in writing better and efficient programming codes as the process is made easier by breaking services into smaller sub
Paraphrase This Document
Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
4MICROSERVICE ARCHITECTURE OF DTGOV APPLICATION modules (Derakhshanmanesh & Grieger, 2016). This makes it easier to identify redundant functions but require active effort from the organization’s end. Utilizing other programming languages:Using multiple microservices enables them to be coded in different languages making them easier to overlook (Guidi et al., 2017). Use of suitable languages for specific services can thus improve performance of overall application. Container Deployment: Use of containers for microservice based applications increases efficiency in consumption of resources (Kratzke, 2017). This additional feature is adopted to squeeze every bit of performance optimization for the respective application. Effective Monitoring: Microservices oriented applications are very different from ordinary applications and they need to be monitored (Hasselbring, 2016). In these applications every microservices need to be monitored separately to ensure an effective monitoring activity. This is necessary because dependencies between the different microservices need to be understood. Other important ways of improving application performance through microservices are by turning the CRUD operations into microserices like on-boarding of users (De Alwis et al., 2018). Here the microservices can be for entities requiring create, retrieve, update and delete CRUD. When operating with these entities, only a single entity is entertained at a time and thus only single microservices call is required. Also, apart from the CRUD style API, improved performance based on microservices can be provided to group of multiple entities in the form of Batch APIs. In here, instead of just exposing any GET API function - used for retrieving any one user, an API is also provided which obtains the sets of identifiers of users so as to return a dictionary for those particular users. Travel Requirements and Account Administration use the above mentioned features such as these catalogues, lists for every user, on-boarding of users who have registered to the DTGOV’s application (Yoganathan et al., 2018). These features help users get better experience in availing facilities offered by the Travel and Booking Application while even presents users history of
5MICROSERVICE ARCHITECTURE OF DTGOV APPLICATION previous orders and trips as well as wish lists containing the ones the user is seeking to get in the near future. These different services needs to be broken down and a sub category of such services should be mapped to their parent service category for example the parent category service Account Administration for the subcategory services Profiles, Previous Orders and Wish lists. Resource consumption by each of the services may be the same but can vary time to time. Hence through scaling the allocation of resources for these service as per requirements depending on the period of time, the efficient consumption of resources can be ensured. Question 4: DTGOV Travel Booking Application with Microservices Figure 1: Microservice based architecture of DTGOV Travel Booking Application
6MICROSERVICE ARCHITECTURE OF DTGOV APPLICATION References De Alwis, A. A. C., Barros, A. P., Fidge, C. J., & Polyvyanyy, A. (2018). Using business object patterns for discovery of microservices in enterprise systems. Derakhshanmanesh, M., & Grieger, M. (2016). Model-Integrating Microservices: A Vision Paper. InSoftware Engineering (Workshops)(pp. 142-147). Dragoni, N., Giallorenzo, S., Lafuente, A. L., Mazzara, M., Montesi, F., Mustafin, R., & Safina, L. (2017). Microservices: yesterday, today, and tomorrow. InPresent and ulterior software engineering(pp. 195-216). Springer, Cham. Guidi, C., Lanese, I., Mazzara, M., & Montesi, F. (2017). Microservices: a language-based approach. InPresent and Ulterior Software Engineering(pp. 217-225). Springer, Cham. Hasselbring, W. (2016). Microservices for Scalability (Keynote Presentation). Hasselbring, W. (2016, March). Microservices for scalability: keynote talk abstract. InProceedings of the 7th ACM/SPEC on International Conference on Performance Engineering(pp. 133- 134). ACM. Kratzke, N. (2017). About microservices, containers and their underestimated impact on network performance.arXiv preprint arXiv:1710.04049. Li, B., Lai, W., Yang, C., & Zheng, S. (2016, July). The Design and Implementation of the APP of Experiencing Guangxi Folk Custom. In2016 International Conference on Economics and Management Innovations. Atlantis Press. Lou, L., Tian, Z., & Koh, J. (2017). Tourist Satisfaction Enhancement Using Mobile QR Code Payment: An Empirical Investigation.Sustainability,9(7), 1186. Villamizar, M., Garces, O., Ochoa, L., Castro, H., Salamanca, L., Verano, M., ... & Lang, M. (2016, May). Infrastructure cost comparison of running web applications in the cloud using AWS
Secure Best Marks with AI Grader
Need help grading? Try our AI Grader for instant feedback on your assignments.