Techniques for Scaling Components of Web Application
|
|
|
- Earl Miller
- 10 years ago
- Views:
Transcription
1 , 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 the Internet to launch their respective web application as a means of integrating into the global village. For large organisation, the web application is expected to respond to increasing number of concurrent requests from clients. This extends a greater workload on the web server that hosts the web application and could stretch the machine beyond the designed capacity. Overloading the web server could break down the machine and compromise the business objective of the organisation. Thus, there is a need to scale the development of the web application in such a way that it can adapt to expansion and sustain high workload. This research integrates different techniques (tiered architecture, load balancing, caching and database replication) to create a model of a scalable web application that can be easily adapted to respond to increasing workload. Index Terms scalability, web, application, techniques, component I I. INTRODUCTION NTERESTINGLY, the growth in the capability of computer terminal has challenged the rapid evolution of browser based application [1]. Thus, most organisations are exploring the opportunity of the internet to host their website as a platform to promote their products and services. Information about their product and services is arranged into web pages and delivered from the web server to the client browser over the HTTP (HyperText Transfer Protocol). However, recent developments in sustaining user s experience on the internet, coupled with the need to define means of seamlessly expanding the capacity of the website to process higher volume of client requests, have necessitated the development of web application that display dynamic information stored in a backend database. For organisation that adapts their website has a web application, content and application are provided in such a way that information are dynamically and automatically delivered to a site visitor in the most convenient and applicable manner [2] For instance, a web site for selling products could have a Manuscript received in September 25, 2013; revised January 25, This work is presented by the following authors: Ademola Adenubi is a lecturer in the Computer Science Education Department, Tai Solarin University of Education, Ijagun, P.M.B 2118, Ijebu Ode, Ogun State, Nigeria ( [email protected]). Olanrewaju Lewis is a lecturer in the Physics Department, Tai Solarin University of Education, Ijagun, P.M.B 2118, Ijebu Ode, Ogun State, Nigeria ( olanrewaju.lewis@googl .com). Bolanle Abimbola is a lecturer in the Computer Science Education Department, Tai Solarin University of Education, Ijagun, P.M.B 2118, Ijebu Ode, Ogun State, Nigeria ( [email protected]). web application that stores its products and their prices in the database. A potential buyer can select different products from the product page and move to a payment page where the prices of all the products selected are listed with the total amount due. The same payment page will have different information for different buyers based on the quantity and price of products they selected. Thus, web applications do not have pages structured like web sites; adding more data to the database increases its page effective count without necessarily adding more code or mark-up to it [3] More so, web applications are pushing attention away from the client browser to the server. The advent of AJAX (Asynchronous JavaScript and XML) has changed the interaction model of web applications [3]. With Ajax, web pages can be modified by requesting information from the server and using the HTTP POST to submit the changes, returning another page either confirming the changes or displaying the modified data. The technique is that the server extracts the scripts and processes it against the database or any other applications it calls. The resulting data from the query is then returned to the client. In this case the workload is on the server. But for a single server, a high volume of requests will result in network congestion and application failure [4] For a web application that is expected to service huge number of requests from numerous site visitors, managing the greater workload that is generated as a result of the rate of requests and concurrent requests by clients on the server requires that the key components (software and hardware) of the web application is designed to scale so that it can withstand the new requirements of greater workload. Scalability is referred to as a component s ability to adapt readily to a greater or lesser intensity of use, volume, or demand while still meeting business objectives [5]. Thus, organisation with initial simple web application can seamlessly integrate scalability techniques to grow its web application to the complexity and functionality of a large web application. There are various techniques for scaling the component parts of a web application. A holistic approach to creating a scalable web application is to integrate the key scalability techniques together for scaling the workload on the web application. These techniques will be integrated together to create a model of a scalable web application. II. WEB APPLICATION Unlike a web site that has static content on web pages, a web application contains the data but with a separate delivery mechanism [3]. In this case, content on the web
2 , March 12-14, 2014, Hong Kong page is separated from the mark-up; it is dynamically generated and delivered on the page based on user interaction and request. Content on the web page is stored in the backend database and can be queried to deliver separate or different content on the same page. As with a static web site, data is transported over the HTTP from the web server and presented on the client browser. However, static content can as well be generated by web application with content management system (CMS) [2]. One of the key elements of a web application is its architecture, which defines the interaction between the major components of the web application and their respective functions [6]. The architecture makes web application to have series of application layers or tiers with each tier responsible for specific tasks of storing, processing and presenting data. III. COMPONENTS OF WEB APPLICATION Within the context of the development and deployment of a functional internet based application that delivers on the business objective of an organisation, a web application is seen as an enterprise solution that is hosted on a machine but accessible by other machines on the network through the HTTP requests. Thus, Software and Hardware components represent the holistic view of efforts at creating a web application. The software component of a web application represents the content, data and functions, which delivers the client s HTTP requests through the POST or GET functions. It is possible to layer the architecture of the software component by separating the data from the functions so as to make it easy to scale. Meanwhile, the Hardware components represent the hardware machine or computer cluster on which the software component is hosted. The clustering of the machines can as well be architected to scale. IV. MEASURES OF SCALABILITY The major objectives to scalability are to improve capacity of the components, enhance the efficiency of the components and to shift or distribute load on the components among several machines [5]. In achieving the key objectives, there are two measures to scale the major components of the web application: Horizontal and Vertical Scalability. The key difference is that horizontal scalability is about replacement while vertical scalability is about upgrading of components. V. SCALING THE SOFTWARE COMPONENT Scaling the software component of the web application is done by dividing the web application into logical layers: Presentation, Logic or Application and Database Layers. The presentation layer is concerned with page generation; the logic layer represents the core for processing all the business rules of the web application; the database layer stores the data used by the web application and does not receive direct connection from the presentation layer but from the application layer. Dividing the web application into logical layers, partitioning and replicating the database on cluster machines are techniques of scaling the software component of the web application. A. Tiered Architecture A well architected web application separates its application functionality into manageable block of tasks that utilise the hardware resources for easy management, reusability and scalability [5]. In this form, the web application has a series of application layers or tiers with each tier responsible for specific tasks. Possible architecture could be a single tier, two tier or three tier (also referred to as multi-tier) web application architectures. However, it is important to note that the tier represents logical divisions of the web application services and not necessarily a physical division of the software and hardware components [7]. In a single tier web application, also referred to as a flat or combined architecture, all the layers of the applications are deployed on a single machine. In which case, a single machine hosts the web application. A single server or multiple servers can be deployed, in which case the architecture becomes a single tier, single server or single tier, multiple server architecture respectively [7]. In two-tier web application architecture, there is a logical separation of the business logic from the presentation that is running on the client while the database is running separately on the server. However, the server can also store and execute the business logic with the aid of stored procedures and SQL [6]. The three-tier architecture clearly separates the three layers of the web application with each layer defined by the specific function it performs [7]. Thus, each tier can be modified without resulting in the overall change of the web application. There is also the N-tier architecture (N = 4, 5 ); a form of the three- tier architecture that further subdivides the three layers [6]. Table 1: Comparing the three different tiered architectures Ease of Administration of Hardware Ease of Administration of Software Cost of Deployment and Maintenance Connection to Remote Services Concurrent Database Connections Single- Two- Three- Tiered Tiered Tiered Scalability Modularity of Application
3 , March 12-14, 2014, Hong Kong For effective approach to scalability of large web application, the three-tiered architecture is appropriate, though requiring a higher degree of expertise and cost. B. Replication and Partitioning of Database For a high volume web application, a single database server is insufficient to handle greater workload. Using multiple machines to form a cluster of database servers with good redundancy to scale the workload on the database is appropriate. The database server can either be scaled horizontally where several other database servers are added or scaled vertically where the database server is replaced with a higher configuration server each time there is the need to scale. With this scalable architecture at the database layer, the data can either be replicated or partitioned to scale on the multiple machines providing several points from which data can be read. With the replication approach, data is replicated on multiple machines within the cluster to expand the read capability of the database and thereby providing multiple points for reading data. Within the cluster are the master and the slave servers and replication takes place between them; the master records the write queries in the binary log and the slaves read the queries from the binary log. However, there are various modes of replication of the data between the master and the slaves and this includes Master-Slave, Tree and Master-Master Replications [3]. Another mode of replication is the dynamic multi-versioning approach which scales the database tier using distributed concurrency control mechanism [8]. By this approach, the database cluster is connected to a scheduler that distributes incoming requests. The scheduler is preconfigured to understand the transaction types, read or write, used by different applications and the tables in the database that they access and thus send the queries to the respective master node. The master distributes the read activities across the slaves and updates the replica on all slaves. In this way, concurrent transactions can operate on different replica. The partitioning approach to scaling the database involves the division of the database into manageable partitions; each partition (containing a subset of tables from the database) may be spread over multiple machines. Each machine can then handle separate transaction to increase the read and write capacity of the database through a modified database dispatching layer that understands the right machine to execute a database transaction. Thus, a new partition can be added to increase the read and write capacities of the database making it possible to scale the database. Database partitioning is in two ways: vertical partitioning also known as clustering and horizontal partitioning also known as federation [3]. Clustering or horizontal partitioning of the database requires that the database is partitioned into multiple chunks or clusters of tables; a database dispatching layer is modified to understand the machine with the cluster containing the tables being required by a query. Meanwhile, a vertical partitioning or federation scales the database by splitting the data in the tables into chunks that reside on multiple machines called shards; a conceptual federation logic layer is added to accept the requests from the application layer and determines the appropriate shard to query data from. Vertical partitioning thus involves the creation of tables with fewer columns, a process common in Normalisation, and having the tables stored on multiple machines Table 2: Comparing database partition and database replication Replication Partitioning Extent of Scalability - write Extent of Scalability - read Complexity of Data Integrity of Data Time to Complete a Table 3: Comparing Vertical and Horizontal database partitioning Vertical Partitioning Horizontal Partitioning Extent of Scalability Ease of Administration Complexity of Data Integrity of Data The replication approach is subjected to redundancy and put greater workload on the master as the web application grows bigger. On the other hand, partitioning approach attempts to distribute loads to all machines but with more administrative efforts. For a MySQL database system, the choice of a replication approach is good for a web application with limited non linear read capacity, while a choice of partitioning approach is good for an architectural linear scaling [3]. VI. SCALING THE HARDWARE COMPONENT There are two options available for managing the hardware platform of a large web application. One alternative is to upgrade the web server from single processor to multiple processors and the other alternative is
4 , March 12-14, 2014, Hong Kong to add more servers. These two alternatives are described as vertical and horizontal scalability respectively [3]. Other techniques to scale the hardware include the use of load balancer to distribute workload among multiple machines and caching for storing frequently accessed data to reduce read requests A. Horizontal and Vertical Scaling of Web Server Scaling the web server from the hardware point of view is about expanding the capacity of the web server so that it can be efficient and reliable to support the growth of the web application and its greater workload as a result of high number of concurrent requests. To achieve this, two options are feasible which is either to scale vertically or horizontally. While a vertical scaling of the web server is about replacing the hardware with more powerful configuration, horizontal scaling is about adding more hardware of similar configuration, each time the web application is to grow in response to greater workload Table 4: Comparing horizontal and vertical scaling of Web Server Vertical Scaling Horizontal Scaling Ease of Administration Cost of Implementation Power Consumption Physical Space Required For Deployment Support for er Workload Redundancy Limitation to Scalability The point at which horizontal scaling is consuming too much space, power and high cost as a result of redundancy is determined and vertical scaling is introduced. That is, when the cost of adding new hardware is becoming expensive, a replacement of the hardware with more powerful configuration is introduced to ensure that the web application is able to sustain greater workload at a relatively minimal cost, moderate physical space and easier administration. B. Load Balancing This is a technology of achieving the distribution of loads across multiple machines in a machine cluster. Various methods and strategies are used to achieve effective load balancing. However, load balancing technology is usually provided by a dedicated software or hardware tool. Achieving load balancing with hardware tool is by placing a dedicated machine before the multiple servers in a cluster to create a layer before a tier in the web application architecture. The machine is configured to manage traffic and distribute incoming requests among the machines in the cluster. The load balancer machine is able to effectively detect new or failed server by periodically checking all the connected real servers to determine their status [3]. For a software based load balancer, the load balancing software acts as a frontend server distributing requests among the backend servers that are connected to its ports. With this technology, server software is installed on a regular machine to offer load balancing solutions that runs from a range of simple to super-complex operating systems as against the use of a dedicated load balancing hardware machine. Quite a couple of common choices of software solutions for load balancing are available and they include Perlbal, Pound and Linux Virtual Server. An alternative method to a software or hardware load balancing methods is the round robin DNS (Domain Name Service). This method assigns a multiple IP (Internet Protocol) addresses to a single domain. When a client makes a DNS request by using the URL address of the web application, the DNS server resolves the domain name and responds with the list of server IP for the web application domain, and a connecting client is free to decide on which server to connect. The choice of this method is based on the extent of security and control over the DNS that is required for the implementation of the load balancing. Table 5: Comparing Hardware and Software load balancers Ease Administration of Hardware Load Balancer Software Load Balancer Cost of Deployment Effectiveness Reliability and With the three-tier web application architecture, a load balancer can be added in front of a required tier to handle the number of concurrent requests going to the multiple servers. The choice is either in the use of a software load balancing or a dedicated hardware load balancing. C. Caching Caching is a way of reducing read requests and a performance related issue but has direct bearing on scalability because it expands the capacity of a web application component [3]. It suffices to establish that a scalable caching technology can be implemented at every level of the web application, especially at the layers close to the final output from read activity, perhaps, at the web server and database layers of a web application to improve their read capability. Various caching technologies are used to scale a component of the web application for improved performance. The adaptive page caching, patented by IBM,
5 , March 12-14, 2014, Hong Kong supports the caching of a complete web application page [2]. In this technology, the web application dynamically generates cacheable web page after the page was initially accessed. A portlet caching technology is used to put the static content of the web application in a portlet cache after the initial page generation for a limited time (while the session has not expired) and ensure that only the dynamic content provided by interactive portlet is requested any other time the page is requested [2]. Like the adaptive page caching, this caching technology also reduces the markup or page generation time of portlets. The Memcached is by far the most popular and unrestricted (it is open source) caching technology. It is able to cache data and objects in memory; for that it is faster than most other caching technologies. Table 6: Comparing Adaptive Page, Portlet and Memcache Cache Speed of Response to Request Availability of Use due to Patent Issue Effectiveness in the ability to drop Cache Data at any Time Possibility of Caching all Page Types Adaptive Page Portlet Memcache Putting a cache at the presentation layer will enhance the processing time of the web server during page generation. Putting it at the application layer and the database layer will also improve the time to process the business logic and the database transaction respectively while also reducing overhead or workload on the machines. VII. STEPS IN SCALING WEB APPLICATION Though, there are challenges in design, implementation and management of high volume web applications with various methods of implementations [9]. But with a clear understanding of the architecture of the web application, it is possible to take an informed decision on the implementation strategy for applying the techniques to scale the web application. The following steps are suggested, by IBM Experts, as a model for building a scalable web site that is optimised for performance: 1) Understanding the application environment: this step requires an analysis of all the components in the existing infrastructure to determine their respective levels of significance and requirements for upgrade. The length of a submitted paper should be commensurate with the importance, or appropriate to the complexity, of the work. For example, an obvious extension of previously published work might not be appropriate for publication or might be adequately treated in just a few pages. 2) Categorizing the workload: this step requires an evaluation of the web application to determine all the transaction complexities it handles which include data, security and others 3) Determining the component that is most affected: this step requires that the most important characteristic of the web application should be mapped with each component to determine the best scaling characteristics that requires protection. 4) Selecting the scaling technique to apply for scaling the workload: this step requires that, based on the information gathered so far, the best scaling techniques is selected; a technique that does not compromise on any of the critical factors in achieving scalability. 5) Applying the technique: this step requires that the chosen technique(s) is/are applied in a test environment to evaluate the resulting performance and scalability impact of the changes in each component to the surrounding infrastructure other components. 6) Re-evaluating the process: this step involves an evaluation of the entire scaling process over and over again to eliminate avoidable bottleneck in order to scale to manageable status, while leaving those bottlenecks that could not be avoided. VIII. MODEL OF A SCALABLE WEB APPLICATION For a classic J2EE based web application that is implemented on three tier architecture, the web application is a combination of the logically separated presentation and business logic layers. The Servlet or JSP at the presentation layer accepts a browser HTTP request and returns HTML file if the request is for static web page but a request for dynamic content is sent to the business logic layer for processing through Java RMI (Java Remote Method Invocation). Another part of the Servlets or an EJB (Enterprise Java Bean) at the application or business logic layer performs the business logic and connects with a JDBC (Java Database Connection) to the MySQL database (it can be MS SQL or ORACLE) at the database layer to query and update the database. The database returns a table data to the Servlets at the presentation layer through the EJB at the business logic layer; the Servlets then render the processed request as HTML file to the browser. A diagrammatic description of the interactions in a three-tier web application architecture using Java is shown in figure 1.
6 , March 12-14, 2014, Hong Kong client Layer 4 HTTP Load balancer HTML Web Web Web server server server Static Static Static Pages Pages Pages Caching Caching Caching HTTP / HTML over TCP Layer 4 JAVA RMI Load Balancer Core Server Core Core Server Server JAVA JAVA EJB EJB JAVA Container Container EJB Container Conference on Advanced Information Networking and Application, Department of Information Management, Chang Jung University, [5] W. Chiu, Design for Scalability - an Update, [Online]. Available: pods/scalability.html. [Accessed ]. [6] A. Homer and e. al, Components and Web Application Architecture, [Online]. Available: [Accessed 14 November 2012]. Web Web Web server server server Static Static Static Pages Pages Pages Caching Caching Caching Figure 1: Scalable 3-Tiered Web Application Architecture IX. CONCLUSION JDBC Database Scaling a web application is indeed a means of managing workload and improving performance but it comes at a trade-off to the organisation. There is an increased cost of implementing scalable web application; more experts and machines are required and these come at a cost that might be beyond the reach of an average organisation. Related to cost is the administrative work that is involved in maintaining a big scalable web application. There is also a relationship between scalability and performance of the web application. Though a scalable web application is indeed a relatively high performing web application but the reverse is not always the case. Thus, scalability and performance are two separate issues. While efforts were made to review some of the major techniques and technologies for scaling the software and hardware components of web application, there are such other techniques like the Cascaded Style Sheet for scaling the User Interface Design and the Object Oriented Programming approach for developing the core application as modules to allow for code re-use and thus adapting the web application for scalability. [7] Anon., Cluster Architectures, [Online]. Available: [Accessed 14 November 2012]. [8] M. Kaloian and A. Cristiana, Scaling and Continuous Availability in Database Server Clusters through Multiversion Replication, University of Toronto, [Online]. Available: [Accessed 2 June 2013]. [9] W. Chiu, Design for Scalability - an Update, IBM, [Online]. Available: pods/scalability.html. [Accessed 2 June 2013]. REFERENCES [1] J. V. Gurp, A. Karhinen and J. Bosch, Mobile Service Oriented Architectures (MOSOA), Nokia Research Centre, Finland. [2] Liesche and Stefan, Develop high performance Web sites with both static and dynamic content using WebSphere Portal V5.1,, IBM WebSphere Developer Technical Journal, [Online]. Available: c. [Accessed ]. [3] C. Henderson, Building Scalable Websites, O Reilly Media Inc, [4] T.-S. Chen and K.-L. Chen, Balancing Workload based on Content Types for Scalable Web Server Clusters, in 18th International
Client/server is a network architecture that divides functions into client and server
Page 1 A. Title Client/Server Technology B. Introduction Client/server is a network architecture that divides functions into client and server subsystems, with standard communication methods to facilitate
Chapter 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
Oracle WebLogic Foundation of Oracle Fusion Middleware. Lawrence Manickam Toyork Systems Inc www.toyork.com http://ca.linkedin.
Oracle WebLogic Foundation of Oracle Fusion Middleware Lawrence Manickam Toyork Systems Inc www.toyork.com http://ca.linkedin.com/in/lawrence143 History of WebLogic WebLogic Inc started in 1995 was a company
Chapter 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
White Paper: 1) Architecture Objectives: The primary objective of this architecture is to meet the. 2) Architecture Explanation
White Paper: 1) Architecture Objectives: The primary objective of this architecture is to meet the following requirements (SLAs). Scalability and High Availability Modularity and Maintainability Extensibility
Holistic Performance Analysis of J2EE Applications
Holistic Performance Analysis of J2EE Applications By Madhu Tanikella In order to identify and resolve performance problems of enterprise Java Applications and reduce the time-to-market, performance analysis
Chapter 10: Scalability
Chapter 10: Scalability Contents Clustering, Load balancing, DNS round robin Introduction Enterprise web portal applications must provide scalability and high availability (HA) for web services in order
3-Tier Architecture. 3-Tier Architecture. Prepared By. Channu Kambalyal. Page 1 of 19
3-Tier Architecture Prepared By Channu Kambalyal Page 1 of 19 Table of Contents 1.0 Traditional Host Systems... 3 2.0 Distributed Systems... 4 3.0 Client/Server Model... 5 4.0 Distributed Client/Server
A framework for web-based product data management using J2EE
Int J Adv Manuf Technol (2004) 24: 847 852 DOI 10.1007/s00170-003-1697-8 ORIGINAL ARTICLE M.Y. Huang Y.J. Lin Hu Xu A framework for web-based product data management using J2EE Received: 8 October 2002
MEASURING WORKLOAD PERFORMANCE IS THE INFRASTRUCTURE A PROBLEM?
MEASURING WORKLOAD PERFORMANCE IS THE INFRASTRUCTURE A PROBLEM? Ashutosh Shinde Performance Architect [email protected] Validating if the workload generated by the load generating tools is applied
Lecture 3: Scaling by Load Balancing 1. Comments on reviews i. 2. Topic 1: Scalability a. QUESTION: What are problems? i. These papers look at
Lecture 3: Scaling by Load Balancing 1. Comments on reviews i. 2. Topic 1: Scalability a. QUESTION: What are problems? i. These papers look at distributing load b. QUESTION: What is the context? i. How
What Is the Java TM 2 Platform, Enterprise Edition?
Page 1 de 9 What Is the Java TM 2 Platform, Enterprise Edition? This document provides an introduction to the features and benefits of the Java 2 platform, Enterprise Edition. Overview Enterprises today
Configuration Management of Massively Scalable Systems
1 KKIO 2005 Configuration Management of Massively Scalable Systems Configuration Management of Massively Scalable Systems Marcin Jarząb, Krzysztof Zieliński, Jacek Kosiński SUN Center of Excelence Department
IT Architecture Review. ISACA Conference Fall 2003
IT Architecture Review ISACA Conference Fall 2003 Table of Contents Introduction Business Drivers Overview of Tiered Architecture IT Architecture Review Why review IT architecture How to conduct IT architecture
LinuxWorld Conference & Expo Server Farms and XML Web Services
LinuxWorld Conference & Expo Server Farms and XML Web Services Jorgen Thelin, CapeConnect Chief Architect PJ Murray, Product Manager Cape Clear Software Objectives What aspects must a developer be aware
SOA REFERENCE ARCHITECTURE: WEB TIER
SOA REFERENCE ARCHITECTURE: WEB TIER SOA Blueprint A structured blog by Yogish Pai Web Application Tier The primary requirement for this tier is that all the business systems and solutions be accessible
SiteCelerate white paper
SiteCelerate white paper Arahe Solutions SITECELERATE OVERVIEW As enterprises increases their investment in Web applications, Portal and websites and as usage of these applications increase, performance
Case Study - I. Industry: Social Networking Website Technology : J2EE AJAX, Spring, MySQL, Weblogic, Windows Server 2008.
Case Study - I Industry: Social Networking Website Technology : J2EE AJAX, Spring, MySQL, Weblogic, Windows Server 2008 Challenges The scalability of the database servers to execute batch processes under
Web Development. Owen Sacco. ICS2205/ICS2230 Web Intelligence
Web Development Owen Sacco ICS2205/ICS2230 Web Intelligence Brief Course Overview An introduction to Web development Server-side Scripting Web Servers PHP Client-side Scripting HTML & CSS JavaScript &
Module 12: Microsoft Windows 2000 Clustering. Contents Overview 1 Clustering Business Scenarios 2 Testing Tools 4 Lab Scenario 6 Review 8
Module 12: Microsoft Windows 2000 Clustering Contents Overview 1 Clustering Business Scenarios 2 Testing Tools 4 Lab Scenario 6 Review 8 Information in this document is subject to change without notice.
How to Build an E-Commerce Application using J2EE. Carol McDonald Code Camp Engineer
How to Build an E-Commerce Application using J2EE Carol McDonald Code Camp Engineer Code Camp Agenda J2EE & Blueprints Application Architecture and J2EE Blueprints E-Commerce Application Design Enterprise
zen Platform technical white paper
zen Platform technical white paper The zen Platform as Strategic Business Platform The increasing use of application servers as standard paradigm for the development of business critical applications meant
1. Comments on reviews a. Need to avoid just summarizing web page asks you for:
1. Comments on reviews a. Need to avoid just summarizing web page asks you for: i. A one or two sentence summary of the paper ii. A description of the problem they were trying to solve iii. A summary of
Architectural Overview
Architectural Overview Version 7 Part Number 817-2167-10 March 2003 A Sun ONE Application Server 7 deployment consists of a number of application server instances, an administrative server and, optionally,
SOFTWARE ARCHITECTURE FOR FIJI NATIONAL UNIVERSITY CAMPUS INFORMATION SYSTEMS
SOFTWARE ARCHITECTURE FOR FIJI NATIONAL UNIVERSITY CAMPUS INFORMATION SYSTEMS Bimal Aklesh Kumar Department of Computer Science and Information Systems Fiji National University Fiji Islands [email protected]
Distributed Database Design
Distributed Databases Distributed Database Design Distributed Database System MS MS Web Web data mm xml mm dvanced Database Systems, mod1-1, 2004 1 Advanced Database Systems, mod1-1, 2004 2 Advantages
Scalability 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
ABSTRACT INTRODUCTION SOFTWARE DEPLOYMENT MODEL. Paper 341-2009
Paper 341-2009 The Platform for SAS Business Analytics as a Centrally Managed Service Joe Zilka, SAS Institute, Inc., Copley, OH Greg Henderson, SAS Institute Inc., Cary, NC ABSTRACT Organizations that
Oracle WebLogic Server 11g: Administration Essentials
Oracle University Contact Us: 1.800.529.0165 Oracle WebLogic Server 11g: Administration Essentials Duration: 5 Days What you will learn This Oracle WebLogic Server 11g: Administration Essentials training
Dependency Free Distributed Database Caching for Web Applications and Web Services
Dependency Free Distributed Database Caching for Web Applications and Web Services Hemant Kumar Mehta School of Computer Science and IT, Devi Ahilya University Indore, India Priyesh Kanungo Patel College
2012 LABVANTAGE Solutions, Inc. All Rights Reserved.
LABVANTAGE Architecture 2012 LABVANTAGE Solutions, Inc. All Rights Reserved. DOCUMENT PURPOSE AND SCOPE This document provides an overview of the LABVANTAGE hardware and software architecture. It is written
Solutions for detect, diagnose and resolve performance problems in J2EE applications
IX Konferencja PLOUG Koœcielisko PaŸdziernik 2003 Solutions for detect, diagnose and resolve performance problems in J2EE applications Cristian Maties Quest Software Custom-developed J2EE applications
LARGE SCALE INTERNET SERVICES
1 LARGE SCALE INTERNET SERVICES 2110414 Large Scale Computing Systems Natawut Nupairoj, Ph.D. Outline 2 Overview Background Knowledge Architectural Case Studies Real-World Case Study 3 Overview Overview
A Comparison of Software Architectures for E-Business Applications
A Comparison of Software Architectures for E-Business Applications Emmanuel Cecchet, Anupam Chanda, Sameh Elnikety, Juli Marguerite and Willy Zwaenepoel Rice University Department of Computer Science Dynamic
C/S Basic Concepts. The Gartner Model. Gartner Group Model. GM: distributed presentation. GM: distributed logic. GM: remote presentation
C/S Basic Concepts The Gartner Model Contents: 2-tier Gartner Model Winsberg s Model / Balance Example 3-tier n-tier Became de facto reference model Recognizes 5 possible modes of distribution: distributed
Understanding Application Servers
Understanding Application Servers Author: Ajay Srivastava & Anant Bhargava TCS, Jan 03 Background Application servers, whatever their function, occupies a large chunk of computing territory between database
An Oracle White Paper July 2011. Oracle Primavera Contract Management, Business Intelligence Publisher Edition-Sizing Guide
Oracle Primavera Contract Management, Business Intelligence Publisher Edition-Sizing Guide An Oracle White Paper July 2011 1 Disclaimer The following is intended to outline our general product direction.
Brocade Virtual Traffic Manager and Oracle EBS 12.1 Deployment Guide
September 2015 Brocade Virtual Traffic Manager and Oracle EBS 12.1 Deployment Guide 2015 Brocade Communications Systems, Inc. All Rights Reserved. ADX, Brocade, Brocade Assurance, the B-wing symbol, DCX,
Decomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces
Software Engineering, Lecture 4 Decomposition into suitable parts Cross cutting concerns Design patterns I will also give an example scenario that you are supposed to analyse and make synthesis from The
Content Management Systems: Drupal Vs Jahia
Content Management Systems: Drupal Vs Jahia Mrudula Talloju Department of Computing and Information Sciences Kansas State University Manhattan, KS 66502. [email protected] Abstract Content Management Systems
Client-Server Architecture & J2EE Platform Technologies Overview Ahmed K. Ezzat
Client-Server Architecture & J2EE Platform Technologies Overview Ahmed K. Ezzat Page 1 of 14 Roadmap Client-Server Architecture Introduction Two-tier Architecture Three-tier Architecture The MVC Architecture
Distributed Objects and Components
Distributed Objects and Components Introduction This essay will identify the differences between objects and components and what it means for a component to be distributed. It will also examine the Java
EVALUATION OF SERVER-SIDE TECHNOLOGY FOR WEB DEPLOYMENT
EVALUATION OF SERVER-SIDE TECHNOLOGY FOR WEB DEPLOYMENT Dr. Alexander Pons, University of Miami, [email protected] ABSTRACT The deployment of Web applications consisting of dynamic content requires the selection
Open-Xchange Whitepaper Open-Xchange Server 6 Architecture Overview
Open-Xchange Whitepaper Open-Xchange Server 6 Architecture Overview v1.3 Author: Editors: Stephan Martin Dave Goldberg Contents 1.Introduction...3 2.Design Goals...4 2.1. Scalability...4 2.2. Multi Tenant
S y s t e m A r c h i t e c t u r e
S y s t e m A r c h i t e c t u r e V e r s i o n 5. 0 Page 1 Enterprise etime automates and streamlines the management, collection, and distribution of employee hours, and eliminates the use of manual
Common 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,
enterprise^ IBM WebSphere Application Server v7.0 Security "publishing Secure your WebSphere applications with Java EE and JAAS security standards
IBM WebSphere Application Server v7.0 Security Secure your WebSphere applications with Java EE and JAAS security standards Omar Siliceo "publishing enterprise^ birmingham - mumbai Preface 1 Chapter 1:
MagDiSoft Web Solutions Office No. 102, Bramha Majestic, NIBM Road Kondhwa, Pune -411048 Tel: 808-769-4605 / 814-921-0979 www.magdisoft.
WebLogic Server Course Following is the list of topics that will be covered during the course: Introduction to WebLogic What is Java? What is Java EE? The Java EE Architecture Enterprise JavaBeans Application
Net-WMS FP6-034691. Net-WMS SPECIFIC TARGETED RESEARCH OR INNOVATION PROJECT. Networked Businesses. D.8.1 Networked architecture J2EE compliant
Net-WMS SPECIFIC TARGETED RESEARCH OR INNOVATION PROJECT Networked Businesses D.8.1 Networked architecture J2EE compliant ( Version 1 ) Due date of deliverable: June 30 th, 2007 Actual submission date:
This presentation covers virtual application shared services supplied with IBM Workload Deployer version 3.1.
This presentation covers virtual application shared services supplied with IBM Workload Deployer version 3.1. WD31_VirtualApplicationSharedServices.ppt Page 1 of 29 This presentation covers the shared
Accelerating Wordpress for Pagerank and Profit
Slide No. 1 Accelerating Wordpress for Pagerank and Profit Practical tips and tricks to increase the speed of your site, improve conversions and climb the search rankings By: Allan Jude November 2011 Vice
Application Template Deployment Guide
DEPLOYMENT GUIDE NetScaler, Oracle EBS 12.1 Application Template Deployment Guide Oracle E-Business Suite 12.1 www.citrix.com DEPLOYMENT GUIDE NetScaler, Oracle EBS 12.1 Table of Contents Introduction...3
Stock Trader System. Architecture Description
Stock Trader System Architecture Description Michael Stevens [email protected] http://www.mestevens.com Table of Contents 1. Purpose of Document 2 2. System Synopsis 2 3. Current Situation and Environment
Ecomm Enterprise High Availability Solution. Ecomm Enterprise High Availability Solution (EEHAS) www.ecommtech.co.za Page 1 of 7
Ecomm Enterprise High Availability Solution Ecomm Enterprise High Availability Solution (EEHAS) www.ecommtech.co.za Page 1 of 7 Ecomm Enterprise High Availability Solution Table of Contents 1. INTRODUCTION...
Reference 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
E-Commerce Supply Chain Management Domain Research and Standard Architectures Kunal Chopra, Jeff Elrod, Bill Glenn, Barry Jones.
E-Commerce Supply Chain Management Domain Research and Standard Architectures Kunal Chopra, Jeff Elrod, Bill Glenn, Barry Jones Introduction E-Commerce Supply Chain Management involves the co-ordination
JBOSS ENTERPRISE APPLICATION PLATFORM MIGRATION GUIDELINES
JBOSS ENTERPRISE APPLICATION PLATFORM MIGRATION GUIDELINES This document is intended to provide insight into the considerations and processes required to move an enterprise application from a JavaEE-based
DIABLO VALLEY COLLEGE CATALOG 2014-2015
COMPUTER SCIENCE COMSC The computer science department offers courses in three general areas, each targeted to serve students with specific needs: 1. General education students seeking a computer literacy
Service Oriented Architectures
8 Service Oriented Architectures Gustavo Alonso Computer Science Department Swiss Federal Institute of Technology (ETHZ) [email protected] http://www.iks.inf.ethz.ch/ The context for SOA A bit of history
Tutorial on Client-Server Architecture
Tutorial on Client-Server Architecture SEEM3430 Information Systems Analysis and Design Pengfei Liu Department of Systems Engineering and Engineering Management The Chinese University of Hong Kong March
STREAMEZZO RICH MEDIA SERVER
STREAMEZZO RICH MEDIA SERVER Clustering This document is the property of Streamezzo. It cannot be distributed without the authorization of Streamezzo. Table of contents 1. INTRODUCTION... 3 1.1 Rich Media
Clustering Versus Shared Nothing: A Case Study
2009 33rd Annual IEEE International Computer Software and Applications Conference Clustering Versus Shared Nothing: A Case Study Jonathan Lifflander, Adam McDonald, Orest Pilskalns School of Engineering
MEGA Web Application Architecture Overview MEGA 2009 SP4
Revised: September 2, 2010 Created: March 31, 2010 Author: Jérôme Horber CONTENTS Summary This document describes the system requirements and possible deployment architectures for MEGA Web Application.
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
Base One's Rich Client Architecture
Base One's Rich Client Architecture Base One provides a unique approach for developing Internet-enabled applications, combining both efficiency and ease of programming through its "Rich Client" architecture.
High Availability Implementation for JD Edwards EnterpriseOne
High Availability Implementation for JD Edwards EnterpriseOne Ken Yeh, Manager, ERP Systems/JDE Enersource Colin Dawes, Director of Technology Services, Syntax Presentation Abstract Enersource Corporation
LOAD BALANCING TECHNIQUES FOR RELEASE 11i AND RELEASE 12 E-BUSINESS ENVIRONMENTS
LOAD BALANCING TECHNIQUES FOR RELEASE 11i AND RELEASE 12 E-BUSINESS ENVIRONMENTS Venkat Perumal IT Convergence Introduction Any application server based on a certain CPU, memory and other configurations
Exploring Oracle E-Business Suite Load Balancing Options. Venkat Perumal IT Convergence
Exploring Oracle E-Business Suite Load Balancing Options Venkat Perumal IT Convergence Objectives Overview of 11i load balancing techniques Load balancing architecture Scenarios to implement Load Balancing
Software Life-Cycle Management
Ingo Arnold Department Computer Science University of Basel Theory Software Life-Cycle Management Architecture Styles Overview An Architecture Style expresses a fundamental structural organization schema
HPC PORTAL DEVELOPMENT PLATFORM
HPC PORTAL DEVELOPMENT PLATFORM Chien-Heng Wu, National Center for High-Performance Computing, [email protected] ABSTRACT In the world of information technology, enterprise applications must be designed,
Adding 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
Detailed Table of Contents
Detailed Table of Contents Foreword Preface 1. Networking Protocols and OSI Model 1 1.1 Protocols in Computer Communications 3 1.2 The OSI Model 7 1.3 OSI Layer Functions 11 Summary 19 Key Terms and Concepts
.NET 3.0 vs. IBM WebSphere 6.1 Benchmark Results
.NET 3.0 vs. IBM WebSphere 6.1 Benchmark Results Microsoft.NET StockTrader and IBM WebSphere Trade 6.1 Benchmark Introduction This paper is a summary of extensive benchmark testing of two functionally
Load Balancing Web Applications
Mon Jan 26 2004 18:14:15 America/New_York Published on The O'Reilly Network (http://www.oreillynet.com/) http://www.oreillynet.com/pub/a/onjava/2001/09/26/load.html See this if you're having trouble printing
Internet Engineering: Web Application Architecture. Ali Kamandi Sharif University of Technology [email protected] Fall 2007
Internet Engineering: Web Application Architecture Ali Kamandi Sharif University of Technology [email protected] Fall 2007 Centralized Architecture mainframe terminals terminals 2 Two Tier Application
Virtual Credit Card Processing System
The ITB Journal Volume 3 Issue 2 Article 2 2002 Virtual Credit Card Processing System Geraldine Gray Karen Church Tony Ayres Follow this and additional works at: http://arrow.dit.ie/itbj Part of the E-Commerce
Deployment Topologies
, page 1 Multinode Cluster with Unified Nodes, page 2 Clustering Considerations, page 3 Cisco Unified Communications Domain Manager 10.6(x) Redundancy and Disaster Recovery, page 4 Capacity Considerations,
Oracle Identity Analytics Architecture. An Oracle White Paper July 2010
Oracle Identity Analytics Architecture An Oracle White Paper July 2010 Disclaimer The following is intended to outline our general product direction. It is intended for information purposes only, and may
Cisco Application Networking for IBM WebSphere
Cisco Application Networking for IBM WebSphere Faster Downloads and Site Navigation, Less Bandwidth and Server Processing, and Greater Availability for Global Deployments What You Will Learn To address
Introduction to Sun ONE Application Server 7
Introduction to Sun ONE Application Server 7 The Sun ONE Application Server 7 provides a high-performance J2EE platform suitable for broad deployment of application services and web services. It offers
Informix Dynamic Server May 2007. Availability Solutions with Informix Dynamic Server 11
Informix Dynamic Server May 2007 Availability Solutions with Informix Dynamic Server 11 1 Availability Solutions with IBM Informix Dynamic Server 11.10 Madison Pruet Ajay Gupta The addition of Multi-node
MongoDB 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
Learn Oracle WebLogic Server 12c Administration For Middleware Administrators
Wednesday, November 18,2015 1:15-2:10 pm VT425 Learn Oracle WebLogic Server 12c Administration For Middleware Administrators Raastech, Inc. 2201 Cooperative Way, Suite 600 Herndon, VA 20171 +1-703-884-2223
HOW TO CONFIGURE PASS-THRU PROXY FOR ORACLE APPLICATIONS
HOW TO CONFIGURE PASS-THRU PROXY FOR ORACLE APPLICATIONS Overview of Oracle JInitiator Oracle JInitiator enables users to run Oracle Forms applications using Netscape Navigator or Internet Explorer. It
Contents. Client-server and multi-tier architectures. The Java 2 Enterprise Edition (J2EE) platform
Part III: Component Architectures Natividad Martínez Madrid y Simon Pickin Departamento de Ingeniería Telemática Universidad Carlos III de Madrid {nati, spickin}@it.uc3m.es Introduction Contents Client-server
ZEN LOAD BALANCER EE v3.04 DATASHEET The Load Balancing made easy
ZEN LOAD BALANCER EE v3.04 DATASHEET The Load Balancing made easy OVERVIEW The global communication and the continuous growth of services provided through the Internet or local infrastructure require to
Load Balancing Microsoft Sharepoint 2010 Load Balancing Microsoft Sharepoint 2013. Deployment Guide
Load Balancing Microsoft Sharepoint 2010 Load Balancing Microsoft Sharepoint 2013 Deployment Guide rev. 1.4.2 Copyright 2015 Loadbalancer.org, Inc. 1 Table of Contents About this Guide... 3 Appliances
Pro<DOC/> e-commerce Technology An Introduction
Pro e-commerce Technology An Introduction From Rightangle Technologies Private Limited (www.rigthangle.co.in) 1 P a g e R i g h t a n g l e T e c h n o l o g i e s P v t. L t d. 1 Problem Statement
Web Application Hosting Cloud Architecture
Web Application Hosting Cloud Architecture Executive Overview This paper describes vendor neutral best practices for hosting web applications using cloud computing. The architectural elements described
A Monitored Student Testing Application Using Cloud Computing
A Monitored Student Testing Application Using Cloud Computing R. Mullapudi and G. Hsieh Department of Computer Science, Norfolk State University, Norfolk, Virginia, USA [email protected], [email protected]
Building Reliable, Scalable AR System Solutions. High-Availability. White Paper
Building Reliable, Scalable Solutions High-Availability White Paper Introduction This paper will discuss the products, tools and strategies available for building reliable and scalable Action Request System
Efficiency of Web Based SAX XML Distributed Processing
Efficiency of Web Based SAX XML Distributed Processing R. Eggen Computer and Information Sciences Department University of North Florida Jacksonville, FL, USA A. Basic Computer and Information Sciences
High Level Design Distributed Network Traffic Controller
High Level Design Distributed Network Traffic Controller Revision Number: 1.0 Last date of revision: 2/2/05 22c:198 Johnson, Chadwick Hugh Change Record Revision Date Author Changes 1 Contents 1. Introduction
MakeMyTrip 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
Curl Building RIA Beyond AJAX
Rich Internet Applications for the Enterprise The Web has brought about an unprecedented level of connectivity and has put more data at our fingertips than ever before, transforming how we access information
Course Description. Course Audience. Course Outline. Course Page - Page 1 of 5
Course Page - Page 1 of 5 WebSphere Application Server 7.0 Administration on Windows BSP-1700 Length: 5 days Price: $ 2,895.00 Course Description This course teaches the basics of the administration and
SharePoint 2013 Logical Architecture
SharePoint 2013 Logical Architecture This document is provided "as-is". Information and views expressed in this document, including URL and other Internet Web site references, may change without notice.
NoSQL and Hadoop Technologies On Oracle Cloud
NoSQL and Hadoop Technologies On Oracle Cloud Vatika Sharma 1, Meenu Dave 2 1 M.Tech. Scholar, Department of CSE, Jagan Nath University, Jaipur, India 2 Assistant Professor, Department of CSE, Jagan Nath
