
Dynamic scaling of a web-based application in a Cloud Architecture MD. IQBAL HOSSAIN and MD. IQBAL HOSSAIN KTH Information and Communication Technology Degree project in Communication Systems Second level, 30.0 HEC Stockholm, Sweden Dynamic scaling of a web-based application in a Cloud Architecture Md. Iqbal Hossain (Older) [email protected] And Md. Iqbal Hossain (Younger) [email protected] 2014-02-28 Master’s thesis Examiner and academic adviser Professor Gerald Q. Maguire Jr. School of Information and Communication Technology KTH Royal Institute of Technology Stockholm, Sweden Abstract With the constant growth of internet applications, such as social networks, online media, various online communities, and mobile applications, website user traffic has grown, is very dynamic, and is oftentimes unpredictable. These unpredictable natures of the traffic have led to many new and unique challenges which must be addressed by solution architects, application developers, and technology researchers. All of these actors must continually innovate to create new attractive application and new system architectures to support the users of these new applications. In addition, increased traffic increases the demands for resources, while users demand even faster response times, despite the ever-growing datasets underlying many of these new applications. Several concepts and best practices have been introduced to build highly scalable applications by exploiting cloud computing. As no one who expect to be or remain a leader in business today can afford to ignore cloud computing. Cloud computing has emerged as a platform upon which innovation, flexibility, availability, and faster time-to-market can be supported by new small and medium sized enterprises. Cloud computing is enabling these businesses to create massively scalable applications, some of which handle tens of millions of active users daily. This thesis concerns the design, implementation, demonstration, and evaluation of a highly scalable cloud based architectures designed for high performance and rapid evolution for new businesses, such as Ifoodbag AB, in order to meet the requirement for their web-based application. This thesis examines how to scale resources both up and down dynamically, since there is no reason to allocate more or less resources than actually needed. Apart from implementing and testing the proposed design, this thesis presents several guidelines, best practices and recommendations for optimizing auto scaling process including cost analysis. Test results and analysis presented in this thesis, clearly shows the proposed architecture model is strongly capable of supporting high demand applications, provides greater flexibility and enables rapid market share growth for new businesses, without their need to investing in an expensive infrastructure. Keywords: cloud computing, internet, application scalability, internet traffic, performance. i Sammanfattning Med den ständiga tillväxten av Internet- applikationer, såsom sociala nätverk, online media, olika communities och mobila applikationer, har trafiken mot webbplatser ökat samt blivit mycket mer dynamisk och är ofta oförutsägbara. Denna oförutsägbara natur av trafiken har lett till många nya och unika utmaningar som måste lösas med hjälp av lösningsarkitekter, applikationsutvecklare och teknikforskare. Alla dessa aktörer måste ständigt förnya sig för att skapa nya attraktiva program och nya systemarkitekturer för att stödja användarna av dessa nya tillämpningar. Dessutom ökar den ökade trafikmängden krav på resurser, samtidigt som användarna kräver ännu snabbare svarstider, trots den ständigt växande datamängden som ligger som grund för många av dessa nya tillämpningar . Flera koncept och branchstandarder har införts för att bygga skalbara applikationer genom att utnyttja ”molnet” (”cloud computing”), eftersom att ingen som förväntar sig att bli eller förbli en ledare i näringslivet idag har råd att ignorera ”molnet”. Cloud computing har vuxit fram som en plattform på vilken innovation, flexibilitet, tillgänglighet och snabbhet till marknaden kan uppnås av nya, små och medelstora företag. Cloud computing är möjligt för dessa företag att skapa mycket skalbara applikationer, vilka kan hanterar tiotals miljoner aktiva användare varje dag. Detta examensarbete handlar om utformning, genomförande, demonstration och utvärdering av en mycket skalbar molnbaseradearkitekturer som utformats för höga prestanda och snabb utveckling av nya företag, såsom Ifoodbag AB, för att uppfylla kravet på deras webb- baserad applikation. Detta examensarbete undersöker hur man både skalar upp och ner dynamiskt, eftersom det inte finns någon anledning att tillägna applikationer mer eller mindre resurser än vad som faktiskt behövs för stunden. Som en del av examensarbetet implementeras och testas den föreslagna utformningen, samt presenterar flera riktlinjer, branchstandarder och rekommendationer för att optimera automatisk skalning av processer. Testresultat och de analyser som presenteras i detta examensarbete, visar tydligt att den föreslagna arkitekturen/modellen kan stödja resurskrävande applikationer, ger större flexibilitet och möjliggör snabb tillväxt av marknadsandelar för nya företag, utan att deras behov av att investera i en dyr infrastruktur. Nykcelord: Cloud computing, molntjänster, Internet, skalbarhet för applikationer, internettrafik, prestanda iii Acknowledgements Iqbal Hossain (Older): First I would like to thank almighty Allah for giving me strength and the patience to accomplish this thesis project. I am thankful to my mom (Mrs. Nurjahan Begum) and my older brothers for their unconditional support and motivation, even from thousand miles away. I am also grateful to my beloved wife (Rahena Easmin Ratna) for her continuous inspiration and insisting to complete this thesis work. I would also like to thank my 4 years old charming boy (Farhan Iqbal Taseen) for not demanding too much attention from me during this thesis project. I am also thankful to my colleagues Tobias Östensson and Marked Jakob for helping us writing abstract in Swedish. I would also like to thank my friends and all family members across the globe for their encouragement during all this time. Last but not the least I would like to thank our supervisor and examiner (Professor Gerald Q. Maguire Jr.) who introduced us the idea of working with cloud architecture and his quick invaluable insights have always been very helpful throughout the project. Iqbal Hossain (Younger): Praise to almighty, the origin of knowledge, who enables me to undertake and accomplish this thesis work. My special gratitude goes to our supervisor and examiner Professor Gerald Q. Maguire Jr. whose precious guidance accompanied me during this research work. I would like to sincerely thank to my program coordinator May-Britt Eklund- Larsson for her help and kind cooperation during my studies. My deepest gratitude goes to my parents for their infinite support throughout my life. Finally, I would like to thank my brother, sisters and friends for encouraging me during all this time. The efforts of myself, inspirations of many, have led to a successful completed of my thesis project. v Table of Contents Abstract ........................................................................... i Sammanfattning ............................................................... iii Acknowledgements ............................................................ v Table of Contents ............................................................. vi List of Figures .................................................................. ix List of Tables ................................................................... xi List of Acronyms and Abbreviations ................................... xiii Contribution of the Authors ............................................... xv 1 Introduction .............................................................1 1.1 Overview ...................................................................................... 1 1.2 Problem Statement ......................................................................... 1 1.3 Research methodology .................................................................... 4 1.4 Project goals .................................................................................. 4 1.5 Project scope ................................................................................. 4 1.6 Structure of this thesis .................................................................... 5 2 General Background ..................................................7 2.1 What is cloud computing? ................................................................ 7 2.1.1 On-demand self-service ............................................................. 8 2.1.2 Ubiquitous network access ......................................................... 9 2.1.3 Elasticity and scalability ............................................................. 9 2.1.4 Horizontal and Vertical Scalability ................................................ 9 2.1.5 Resource pooling ..................................................................... 10 2.1.6 Pay-per-use ........................................................................... 11 2.1.7 Self-managed platform ............................................................ 11 2.1.8 Standardized interfaces ............................................................ 11 2.1.9 Quality of Service (QoS) ..........................................................
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages125 Page
-
File Size-