EPAM Systems. EPAM White Paper
|
|
- Janis Bond
- 8 years ago
- Views:
Transcription
1 EPAM Systems EPAM White Paper Version 2.0: August
2 Excellence in Software
3 Content 1. Introduction Business Case Problem Statement Proposed Solutions and Implementation Database layer Application layer Caches scaling Session transfer Data storage Web front-end Results Appendices Appendix A Authors Appendix B References Table of Figures Excellence in Software
4 1. Introduction Established in 1993, EPAM Systems, Inc. (NYSE: EPAM) is a leading global IT services provider with delivery centers throughout Central and Eastern Europe. Headquartered in the United States, EPAM employs over 7,300 IT professionals and provides services to clients worldwide using a global delivery model through its client management and delivery operations in the United States, Belarus, Hungary, Russia, Ukraine, UK, Germany, Kazakhstan, Sweden, Switzerland, Poland and Canada. EPAM s years of building complex engineering solutions have led us to develop deep expertise in a number of horizontal technology areas. These are now formalized as technological competency centers that enable our teams to develop, integrate and support best of breed solutions and practices. One such center is dedicated to Cloud Computing. EPAM Cloud Computing Competency Center is a team of experts providing professional support at every stage of our clients cloud projects from consulting and cost analysis to development and deployment. In addition to dozens of successfully completed cloud projects, we have built a portfolio of cloud offerings to suit the needs of EPAM s global development team and its clients including EPAM Private and Community Cloud and EPAM Cloud Orchestrator. This whitepaper illustrates EPAM s approach to make an existing application ready to be hosted in one of many public IaaS offerings. Several aspects of our approach are often being left out in a typical cloud migration project. As a result migration projects are delayed or fail due to unsatisfactory performance and stability once in the cloud. Through the example of a standard J2SE application, we will show you the whole process from definition of bottlenecks through their elimination and up to assessment of the results. 4 Excellence in Software
5 2. Business Case In the last several years we have witnessed Cloud Computing becoming a major trend in the IT industry. Based on recent research few organizations do not use of consider to use the cloud in near future. Benefits of strategic cloud adoption and correct cloud implementation are numerous and well known. And the end result in such case is well worth the effort. Organizations that adopt cloud strategically understand that their processes and skill-sets have to be revised accordingly. Organizations that adopt the cloud because it is trendy need that transformation as well, but often do not recognize that need until much later in the transition process. The challenge extends beyond processes and skills. Few existing applications are ready for the cloud. Having decided to move to the cloud, organizations often take their existing applications, deploy them in the cloud, as they would do it in-house and anticipate all the benefits of the cloud. The reality is that applications not designed or optimized for cloud will not be able to leverage much of its benefits. Cloud in such case is nothing more than virtual hosting. And as such applications will be constrained to the individual virtual machines rather than taking advantage of the scalability and availability of the entire cloud infrastructure. Furthermore, it is quite common that applications designed without scalability in mind once deployed into cloud environment exhibit significant performance degradation. The most common root cause is that an application is stripped of dedicated and managed hardware and placed into a shared environment. Another common reason is that the application does not fit well into the standardized virtual instance shapes in the cloud. There a several ways to solve this problem. The most obvious one is running the application on a more powerful instance i.e. vertical scaling. While solving the problem to some extent, this virtually nullifies some of the main cloud advantages, as vertical scaling is limited by performance of the most powerful instance and is by any means not the cheapest option. All of the aforesaid allows us to draw the following conclusion in order to make the best use of the cloud an application has to be scalable, in other words cloud-ready. Below we will showcase how to make our application scalable, while minimizing or avoiding amendments to its code. Clearly we could have just redesigned the whole thing from ground up, but that would have taken a lot longer, would have required significant attention from application business owners and could have introduced regression issues. Excellence in Software 5
6 3. Problem Statement As already mentioned above, this paper describes the approach we took to prepare an application for deployment in the cloud ( Cloudification ), based on an actual use case. As the target for our exercise we have chosen a content management system (CMS) that has been available for quite a while. It has never been designed with scalability in mind and was intended to be deployed on a single server. From a technical perspective the solution is a standard Java (J2SE) application built on top of the Hibernate library. It operates under a common application stack of Apache HTTP Server, Tomcat Application Server, and MySQL Database Engine that comprise a content management system. Figure 1 Bird s-eye Architecture Overview The system is fairly large and feature-rich. However its lengthy development has been reflected in legacy architecture. Our first step has been migrating the system to the Cloud as is. We deployed an absolute replica of the production environment in the Cloud, similarly to what organizations usually do. But for us it was just the first step to application Cloudification. So we got the whole system running on a single instance. Predictably application performance decreased. The cloud-friendly way to address this problem is to employ one of the defining cloud features elasticity. In other words, we were to begin scaling. By scaling we mean an ability to run an indefinite number of instance copies hosting the application and balancing the load. Clearly CMS has to remain functioning properly the requested content must be delivered, and relevant information received. And all of that must be consistent. Changes introduced to one instance must be distributed to all others. Excellence in Software 6
7 Addressing these problems directly required comprehensive architecture analysis to identify problem areas. Our approach was first to break the solution architecture into logical layers and subsystems, then to carry out the analysis of each layers capacity for horizontal scaling individually, and lastly evaluate possible issues with pulling horizontally scaled layers to operate together. Figure 2 - The System Broken into Logical Layers 7 Excellence in Software
8 4. Proposed Solutions and Implementation 4.1. Database layer As usual when dealing with some kind of a content management system, the first bottleneck here is the database. Horizontal scaling of SQL databases is notoriously difficult both practically and theoretically (Brewer's CAP theorem). Potential threats when scaling MySQL are: - Project code rewriting to support certain scaling approaches, which might lead to introduction of new bugs - Certain scaling methods may result in write bottlenecks - Some scaling methods are prone to synchronization issues - Scaling should not drastically increase fault probability - Database conflicts when multiple application instances update same or connected pieces of data Generic approaches to scaling MySQL horizontally are as follows: Master- Slave An unlimited number of slave instances can be added, but only one instance can be the master Great for applications with mostly READ operations Good for addressing I/O (network or disk) bottlenecks Good for geographic dispersion Requires application logic to separate read and write operations Replication is asynchronous, so instances are not guaranteed to be in sync Master instance can be scaled vertically 1) Master-slave replication the most common approach, involving splitting read/write operations. As read/write ratio can sometimes reach 90% to 10%, writing is performed in a single instance that has many replicas functioning in read-only mode. In our case this approach could not be applied as the application uses Hibernate. A wellknown flaw of this library is that we cannot be sure if the query is going to end in writing or not beforehand. Master- Master Robust. If one database is down, the application can continue functioning normally, with HAProxy routing all queries to the other master. Good for addressing I/O (network or disk) bottlenecks Good for geographic dispersion Requires stateful load balancing Need to continually monitor replication validity. Conflict resolution support in program code High complexity Excellence in Software 8
9 2) Master-master replication as it turns out we are unable to separate read and write operations, our next move is replicating instances, each one accepting both of them. The problem here is there can be data conflicts between instances when applying this approach to MySQL. Therefore, the application should be able to resolve them. In our case this approach requires substantially altering the code and thus cannot be applied. Sharding Good strategy for handling extreme database loads Easiest/most appropriate when most load is accessing a few tables and JOIN operations across shards are not required Success depends largely of sharding strategy and shard sizing May require painful periodic shard resizing Very high complexity Improves availability - The impact of a shard failure is small (affects only a portion of data), but sharding must be coupled with an additional strategy (like active-passive) to provide complete high-availability In terms of avoiding code refactoring, Sharding can arguably be considered an unbeatable approach to database scaling. The main difference from master-master replication is that none of the instances contains the whole amount of data, hosting a small part of it (a Shard) instead. The shards somewhat overlap to make the system failsafe. This approach is used in most of high-load systems, e.g. social networks and search engines. Sharding, however, requires adding a separate logical layer, directing read/write queries. Our options here is either adding it, which is a downright challenging task or use a 3 rd party application, serving as a single DB entry point and solving the tasks of breaking the DB on shards and assembling it later internally. We have found a suitable application called ScaleBase, however obtaining trial access to its functionality encountered unexpected problems forcing us to abandon this idea as well. Cluster Good solution for high-availability In-memory storage provides high-performance Good for scaling applications with heavy write loads Can scale specific portions of the cluster (query processing or storage) to target bottlenecks (CPU, RAM, I/O, storage volume) Synchronous replication between nodes makes cluster inappropriate for geographic dispersion Not a good fit for hosting environments with SAN Requires lots of RAM for storage nodes (roughly double the db size) High complexity 3) Building a MySQL Cluster was initially put aside due to its well-known complexity. However, it turned out to be the only approach satisfying our requirements. We were successful in building a scalable cluster, showing increase in performance when more nodes are added. However, building the cluster did pose several problems. The most notable ones required us to optimize database tables for cluster environment, namely: Truncate length of too long VARCHAR fields; Change table engine from InnoDB to NDB; Split complex indices, i.e. indices from multiple fields; Introduce new indices. Introducing these changes allowed us launching the database on a MySQL cluster. 9 Excellence in Software
10 4.2. Application layer This is the most difficult layer to scale if application is written without scalability in mind. This CMS application seemed to have a theoretical feasibility of horizontal scaling. It supported transactions, database operated at read committed isolation level and, generally, multiple instances could function in parallel, operating on the same data storage. At this point following caveats have been identified: - There were some concerns about valid transaction usage in application code. To address this concern we reviewed all the code, responsible for operation with the database, and fortunately enough, this proved our concerns wrong. - In-memory JVM caches which were used in application would have led to invalid instance states after data update happened on one of the instances. - Absence of session transfer functionality Caches scaling The application actively used caching techniques to speed up its performance. As a matter of fact, this was the most prominent issue identified throughout initial assessment, as these caches are completely unscalable. Caches are kept in-memory similarly to other structures in JVM s memory space. This implied that when scaling the application we will face the problem of cache synchronization, which in turn led to loss of instance state synchronization. Following chart demonstrates the problem: Figure 3 - Caches Scaling Cache was one of the most problematic areas of the project as the initial design of in-memory caches used by the solution did not allow horizontal scaling of application layer. In other words, we needed to refactor caching code to move from in-memory cache usage to embracing scalable solutions, such as memcached or Amazon ElastiCache. This has been done using Hazelcast. The cache functionality was implemented through separate isolated classes, making the refactoring quite easy, minimizing the risks and making the results easy to check. In the end both memcached and Amazon ElastiCache solutions turned out to be compatible and addressed our needs. 10 Excellence in Software
11 4.4. Session transfer Session transfer is the mechanism of moving sessions from on server to another in case of server failure. This allows addressing failures of a single server while a client is in the middle of a work session. Absence of such a mechanism leads to possible partial data or state information loss during server failures. The architecture analysis we undertook showed that the issue can be addressed utilizing built-in functionality of our application server Apache Tomcat. However, this brought additional complexity to the system and requires initiation of full code acceptance cycle, which was undesirable. Therefore, after assessing potential impact of such type of a failure (the application s architecture was mostly session-less), we came to the conclusion that we will not implement session transfer mechanism in this particular case Data storage The solution used file system storage for number of purposes: - storing cached html pages - storing downloadable site content Therefore scaling the application required the same content of file system storage to be available for all the application instances. So we had to implement a shared storage. One of the simplest and most reliable technologies to implement shared storage is the NFS protocol. We have introduced a separate NFS server that was mounted to all instances and acted as a single storage. Implementing such storage is usually associated with following issues: - Storage synchronization in case of replication - IO-bottle neck in case of shared storage - Scalability potential In our case performance of the NFS server turned out to be adequate and sufficient to the extent of tests performed by us. However, it is obvious that a single NFS-server is a bottleneck and a single point of failure. The simplest way to solve this problem is using cluster file systems, for example Gluster. This approach has been successfully implemented by us in a similar situation within another project, requiring NFS server scaling. 11 Excellence in Software
12 4.6. Web front-end To make active use of multi-instance horizontal scaling of this CMS system we needed a way to distribute incoming traffic across all instances. This could be achieved by setting up different kinds of load balancers. Our final choice was between Epam Cloud Load Balancer and Nginx The Load Balancing Service (LBS) of Epam Cloud is instrumental in delivering high-availability and scalability. The LBS handles each inbound request and decides which server is the best to process it. It also supports other enterprise-level requirements such as monitoring the web-farm state and providing support for sticky-session connections. Nginx is a modern, open-source, high-performance web server. It has advanced caching capabilities and can handle a considerable number of simultaneous client connections. This makes Nginx an excellent load balancer and reverse proxy for web services a single nginx server is able to distribute a large number of client connections to a number of upstream servers to handle the enduser requests. In practice both solutions could be used for our purpose. However, since advanced caching was crucial to our task, we have chosen Nginx as a load balancer for the system. 12 Excellence in Software
13 5. Results Having introduced the aforementioned changes, we moved on to comprehensive performance testing. This included running a considerable amount of tests supplying load on a single instance, then adding another instance and supplying the same load. The results showed significant reduction of response time as illustrated by charts below. Figure 4 - Mean Response Time Number of Instances Mean Response Time (ms) Excellence in Software 13
14 Figure 5 - Requests per Second Number of Instances Requests per second Excellence in Software
15 6. Appendices Appendix A Authors 1. Ivan Pesin, Lead Maintenance Engineer, EPAM Systems ivan_pesin@epam.com 2. Aleksey Hariton, Senior Software Maintenance Engineer, EPAM Systems aleksey_hariton@epam.com 3. Iegor Sopov, Technical Writer, EPAM Systems iegor_sopov@epam.com Appendix B References Excellence in Software 15
16 Table of Figures Figure 1 Bird s-eye Architecture Overview... 6 Figure 2 - The System Broken into Logical Layers... 7 Figure 3 - Caches Scaling Figure 4 - Mean Response Time Figure 5 - Requests per Second Excellence in Software 16
17 Global 41 University Drive Suite 202, Newtown (PA), 18940, USA Phone: Fax: EU Corvin Offices I. Futó st Budapest, H-1082, Hungary Phone: Fax: CIS 9th Radialnaya Street, Building 2 Moscow, , Russia Phone: Fax: EPAM Systems. All Rights Reserved.
Cloud Based Application Architectures using Smart Computing
Cloud Based Application Architectures using Smart Computing How to Use this Guide Joyent Smart Technology represents a sophisticated evolution in cloud computing infrastructure. Most cloud computing products
More informationIn Memory Accelerator for MongoDB
In Memory Accelerator for MongoDB Yakov Zhdanov, Director R&D GridGain Systems GridGain: In Memory Computing Leader 5 years in production 100s of customers & users Starts every 10 secs worldwide Over 15,000,000
More informationAdding scalability to legacy PHP web applications. Overview. Mario Valdez-Ramirez
Adding scalability to legacy PHP web applications Overview Mario Valdez-Ramirez The scalability problems of legacy applications Usually were not designed with scalability in mind. Usually have monolithic
More informationTable of Contents. Overview... 1 Introduction... 2 Common Architectures... 3. Technical Challenges with Magento... 6. ChinaNetCloud's Experience...
Table of Contents Overview... 1 Introduction... 2 Common Architectures... 3 Simple System... 3 Highly Available System... 4 Large Scale High-Performance System... 5 Technical Challenges with Magento...
More informationMakeMyTrip CUSTOMER SUCCESS STORY
MakeMyTrip CUSTOMER SUCCESS STORY MakeMyTrip is the leading travel site in India that is running two ClustrixDB clusters as multi-master in two regions. It removed single point of failure. MakeMyTrip frequently
More informationScalability of web applications. CSCI 470: Web Science Keith Vertanen
Scalability of web applications CSCI 470: Web Science Keith Vertanen Scalability questions Overview What's important in order to build scalable web sites? High availability vs. load balancing Approaches
More informationAppendix A Core Concepts in SQL Server High Availability and Replication
Appendix A Core Concepts in SQL Server High Availability and Replication Appendix Overview Core Concepts in High Availability Core Concepts in Replication 1 Lesson 1: Core Concepts in High Availability
More informationHigh Availability Solutions for the MariaDB and MySQL Database
High Availability Solutions for the MariaDB and MySQL Database 1 Introduction This paper introduces recommendations and some of the solutions used to create an availability or high availability environment
More informationGigaSpaces Real-Time Analytics for Big Data
GigaSpaces Real-Time Analytics for Big Data GigaSpaces makes it easy to build and deploy large-scale real-time analytics systems Rapidly increasing use of large-scale and location-aware social media and
More informationDatabase Scalability {Patterns} / Robert Treat
Database Scalability {Patterns} / Robert Treat robert treat omniti postgres oracle - mysql mssql - sqlite - nosql What are Database Scalability Patterns? Part Design Patterns Part Application Life-Cycle
More informationCUMULUX WHICH CLOUD PLATFORM IS RIGHT FOR YOU? COMPARING CLOUD PLATFORMS. Review Business and Technology Series www.cumulux.com
` CUMULUX WHICH CLOUD PLATFORM IS RIGHT FOR YOU? COMPARING CLOUD PLATFORMS Review Business and Technology Series www.cumulux.com Table of Contents Cloud Computing Model...2 Impact on IT Management and
More informationAmazon Web Services Primer. William Strickland COP 6938 Fall 2012 University of Central Florida
Amazon Web Services Primer William Strickland COP 6938 Fall 2012 University of Central Florida AWS Overview Amazon Web Services (AWS) is a collection of varying remote computing provided by Amazon.com.
More informationTier Architectures. Kathleen Durant CS 3200
Tier Architectures Kathleen Durant CS 3200 1 Supporting Architectures for DBMS Over the years there have been many different hardware configurations to support database systems Some are outdated others
More informationCloud Computing: Meet the Players. Performance Analysis of Cloud Providers
BASEL UNIVERSITY COMPUTER SCIENCE DEPARTMENT Cloud Computing: Meet the Players. Performance Analysis of Cloud Providers Distributed Information Systems (CS341/HS2010) Report based on D.Kassman, T.Kraska,
More informationBASICS OF SCALING: LOAD BALANCERS
BASICS OF SCALING: LOAD BALANCERS Lately, I ve been doing a lot of work on systems that require a high degree of scalability to handle large traffic spikes. This has led to a lot of questions from friends
More informationHigh Availability Using MySQL in the Cloud:
High Availability Using MySQL in the Cloud: Today, Tomorrow and Keys to Success Jason Stamper, Analyst, 451 Research Michael Coburn, Senior Architect, Percona June 10, 2015 Scaling MySQL: no longer a nice-
More informationTushar Joshi Turtle Networks Ltd
MySQL Database for High Availability Web Applications Tushar Joshi Turtle Networks Ltd www.turtle.net Overview What is High Availability? Web/Network Architecture Applications MySQL Replication MySQL Clustering
More informationCloud Training Portal. Trainings. Process Guide. October 2012 ECPG-3. Version 1.2
Cloud Training Portal Trainings Process Guide October 2012 ECPG-3 Version 1.2 Content Content... 2 1. PREFACE... 3 1.1. About this Guide... 3 1.2. Trainers and Contacts... 3 1.3. Audience... 3 1.4. Typographic
More informationModule 14: Scalability and High Availability
Module 14: Scalability and High Availability Overview Key high availability features available in Oracle and SQL Server Key scalability features available in Oracle and SQL Server High Availability High
More informationReference Model for Cloud Applications CONSIDERATIONS FOR SW VENDORS BUILDING A SAAS SOLUTION
October 2013 Daitan White Paper Reference Model for Cloud Applications CONSIDERATIONS FOR SW VENDORS BUILDING A SAAS SOLUTION Highly Reliable Software Development Services http://www.daitangroup.com Cloud
More informationEnabling Database-as-a-Service (DBaaS) within Enterprises or Cloud Offerings
Solution Brief Enabling Database-as-a-Service (DBaaS) within Enterprises or Cloud Offerings Introduction Accelerating time to market, increasing IT agility to enable business strategies, and improving
More informationWeb Application Hosting in the AWS Cloud Best Practices
Web Application Hosting in the AWS Cloud Best Practices September 2012 Matt Tavis, Philip Fitzsimons Page 1 of 14 Abstract Highly available and scalable web hosting can be a complex and expensive proposition.
More informationPlanning the Migration of Enterprise Applications to the Cloud
Planning the Migration of Enterprise Applications to the Cloud A Guide to Your Migration Options: Private and Public Clouds, Application Evaluation Criteria, and Application Migration Best Practices Introduction
More informationArchitectures Haute-Dispo Joffrey MICHAÏE Consultant MySQL
Architectures Haute-Dispo Joffrey MICHAÏE Consultant MySQL 04.20111 High Availability with MySQL Higher Availability Shared nothing distributed cluster with MySQL Cluster Storage snapshots for disaster
More informationMyISAM Default Storage Engine before MySQL 5.5 Table level locking Small footprint on disk Read Only during backups GIS and FTS indexing Copyright 2014, Oracle and/or its affiliates. All rights reserved.
More informationApplication Performance Management for Enterprise Applications
Application Performance Management for Enterprise Applications White Paper from ManageEngine Web: Email: appmanager-support@manageengine.com Table of Contents 1. Introduction 2. Types of applications used
More informationMySQL. Leveraging. Features for Availability & Scalability ABSTRACT: By Srinivasa Krishna Mamillapalli
Leveraging MySQL Features for Availability & Scalability ABSTRACT: By Srinivasa Krishna Mamillapalli MySQL is a popular, open-source Relational Database Management System (RDBMS) designed to run on almost
More informationVariations in Performance and Scalability when Migrating n-tier Applications to Different Clouds
Variations in Performance and Scalability when Migrating n-tier Applications to Different Clouds Deepal Jayasinghe, Simon Malkowski, Qingyang Wang, Jack Li, Pengcheng Xiong, Calton Pu Outline Motivation
More informationBenchmarking Couchbase Server for Interactive Applications. By Alexey Diomin and Kirill Grigorchuk
Benchmarking Couchbase Server for Interactive Applications By Alexey Diomin and Kirill Grigorchuk Contents 1. Introduction... 3 2. A brief overview of Cassandra, MongoDB, and Couchbase... 3 3. Key criteria
More information( ) ( ) TECHNOLOGY BRIEF. XTNDConnect Server: Scalability SCALABILITY REFERS TO HOW WELL THE SYSTEM ADAPTS TO INCREASED DEMANDS AND A GREATER
TECHNOLOGY BRIEF XTNDConnect Server: Scalability An important consideration for IT professionals when choosing a server-based synchronization solution is that of scalability. Scalability refers to how
More informationOn- Prem MongoDB- as- a- Service Powered by the CumuLogic DBaaS Platform
On- Prem MongoDB- as- a- Service Powered by the CumuLogic DBaaS Platform Page 1 of 16 Table of Contents Table of Contents... 2 Introduction... 3 NoSQL Databases... 3 CumuLogic NoSQL Database Service...
More informationUnderstanding Neo4j Scalability
Understanding Neo4j Scalability David Montag January 2013 Understanding Neo4j Scalability Scalability means different things to different people. Common traits associated include: 1. Redundancy in the
More informationZADARA STORAGE. Managed, hybrid storage EXECUTIVE SUMMARY. Research Brief
ZADARA STORAGE Managed, hybrid storage Research Brief EXECUTIVE SUMMARY In 2013, Neuralytix first documented Zadara s rise to prominence in the then, fledgling integrated on-premise and in-cloud storage
More informationApache Hadoop. Alexandru Costan
1 Apache Hadoop Alexandru Costan Big Data Landscape No one-size-fits-all solution: SQL, NoSQL, MapReduce, No standard, except Hadoop 2 Outline What is Hadoop? Who uses it? Architecture HDFS MapReduce Open
More informationscalability OneBridge
scalability OneBridge Mobile Groupware technical brief An important consideration for IT professionals when choosing a server-based synchronization solution is that of scalability. Scalability refers to
More informationAdding Indirection Enhances Functionality
Adding Indirection Enhances Functionality The Story Of A Proxy Mark Riddoch & Massimiliano Pinto Introductions Mark Riddoch Staff Engineer, VMware Formally Chief Architect, MariaDB Corporation Massimiliano
More informationDiablo and VMware TM powering SQL Server TM in Virtual SAN TM. A Diablo Technologies Whitepaper. May 2015
A Diablo Technologies Whitepaper Diablo and VMware TM powering SQL Server TM in Virtual SAN TM May 2015 Ricky Trigalo, Director for Virtualization Solutions Architecture, Diablo Technologies Daniel Beveridge,
More informationHigh Availability with Windows Server 2012 Release Candidate
High Availability with Windows Server 2012 Release Candidate Windows Server 2012 Release Candidate (RC) delivers innovative new capabilities that enable you to build dynamic storage and availability solutions
More informationTechniques for Scaling Components of Web Application
, March 12-14, 2014, Hong Kong Techniques for Scaling Components of Web Application Ademola Adenubi, Olanrewaju Lewis, Bolanle Abimbola Abstract Every organisation is exploring the enormous benefits of
More informationDISTRIBUTED SYSTEMS [COMP9243] Lecture 9a: Cloud Computing WHAT IS CLOUD COMPUTING? 2
DISTRIBUTED SYSTEMS [COMP9243] Lecture 9a: Cloud Computing Slide 1 Slide 3 A style of computing in which dynamically scalable and often virtualized resources are provided as a service over the Internet.
More informationCloud Computing. Adam Barker
Cloud Computing Adam Barker 1 Overview Introduction to Cloud computing Enabling technologies Different types of cloud: IaaS, PaaS and SaaS Cloud terminology Interacting with a cloud: management consoles
More informationHybris E-Commerce. Operations. A White Paper by ChinaNetCloud
Hybris E-Commerce Operations A White Paper by ChinaNetCloud Table of Contents Overview... 1 Introduction... 2 Common Architectures... 3 Simple System... 3 Medium-sized Highly-Available System... 4 Large
More informationChapter 1 - Web Server Management and Cluster Topology
Objectives At the end of this chapter, participants will be able to understand: Web server management options provided by Network Deployment Clustered Application Servers Cluster creation and management
More informationSCALABLE DATA SERVICES
1 SCALABLE DATA SERVICES 2110414 Large Scale Computing Systems Natawut Nupairoj, Ph.D. Outline 2 Overview MySQL Database Clustering GlusterFS Memcached 3 Overview Problems of Data Services 4 Data retrieval
More informationServing 4 million page requests an hour with Magento Enterprise
1 Serving 4 million page requests an hour with Magento Enterprise Introduction In order to better understand Magento Enterprise s capacity to serve the needs of some of our larger clients, Session Digital
More informationHigh Availability Solutions for MySQL. Lenz Grimmer <lenz@grimmer.com> 2008-08-29 DrupalCon 2008, Szeged, Hungary
High Availability Solutions for MySQL Lenz Grimmer 2008-08-29 DrupalCon 2008, Szeged, Hungary Agenda High Availability in General MySQL Replication MySQL Cluster DRBD Links/Tools Why
More informationReliable Data Tier Architecture for Job Portal using AWS
Reliable Data Tier Architecture for Job Portal using AWS Manoj Prakash Thalagatti 1, Chaitra B 2, Mohammed Asrar Naveed 3 1,3 M. Tech Student, Dept. of ISE, Acharya Institute of Technology, Bengaluru,
More informationEXECUTIVE SUMMARY CONTENTS. 1. Summary 2. Objectives 3. Methodology and Approach 4. Results 5. Next Steps 6. Glossary 7. Appendix. 1.
CONTENTS 1. Summary 2. Objectives 3. Methodology and Approach 4. Results 5. Next Steps 6. Glossary 7. Appendix EXECUTIVE SUMMARY Tenzing Managed IT services has recently partnered with Amazon Web Services
More informationbigdata Managing Scale in Ontological Systems
Managing Scale in Ontological Systems 1 This presentation offers a brief look scale in ontological (semantic) systems, tradeoffs in expressivity and data scale, and both information and systems architectural
More informationAlfresco Enterprise on AWS: Reference Architecture
Alfresco Enterprise on AWS: Reference Architecture October 2013 (Please consult http://aws.amazon.com/whitepapers/ for the latest version of this paper) Page 1 of 13 Abstract Amazon Web Services (AWS)
More informationWHITEPAPER. Network-Attached Storage in the Public Cloud. Introduction. Red Hat Storage for Amazon Web Services
WHITEPAPER Network-Attached Storage in the Public Cloud Red Hat Storage for Amazon Web Services Introduction Cloud computing represents a major transformation in the way enterprises deliver a wide array
More informationMonitoring Nginx Server
Monitoring Nginx Server eg Enterprise v6 Restricted Rights Legend The information contained in this document is confidential and subject to change without notice. No part of this document may be reproduced
More informationMySQL 5.0 vs. Microsoft SQL Server 2005
White Paper Abstract This paper describes the differences between MySQL and Microsoft SQL Server 2000. Revised by Butch Villante, MCSE Page 1 of 6 Database engines are a crucial fixture for businesses
More informationAccelerating Web-Based SQL Server Applications with SafePeak Plug and Play Dynamic Database Caching
Accelerating Web-Based SQL Server Applications with SafePeak Plug and Play Dynamic Database Caching A SafePeak Whitepaper February 2014 www.safepeak.com Copyright. SafePeak Technologies 2014 Contents Objective...
More informationGeoCloud Project Report USGS/EROS Spatial Data Warehouse Project
GeoCloud Project Report USGS/EROS Spatial Data Warehouse Project Description of Application The Spatial Data Warehouse project at the USGS/EROS distributes services and data in support of The National
More informationMySQL and Virtualization Guide
MySQL and Virtualization Guide Abstract This is the MySQL and Virtualization extract from the MySQL Reference Manual. For legal information, see the Legal Notices. For help with using MySQL, please visit
More informationLiferay Performance Tuning
Liferay Performance Tuning Tips, tricks, and best practices Michael C. Han Liferay, INC A Survey Why? Considering using Liferay, curious about performance. Currently implementing and thinking ahead. Running
More informationAmazon Web Services. 18.11.2015 Yu Xiao
Amazon Web Services 18.11.2015 Yu Xiao Agenda Introduction to Amazon Web Services(AWS) 7 Steps to Select the Right Architecture for Your Web Applications Private, Public or Hybrid Cloud? AWS Case Study
More informationHigh Availability Using Raima Database Manager Server
BUSINESS WHITE PAPER High Availability Using Raima Database Manager Server A Raima Inc. Business Whitepaper Published: January, 2008 Author: Paul Johnson Director of Marketing Copyright: Raima Inc. Abstract
More informationNASCIO 2013 State IT Recognition Award Nomination. California Election Results Website. Open Government Initiatives
1 ONLINE VOTER REG. CARD ~ Office 2007 NASCIO 2013 State IT Recognition Award Nomination Title: California Election Results Website Category: Open Government Initiatives Contact: Chris Maio Information
More informationScaleArc idb Solution for SQL Server Deployments
ScaleArc idb Solution for SQL Server Deployments Objective This technology white paper describes the ScaleArc idb solution and outlines the benefits of scaling, load balancing, caching, SQL instrumentation
More informationIntroduction 1 Performance on Hosted Server 1. Benchmarks 2. System Requirements 7 Load Balancing 7
Introduction 1 Performance on Hosted Server 1 Figure 1: Real World Performance 1 Benchmarks 2 System configuration used for benchmarks 2 Figure 2a: New tickets per minute on E5440 processors 3 Figure 2b:
More informationImproving the Microsoft enterprise. network for public cloud connectivity
Improving the Microsoft enterprise cloud network for public cloud connectivity Page 1 Improving network performance between Microsoft and the public Situation As Microsoft IT located more of its line-ofbusiness
More informationTECHNOLOGY WHITE PAPER Jun 2012
TECHNOLOGY WHITE PAPER Jun 2012 Technology Stack C# Windows Server 2008 PHP Amazon Web Services (AWS) Route 53 Elastic Load Balancing (ELB) Elastic Compute Cloud (EC2) Amazon RDS Amazon S3 Elasticache
More informationZingMe Practice For Building Scalable PHP Website. By Chau Nguyen Nhat Thanh ZingMe Technical Manager Web Technical - VNG
ZingMe Practice For Building Scalable PHP Website By Chau Nguyen Nhat Thanh ZingMe Technical Manager Web Technical - VNG Agenda About ZingMe Scaling PHP application Scalability definition Scaling up vs
More informationDrupal in the Cloud. by Azhan Founder/Director S & A Solutions
by Azhan Founder/Director S & A Solutions > Drupal and S & A Solutions S & A Solutions who? doing it with Drupal since 2007 Over 70 projects in 5 years More than 20 clients 99% Drupal projects We love
More informationAchieving Zero Downtime and Accelerating Performance for WordPress
Application Note Achieving Zero Downtime and Accelerating Performance for WordPress Executive Summary WordPress is the world s most popular open source website content management system (CMS). As usage
More informationLiferay Portal s Document Library: Architectural Overview, Performance and Scalability
Liferay Portal s Document Library: Architectural Overview, Performance and Scalability Table of Contents EXECUTIVE SUMMARY... 1 HIGH LEVEL ARCHITECTURE... 2 User Interface Layer... 2 Service Layer....
More informationThe deployment of OHMS TM. in private cloud
Healthcare activities from anywhere anytime The deployment of OHMS TM in private cloud 1.0 Overview:.OHMS TM is software as a service (SaaS) platform that enables the multiple users to login from anywhere
More informationScaling Database Performance in Azure
Scaling Database Performance in Azure Results of Microsoft-funded Testing Q1 2015 2015 2014 ScaleArc. All Rights Reserved. 1 Test Goals and Background Info Test Goals and Setup Test goals Microsoft commissioned
More informationORACLE COHERENCE 12CR2
ORACLE COHERENCE 12CR2 KEY FEATURES AND BENEFITS ORACLE COHERENCE IS THE #1 IN-MEMORY DATA GRID. KEY FEATURES Fault-tolerant in-memory distributed data caching and processing Persistence for fast recovery
More informationAPPLICATION NOTE. Elastic Scalability. for HetNet Deployment, Management & Optimization
APPLICATION NOTE Elastic Scalability for HetNet Deployment, Management & Optimization Introduction Most industry reports indicate that the HetNet market is poised for explosive growth in the coming years.
More informationThe Mail & Guardian Online relies on Severalnines to control database sprawl and automate database operations.
The Mail & Guardian Online relies on Severalnines to control database sprawl and automate database operations. Customer Case Study: Mail & Guardian Online 1 The Mail and Guardian Online The Mail & Guardian
More informationCopyright www.agileload.com 1
Copyright www.agileload.com 1 INTRODUCTION Performance testing is a complex activity where dozens of factors contribute to its success and effective usage of all those factors is necessary to get the accurate
More informationOracle BI Publisher Enterprise Cluster Deployment. An Oracle White Paper August 2007
Oracle BI Publisher Enterprise Cluster Deployment An Oracle White Paper August 2007 Oracle BI Publisher Enterprise INTRODUCTION This paper covers Oracle BI Publisher cluster and high availability deployment.
More informationScaleArc for SQL Server
Solution Brief ScaleArc for SQL Server Overview Organizations around the world depend on SQL Server for their revenuegenerating, customer-facing applications, running their most business-critical operations
More informationMobile Performance Testing Approaches and Challenges
NOUS INFOSYSTEMS LEVERAGING INTELLECT Mobile Performance Testing Approaches and Challenges ABSTRACT Mobile devices are playing a key role in daily business functions as mobile devices are adopted by most
More informationWeb Application Hosting in the AWS Cloud Best Practices
Web Application Hosting in the AWS Cloud Best Practices May 2010 Matt Tavis Page 1 of 12 Abstract Highly-available and scalable web hosting can be a complex and expensive proposition. Traditional scalable
More informationHigh Availability Storage
High Availability Storage High Availability Extensions Goldwyn Rodrigues High Availability Storage Engineer SUSE High Availability Extensions Highly available services for mission critical systems Integrated
More informationNot Relational Models For The Management of Large Amount of Astronomical Data. Bruno Martino (IASI/CNR), Memmo Federici (IAPS/INAF)
Not Relational Models For The Management of Large Amount of Astronomical Data Bruno Martino (IASI/CNR), Memmo Federici (IAPS/INAF) What is a DBMS A Data Base Management System is a software infrastructure
More informationGLOBAL DIGITAL ENTERTAINMENT CONTENT AND SERVICES PROVIDER JESTA DIGITAL MIGRATES TO THE ULTRAESB
GLOBAL DIGITAL ENTERTAINMENT CONTENT AND SERVICES PROVIDER JESTA DIGITAL MIGRATES TO THE ULTRAESB quick facts Customer Industry Challenge Solution Benefits Jesta Digital Mobile Meet current and future
More informationZadara Storage Cloud A whitepaper. @ZadaraStorage
Zadara Storage Cloud A whitepaper @ZadaraStorage Zadara delivers two solutions to its customers: On- premises storage arrays Storage as a service from 31 locations globally (and counting) Some Zadara customers
More informationCommon Server Setups For Your Web Application - Part II
Common Server Setups For Your Web Application - Part II Introduction When deciding which server architecture to use for your environment, there are many factors to consider, such as performance, scalability,
More informationWeb Application Deployment in the Cloud Using Amazon Web Services From Infancy to Maturity
P3 InfoTech Solutions Pvt. Ltd http://www.p3infotech.in July 2013 Created by P3 InfoTech Solutions Pvt. Ltd., http://p3infotech.in 1 Web Application Deployment in the Cloud Using Amazon Web Services From
More informationMigration and Building of Data Centers in IBM SoftLayer with the RackWare Management Module
Migration and Building of Data Centers in IBM SoftLayer with the RackWare Management Module June, 2015 WHITE PAPER Contents Advantages of IBM SoftLayer and RackWare Together... 4 Relationship between
More informationChapter 2 TOPOLOGY SELECTION. SYS-ED/ Computer Education Techniques, Inc.
Chapter 2 TOPOLOGY SELECTION SYS-ED/ Computer Education Techniques, Inc. Objectives You will learn: Topology selection criteria. Perform a comparison of topology selection criteria. WebSphere component
More informationCloud computing - Architecting in the cloud
Cloud computing - Architecting in the cloud anna.ruokonen@tut.fi 1 Outline Cloud computing What is? Levels of cloud computing: IaaS, PaaS, SaaS Moving to the cloud? Architecting in the cloud Best practices
More informationCloud Service Model. Selecting a cloud service model. Different cloud service models within the enterprise
Cloud Service Model Selecting a cloud service model Different cloud service models within the enterprise Single cloud provider AWS for IaaS Azure for PaaS Force fit all solutions into the cloud service
More informationDivy Agrawal and Amr El Abbadi Department of Computer Science University of California at Santa Barbara
Divy Agrawal and Amr El Abbadi Department of Computer Science University of California at Santa Barbara Sudipto Das (Microsoft summer intern) Shyam Antony (Microsoft now) Aaron Elmore (Amazon summer intern)
More informationThe Sierra Clustered Database Engine, the technology at the heart of
A New Approach: Clustrix Sierra Database Engine The Sierra Clustered Database Engine, the technology at the heart of the Clustrix solution, is a shared-nothing environment that includes the Sierra Parallel
More informationWikimedia architecture. Mark Bergsma <mark@wikimedia.org> Wikimedia Foundation Inc.
Mark Bergsma Wikimedia Foundation Inc. Overview Intro Global architecture Content Delivery Network (CDN) Application servers Persistent storage Focus on architecture, not so much on
More informationMonitoring Databases on VMware
Monitoring Databases on VMware Ensure Optimum Performance with the Correct Metrics By Dean Richards, Manager, Sales Engineering Confio Software 4772 Walnut Street, Suite 100 Boulder, CO 80301 www.confio.com
More informationBuilding Scalable Web Sites: Tidbits from the sites that made it work. Gabe Rudy
: Tidbits from the sites that made it work Gabe Rudy What Is This About Scalable is hot Web startups tend to die or grow... really big Youtube Founded 02/2005. Acquired by Google 11/2006 03/2006 30 million
More informationAzure Scalability Prescriptive Architecture using the Enzo Multitenant Framework
Azure Scalability Prescriptive Architecture using the Enzo Multitenant Framework Many corporations and Independent Software Vendors considering cloud computing adoption face a similar challenge: how should
More informationTABLE OF CONTENTS THE SHAREPOINT MVP GUIDE TO ACHIEVING HIGH AVAILABILITY FOR SHAREPOINT DATA. Introduction. Examining Third-Party Replication Models
1 THE SHAREPOINT MVP GUIDE TO ACHIEVING HIGH AVAILABILITY TABLE OF CONTENTS 3 Introduction 14 Examining Third-Party Replication Models 4 Understanding Sharepoint High Availability Challenges With Sharepoint
More informationI N T E R S Y S T E M S W H I T E P A P E R F O R F I N A N C I A L SERVICES EXECUTIVES. Deploying an elastic Data Fabric with caché
I N T E R S Y S T E M S W H I T E P A P E R F O R F I N A N C I A L SERVICES EXECUTIVES Deploying an elastic Data Fabric with caché Deploying an elastic Data Fabric with caché Executive Summary For twenty
More informationTop 10 Reasons why MySQL Experts Switch to SchoonerSQL - Solving the common problems users face with MySQL
SCHOONER WHITE PAPER Top 10 Reasons why MySQL Experts Switch to SchoonerSQL - Solving the common problems users face with MySQL About Schooner Information Technology Schooner Information Technology provides
More informationMongoDB and Couchbase
Benchmarking MongoDB and Couchbase No-SQL Databases Alex Voss Chris Choi University of St Andrews TOP 2 Questions Should a social scientist buy MORE or UPGRADE computers? Which DATABASE(s)? Document Oriented
More informationBuilding Success on Acquia Cloud:
Building Success on Acquia Cloud: 10 Layers of PaaS TECHNICAL Guide Table of Contents Executive Summary.... 3 Introducing the 10 Layers of PaaS... 4 The Foundation: Five Layers of PaaS Infrastructure...
More informationScaling in the Cloud with AWS. By: Eli White (CTO & Co-Founder @ mojolive) eliw.com - @eliw - mojolive.com
Scaling in the Cloud with AWS By: Eli White (CTO & Co-Founder @ mojolive) eliw.com - @eliw - mojolive.com Welcome! Why is this guy talking to us? Please ask questions! 2 What is Scaling anyway? Enabling
More information