Survey of Web Servers

Size: px
Start display at page:

Download "Survey of Web Servers"

Transcription

1 Outline Survey of Web Servers Presented by Pengcheng Li & Chao Li University of Rochester What s Web Server? Web Server Architecture request-based Event Driven Models Network IO Conclusion 1 2 What s Web Server? Two Indicators Web servers need to be fast and able to service many requests concurrently Processing of HTTP request Concurrency Web Server Architectures request-based vs. event driven Throughput data volume transferred per second (bits/sec) Network IO Data not ready to be read from socket stat() and open() sys call may block on disk I/O read() and write() sys call may block too 2 5 1

2 Web Server Architectures Web Server Architectures web server architectures Multi-process and multi-thread Apache web server Single process event driven Asymmetric multi process event driven Flash web server Nginx SEDA 6 7 Multiple Process - MP Each process handles one request Disadvantages Each process has its separate address space Cannot share data: separate cache Context switch overhead Multiple Threads - MT Each thread handles one request Advantages One address space: All threads share one cache Less context switch overhead OS has to support kernel threads Apache V2.0 can use threads 5 6 2

3 Status Apache - First version is published in 1995 by Apache Group. - Most popular web server since from In 2012 it was estimated to serve 54.98% of all active websites and 58.49% of top servers. Progress model - MT: multiple threads, each thread is responsible for a request. - MP: multiple processes, each process is responsible for a request. Optimization - Cache requested static contents file in user space - Cache URL processing results Event-Driven Model Event Driven Sever Architecture Epoll Principles one thread handles many events multiplex handling of many clients and their messages use select(), poll() or epoll() to multiplex socket I/O events provide a list of sockets waiting for I/O events sleeps until an event occurs on one or more sockets can provide a timeout to limit waiting time Epoll() is far more efficient than the others create a poll instance, which returns a poll file descriptor wait for input on a set of events returns the number of file descriptors ready for I/O, or zero if the timeout occurred, or -1 on error more scalable version of poll()

4 Epoll level-triggered interrupts occur whenever the file descriptor is ready for I/O 1000 bytes of data in receive buffer you call recv() and extract 500 bytes epoll_wait() will continue to indicate the fd is ready because there are still 500 bytes in the buffer edge-triggered interrupts occur whenever the file descriptor goes from being not ready to ready 1000 bytes of data in receive buffer you call recv() and extract 500 bytes epoll_wait() will not indicate the fd is ready until the receive buffer goes down to zero and then back up to some positive number 13 Differences between select/poll and epoll(1/2) Number of file descriptors select/poll default value 1024 epoll maximum number of files can be open in the machine 1GB memory, 100,000 file descriptors compared epoll with MP Although multi-process model can be chosen to increase the number of file descriptors, process creations, synchronizations among processes and context switches cost can not omitted easily. 25 Differences between select/poll and epoll(2/2) IO efficiency select/poll - lower when the number of sockets listened by kernel becoming larger. every time kernel need to scan all sockets in the listened sockets set. But in fact only a few sockets are active during the scanning period. epoll - higher scans all the active sockets registering callback function on each socket Single Process Event Driven - SPED Single thread of execution Use non-blocking system calls to perform I/O operations Used by Zeus web server

5 Single Process Event Driven - SPED SPED should be able to process many requests at a time but Non-blocking read/write don t work on disk operations Disk I/O operations still block Asymmetric Multi Process Event Driven Combination of MP and SPED Use non-blocking calls to perform network and pipe operations Use helper process to perform blocking disk I/O operations 8 9 Asymmetric Multi Process Event Driven Helper process can be a separate thread or process Master and Helper process communicate through IPC Master and Helper mmap() the same request file Helper process reads file from disk and brings into memory Helper notifies master that file is ready Avoid data transfer between processes Flash web server Rice University, 1999 AMPED architecture Optimizations Flash Web Server aggressive caching Pathname translation caching Response header caching Caching of already mapped files Bytes position alignment

6 Status Developed by a Russian man - Igor Sysoev Open in 2004 year Over 10% of the top 1,000,000 Internet web sites 25% of the top 1,000 web sites run on Nginx Groupon, LivingSocial, Playdom, Zappos, Hulu, Dropbox, Yandex, WordPress, etc. two years ago, no more than 3%. Nginx a combination of web server cache proxy load balancing reverse HTTP proxy Progress Model master process start and stop workers control configurations listen sockets worker process handle connections events multiplexing & epoll 500 bytes each connection utilize multi-core solve blocking IO of one process Nginx Wordpress.com has found Nginx to be the only one able to handle 8000 live traffic requests per second SEDA SEDA Problems with Thread-Based Concurrency - High resource usage. - Bad performance for too many threads, throughout meltdown and response time explosion. - Static threads bound. Problem with Event-Driven Concurrency - Little OS and tool support. - No performance/failure isolation between FSMs. 22 Decompose service into stages separated by queues - Each stage performs a subset of request processing. - Stages are event-driven. - Queue is introduced execution boundary for isolation and condition. Each stage contains a thread pool to drive stage execution - Stage may block if necessary. 23 6

7 Queues for Control and Composition - Queues subject to admission control policy * Block on full queue * Drop rejected request SEDA - Queues introduce explicit execution boundary * Thread is only executed within a single stage. * Performance isolation, modularity, independence load management. - Explicit event delivery supports inspection * Trace flow of events through application * Monitor queue lengths to detect bottleneck 24 SEAD Thread Pool Controller - Determine ideal concurrency for a stage. - Observes input queue length, adds threads if over threshold. - Remove idle threads from pool. SEDA 25 SEDA Batching Controller - Batching factor: number of events consumed by each thread. - Attempt to find the smallest batching factor with stable throughput. - Reduce batching factor when throughput is high, increase if low. Network IO

8 readv/writev - Concatenate output - Save overhead of many read/write. - But hard to work with sendfile - Transfer data between file descriptors. - Transfer operation is done in kernel. - Bypass the trip through user space (mostly) entirely aio Schedule I/O operations to occur some time in the future. Calling process needs to do periodically checking. Overlap I/O operation and CPU processing. Scales poorly on default implementations. Network IO AIO Squid, Nginx sendfile Varnish, Lighttpd, Nginx writev Varnish, Nginx, Apache

9 Efficient web server: Concurrency & Throughput handle requests disk/network operations Web server architecture MP/MT Apache Event driven web server architecture Flash, Nginx, SEDA Network IO aio, sendfile, readv/writev Conclusions References [1] "Flash: An Efficient and Portable Web Server" [2] "Main Memory Caching of Web Documents" [3] "Measurement, Analysis and Performance Improvement of Apache Web Server" [4] [5] [6] [7] [8] [9] [10] [11] [12] %20Disk%20IO.pdf [13] Understand on OS enable you to write efficient/correct application code Thanks! Disclaimer Parts of the slides contain Vivek et al. s report of Flash Web Server presented at the Usenix Technical Conference in June The slides are intended for the sole purpose of survey of operating systems course at the University of Rochester. All copyrighted materials belong to their original owner(s)

10 mmap mmap 28 Pros mmap - Accessing memory mapped files is faster than directly using read/write operation. - Lazy Loading. Cons - Cost in Minor Page Fault. - Reading large size file is complex

Web Server Architectures

Web Server Architectures Web Server Architectures CS 4244: Internet Programming Dr. Eli Tilevich Based on Flash: An Efficient and Portable Web Server, Vivek S. Pai, Peter Druschel, and Willy Zwaenepoel, 1999 Annual Usenix Technical

More information

A Comparative Study on Vega-HTTP & Popular Open-source Web-servers

A Comparative Study on Vega-HTTP & Popular Open-source Web-servers A Comparative Study on Vega-HTTP & Popular Open-source Web-servers Happiest People. Happiest Customers Contents Abstract... 3 Introduction... 3 Performance Comparison... 4 Architecture... 5 Diagram...

More information

One Server Per City: C Using TCP for Very Large SIP Servers. Kumiko Ono Henning Schulzrinne {kumiko, hgs}@cs.columbia.edu

One Server Per City: C Using TCP for Very Large SIP Servers. Kumiko Ono Henning Schulzrinne {kumiko, hgs}@cs.columbia.edu One Server Per City: C Using TCP for Very Large SIP Servers Kumiko Ono Henning Schulzrinne {kumiko, hgs}@cs.columbia.edu Goal Answer the following question: How does using TCP affect the scalability and

More information

Comparing the Performance of Web Server Architectures

Comparing the Performance of Web Server Architectures Comparing the Performance of Web Server Architectures David Pariag, Tim Brecht, Ashif Harji, Peter Buhr, and Amol Shukla David R. Cheriton School of Computer Science University of Waterloo, Waterloo, Ontario,

More information

Monitoring Nginx Server

Monitoring 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 information

ZingMe 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 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 information

FreeBSD + nginx: Best WWW server for the best OS

FreeBSD + nginx: Best WWW server for the best OS FreeBSD + nginx: Best WWW server for the best OS Sergey A. Osokin Moscow, Russia Ports committer FreeBSD Project osa@freebsd.org Abstract Today the NGINX web server can be safely considered mature. Launched

More information

Development and Evaluation of an Experimental Javabased

Development and Evaluation of an Experimental Javabased Development and Evaluation of an Experimental Javabased Web Server Syed Mutahar Aaqib Department of Computer Science & IT University of Jammu Jammu, India Lalitsen Sharma, PhD. Department of Computer Science

More information

CSE 544 Principles of Database Management Systems. Magdalena Balazinska Fall 2007 Lecture 5 - DBMS Architecture

CSE 544 Principles of Database Management Systems. Magdalena Balazinska Fall 2007 Lecture 5 - DBMS Architecture CSE 544 Principles of Database Management Systems Magdalena Balazinska Fall 2007 Lecture 5 - DBMS Architecture References Anatomy of a database system. J. Hellerstein and M. Stonebraker. In Red Book (4th

More information

Serving dynamic webpages in less than a millisecond

Serving dynamic webpages in less than a millisecond Serving dynamic webpages in less than a millisecond John Fremlin 2008 November 8 Contents This talk is about a web-application framework I built. Introduction Benchmarking framework overhead High performance

More information

MEASURING WORKLOAD PERFORMANCE IS THE INFRASTRUCTURE A PROBLEM?

MEASURING WORKLOAD PERFORMANCE IS THE INFRASTRUCTURE A PROBLEM? MEASURING WORKLOAD PERFORMANCE IS THE INFRASTRUCTURE A PROBLEM? Ashutosh Shinde Performance Architect ashutosh_shinde@hotmail.com Validating if the workload generated by the load generating tools is applied

More information

TCP Servers: Offloading TCP Processing in Internet Servers. Design, Implementation, and Performance

TCP Servers: Offloading TCP Processing in Internet Servers. Design, Implementation, and Performance TCP Servers: Offloading TCP Processing in Internet Servers. Design, Implementation, and Performance M. Rangarajan, A. Bohra, K. Banerjee, E.V. Carrera, R. Bianchini, L. Iftode, W. Zwaenepoel. Presented

More information

Analysis of Delivery of Web Contents for Kernel-mode and User-mode Web Servers

Analysis of Delivery of Web Contents for Kernel-mode and User-mode Web Servers Analysis of Delivery of Web Contents for Kernel-mode and User-mode Web Servers Syed Mutahar Aaqib Research Scholar Department of Computer Science & IT IT University of Jammu Lalitsen Sharma Associate Professor

More information

Why Threads Are A Bad Idea (for most purposes)

Why Threads Are A Bad Idea (for most purposes) Why Threads Are A Bad Idea (for most purposes) John Ousterhout Sun Microsystems Laboratories john.ousterhout@eng.sun.com http://www.sunlabs.com/~ouster Introduction Threads: Grew up in OS world (processes).

More information

Delivering Quality in Software Performance and Scalability Testing

Delivering Quality in Software Performance and Scalability Testing Delivering Quality in Software Performance and Scalability Testing Abstract Khun Ban, Robert Scott, Kingsum Chow, and Huijun Yan Software and Services Group, Intel Corporation {khun.ban, robert.l.scott,

More information

Intel DPDK Boosts Server Appliance Performance White Paper

Intel DPDK Boosts Server Appliance Performance White Paper Intel DPDK Boosts Server Appliance Performance Intel DPDK Boosts Server Appliance Performance Introduction As network speeds increase to 40G and above, both in the enterprise and data center, the bottlenecks

More information

MAGENTO HOSTING Progressive Server Performance Improvements

MAGENTO HOSTING Progressive Server Performance Improvements MAGENTO HOSTING Progressive Server Performance Improvements Simple Helix, LLC 4092 Memorial Parkway Ste 202 Huntsville, AL 35802 sales@simplehelix.com 1.866.963.0424 www.simplehelix.com 2 Table of Contents

More information

PRODUCTIVITY ESTIMATION OF UNIX OPERATING SYSTEM

PRODUCTIVITY ESTIMATION OF UNIX OPERATING SYSTEM Computer Modelling & New Technologies, 2002, Volume 6, No.1, 62-68 Transport and Telecommunication Institute, Lomonosov Str.1, Riga, LV-1019, Latvia STATISTICS AND RELIABILITY PRODUCTIVITY ESTIMATION OF

More information

Computer-System Architecture

Computer-System Architecture Chapter 2: Computer-System Structures Computer System Operation I/O Structure Storage Structure Storage Hierarchy Hardware Protection General System Architecture 2.1 Computer-System Architecture 2.2 Computer-System

More information

Java DB Performance. Olav Sandstå Sun Microsystems, Trondheim, Norway Submission ID: 860

Java DB Performance. Olav Sandstå Sun Microsystems, Trondheim, Norway Submission ID: 860 Java DB Performance Olav Sandstå Sun Microsystems, Trondheim, Norway Submission ID: 860 AGENDA > Java DB introduction > Configuring Java DB for performance > Programming tips > Understanding Java DB performance

More information

1. Computer System Structure and Components

1. Computer System Structure and Components 1 Computer System Structure and Components Computer System Layers Various Computer Programs OS System Calls (eg, fork, execv, write, etc) KERNEL/Behavior or CPU Device Drivers Device Controllers Devices

More information

Perlbal: Reverse Proxy & Webserver

Perlbal: Reverse Proxy & Webserver Perlbal: Reverse Proxy & Webserver Brad Fitzpatrick brad@danga.com Danga Interactive Open Source company Services Tools LiveJournal.com PicPix.com (soon) / pics.livejournal.com DBI::Role memcached mogilefs

More information

OS Thread Monitoring for DB2 Server

OS Thread Monitoring for DB2 Server 1 OS Thread Monitoring for DB2 Server Minneapolis March 1st, 2011 Mathias Hoffmann ITGAIN GmbH mathias.hoffmann@itgain.de 2 Mathias Hoffmann Background Senior DB2 Consultant Product Manager for SPEEDGAIN

More information

Exploiting nginx chunked overflow bug, the undisclosed attack vector

Exploiting nginx chunked overflow bug, the undisclosed attack vector Exploiting nginx chunked overflow bug, the undisclosed attack vector Long Le longld@vnsecurity.net About VNSECURITY.NET CLGT CTF team 2 VNSECURITY.NET In this talk Nginx brief introduction Nginx chunked

More information

Improving the performance of data servers on multicore architectures. Fabien Gaud

Improving the performance of data servers on multicore architectures. Fabien Gaud Improving the performance of data servers on multicore architectures Fabien Gaud Grenoble University Advisors: Jean-Bernard Stefani, Renaud Lachaize and Vivien Quéma Sardes (INRIA/LIG) December 2, 2010

More information

How To Understand And Understand An Operating System In C Programming

How To Understand And Understand An Operating System In C Programming ELEC 377 Operating Systems Thomas R. Dean Instructor Tom Dean Office:! WLH 421 Email:! tom.dean@queensu.ca Hours:! Wed 14:30 16:00 (Tentative)! and by appointment! 6 years industrial experience ECE Rep

More information

Resource Containers: A new facility for resource management in server systems

Resource Containers: A new facility for resource management in server systems CS 5204 Operating Systems Resource Containers: A new facility for resource management in server systems G. Banga, P. Druschel, Rice Univ. J. C. Mogul, Compaq OSDI 1999 Outline Background Previous Approaches

More information

Web Server Software Architectures

Web Server Software Architectures Web Server Software Architectures Author: Daniel A. Menascé Presenter: Noshaba Bakht Web Site performance and scalability 1.workload characteristics. 2.security mechanisms. 3. Web cluster architectures.

More information

Exploiting Remote Memory Operations to Design Efficient Reconfiguration for Shared Data-Centers over InfiniBand

Exploiting Remote Memory Operations to Design Efficient Reconfiguration for Shared Data-Centers over InfiniBand Exploiting Remote Memory Operations to Design Efficient Reconfiguration for Shared Data-Centers over InfiniBand P. Balaji, K. Vaidyanathan, S. Narravula, K. Savitha, H. W. Jin D. K. Panda Network Based

More information

Performance Tuning and Optimizing SQL Databases 2016

Performance Tuning and Optimizing SQL Databases 2016 Performance Tuning and Optimizing SQL Databases 2016 http://www.homnick.com marketing@homnick.com +1.561.988.0567 Boca Raton, Fl USA About this course This four-day instructor-led course provides students

More information

Microkernels, virtualization, exokernels. Tutorial 1 CSC469

Microkernels, virtualization, exokernels. Tutorial 1 CSC469 Microkernels, virtualization, exokernels Tutorial 1 CSC469 Monolithic kernel vs Microkernel Monolithic OS kernel Application VFS System call User mode What was the main idea? What were the problems? IPC,

More information

Overlapping Data Transfer With Application Execution on Clusters

Overlapping Data Transfer With Application Execution on Clusters Overlapping Data Transfer With Application Execution on Clusters Karen L. Reid and Michael Stumm reid@cs.toronto.edu stumm@eecg.toronto.edu Department of Computer Science Department of Electrical and Computer

More information

Audit & Tune Deliverables

Audit & Tune Deliverables Audit & Tune Deliverables The Initial Audit is a way for CMD to become familiar with a Client's environment. It provides a thorough overview of the environment and documents best practices for the PostgreSQL

More information

Zend Platform TM. White Paper: Zend Download Server. By Zend Technologies, Inc. May 2007. 2007 Zend Technologies, Inc. All rights reserved.

Zend Platform TM. White Paper: Zend Download Server. By Zend Technologies, Inc. May 2007. 2007 Zend Technologies, Inc. All rights reserved. White Paper: Zend Download Server By Zend Technologies, Inc. May 2007 2007 Zend Technologies, Inc. All rights reserved. Introduction You are running a successful web site. You have probably found yourself

More information

Process Scheduling CS 241. February 24, 2012. Copyright University of Illinois CS 241 Staff

Process Scheduling CS 241. February 24, 2012. Copyright University of Illinois CS 241 Staff Process Scheduling CS 241 February 24, 2012 Copyright University of Illinois CS 241 Staff 1 Announcements Mid-semester feedback survey (linked off web page) MP4 due Friday (not Tuesday) Midterm Next Tuesday,

More information

Operating System Tutorial

Operating System Tutorial Operating System Tutorial OPERATING SYSTEM TUTORIAL Simply Easy Learning by tutorialspoint.com tutorialspoint.com i ABOUT THE TUTORIAL Operating System Tutorial An operating system (OS) is a collection

More information

Configuring Apache Derby for Performance and Durability Olav Sandstå

Configuring Apache Derby for Performance and Durability Olav Sandstå Configuring Apache Derby for Performance and Durability Olav Sandstå Database Technology Group Sun Microsystems Trondheim, Norway Overview Background > Transactions, Failure Classes, Derby Architecture

More information

Common Server Setups For Your Web Application - Part II

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,

More information

Configuring Apache Derby for Performance and Durability Olav Sandstå

Configuring Apache Derby for Performance and Durability Olav Sandstå Configuring Apache Derby for Performance and Durability Olav Sandstå Sun Microsystems Trondheim, Norway Agenda Apache Derby introduction Performance and durability Performance tips Open source database

More information

PART IV Performance oriented design, Performance testing, Performance tuning & Performance solutions. Outline. Performance oriented design

PART IV Performance oriented design, Performance testing, Performance tuning & Performance solutions. Outline. Performance oriented design PART IV Performance oriented design, Performance testing, Performance tuning & Performance solutions Slide 1 Outline Principles for performance oriented design Performance testing Performance tuning General

More information

Full and Para Virtualization

Full and Para Virtualization Full and Para Virtualization Dr. Sanjay P. Ahuja, Ph.D. 2010-14 FIS Distinguished Professor of Computer Science School of Computing, UNF x86 Hardware Virtualization The x86 architecture offers four levels

More information

Lesson Objectives. To provide a grand tour of the major operating systems components To provide coverage of basic computer system organization

Lesson Objectives. To provide a grand tour of the major operating systems components To provide coverage of basic computer system organization Lesson Objectives To provide a grand tour of the major operating systems components To provide coverage of basic computer system organization AE3B33OSD Lesson 1 / Page 2 What is an Operating System? A

More information

A REVIEW PAPER ON THE HADOOP DISTRIBUTED FILE SYSTEM

A REVIEW PAPER ON THE HADOOP DISTRIBUTED FILE SYSTEM A REVIEW PAPER ON THE HADOOP DISTRIBUTED FILE SYSTEM Sneha D.Borkar 1, Prof.Chaitali S.Surtakar 2 Student of B.E., Information Technology, J.D.I.E.T, sborkar95@gmail.com Assistant Professor, Information

More information

Review from last time. CS 537 Lecture 3 OS Structure. OS structure. What you should learn from this lecture

Review from last time. CS 537 Lecture 3 OS Structure. OS structure. What you should learn from this lecture Review from last time CS 537 Lecture 3 OS Structure What HW structures are used by the OS? What is a system call? Michael Swift Remzi Arpaci-Dussea, Michael Swift 1 Remzi Arpaci-Dussea, Michael Swift 2

More information

Application Performance Testing Basics

Application Performance Testing Basics Application Performance Testing Basics ABSTRACT Todays the web is playing a critical role in all the business domains such as entertainment, finance, healthcare etc. It is much important to ensure hassle-free

More information

Tomcat Tuning. Mark Thomas April 2009

Tomcat Tuning. Mark Thomas April 2009 Tomcat Tuning Mark Thomas April 2009 Who am I? Apache Tomcat committer Resolved 1,500+ Tomcat bugs Apache Tomcat PMC member Member of the Apache Software Foundation Member of the ASF security committee

More information

Benchmarking Hadoop & HBase on Violin

Benchmarking Hadoop & HBase on Violin Technical White Paper Report Technical Report Benchmarking Hadoop & HBase on Violin Harnessing Big Data Analytics at the Speed of Memory Version 1.0 Abstract The purpose of benchmarking is to show advantages

More information

GraySort on Apache Spark by Databricks

GraySort on Apache Spark by Databricks GraySort on Apache Spark by Databricks Reynold Xin, Parviz Deyhim, Ali Ghodsi, Xiangrui Meng, Matei Zaharia Databricks Inc. Apache Spark Sorting in Spark Overview Sorting Within a Partition Range Partitioner

More information

Linux Process Scheduling Policy

Linux Process Scheduling Policy Lecture Overview Introduction to Linux process scheduling Policy versus algorithm Linux overall process scheduling objectives Timesharing Dynamic priority Favor I/O-bound process Linux scheduling algorithm

More information

PHP web serving study Performance report

PHP web serving study Performance report PHP web serving study Performance report by Stefan "SaltwaterC" Rusu Date: May - June 2010 Contact: http://saltwaterc.net/contact or admin [at] saltwaterc [dot] net Hardware Configurations Web Server:

More information

Globus Striped GridFTP Framework and Server. Raj Kettimuthu, ANL and U. Chicago

Globus Striped GridFTP Framework and Server. Raj Kettimuthu, ANL and U. Chicago Globus Striped GridFTP Framework and Server Raj Kettimuthu, ANL and U. Chicago Outline Introduction Features Motivation Architecture Globus XIO Experimental Results 3 August 2005 The Ohio State University

More information

Performance Testing. Configuration Parameters for Performance Testing

Performance Testing. Configuration Parameters for Performance Testing Optimizing an ecommerce site for performance on a global scale requires additional oversight, budget, dedicated technical resources, local expertise, and specialized vendor solutions to ensure that international

More information

q for Gods Whitepaper Series (Edition 7) Common Design Principles for kdb+ Gateways

q for Gods Whitepaper Series (Edition 7) Common Design Principles for kdb+ Gateways Series (Edition 7) Common Design Principles for kdb+ Gateways May 2013 Author: Michael McClintock joined First Derivatives in 2009 and has worked as a consultant on a range of kdb+ applications for hedge

More information

Eloquence Training What s new in Eloquence B.08.00

Eloquence Training What s new in Eloquence B.08.00 Eloquence Training What s new in Eloquence B.08.00 2010 Marxmeier Software AG Rev:100727 Overview Released December 2008 Supported until November 2013 Supports 32-bit and 64-bit platforms HP-UX Itanium

More information

Igor Seletskiy. CEO, CloudLinux

Igor Seletskiy. CEO, CloudLinux Optimizing PHP settings for Shared Hosting March M h 21 21, 212 Igor Seletskiy CEO, CloudLinux Type Security Performance Stability bl mod_php Scary Excellent Bad mod_php + mod_ruid2 Questionable Excellent

More information

OPERATING SYSTEM - VIRTUAL MEMORY

OPERATING SYSTEM - VIRTUAL MEMORY OPERATING SYSTEM - VIRTUAL MEMORY http://www.tutorialspoint.com/operating_system/os_virtual_memory.htm Copyright tutorialspoint.com A computer can address more memory than the amount physically installed

More information

Last Class: OS and Computer Architecture. Last Class: OS and Computer Architecture

Last Class: OS and Computer Architecture. Last Class: OS and Computer Architecture Last Class: OS and Computer Architecture System bus Network card CPU, memory, I/O devices, network card, system bus Lecture 3, page 1 Last Class: OS and Computer Architecture OS Service Protection Interrupts

More information

Why Computers Are Getting Slower (and what we can do about it) Rik van Riel Sr. Software Engineer, Red Hat

Why Computers Are Getting Slower (and what we can do about it) Rik van Riel Sr. Software Engineer, Red Hat Why Computers Are Getting Slower (and what we can do about it) Rik van Riel Sr. Software Engineer, Red Hat Why Computers Are Getting Slower The traditional approach better performance Why computers are

More information

Cluster Computing. ! Fault tolerance. ! Stateless. ! Throughput. ! Stateful. ! Response time. Architectures. Stateless vs. Stateful.

Cluster Computing. ! Fault tolerance. ! Stateless. ! Throughput. ! Stateful. ! Response time. Architectures. Stateless vs. Stateful. Architectures Cluster Computing Job Parallelism Request Parallelism 2 2010 VMware Inc. All rights reserved Replication Stateless vs. Stateful! Fault tolerance High availability despite failures If one

More information

CS161: Operating Systems

CS161: Operating Systems CS161: Operating Systems Matt Welsh mdw@eecs.harvard.edu Lecture 2: OS Structure and System Calls February 6, 2007 1 Lecture Overview Protection Boundaries and Privilege Levels What makes the kernel different

More information

Revisiting Software Zero-Copy for Web-caching Applications with Twin Memory Allocation

Revisiting Software Zero-Copy for Web-caching Applications with Twin Memory Allocation Revisiting Software Zero-Copy for Web-caching Applications with Twin Memory Allocation Xiang Song, Jicheng Shi, Haibo Chen, Binyu Zang Institute of Parallel and Distributed Systems, Shanghai Jiao Tong

More information

ios App Performance Things to Take Care

ios App Performance Things to Take Care ios App Performance Things to Take Care Gurpreet Singh Sachdeva Engineering Manager @ Yahoo Who should attend this session? If you are developing or planning to develop ios apps and looking for tips to

More information

CSC 2405: Computer Systems II

CSC 2405: Computer Systems II CSC 2405: Computer Systems II Spring 2013 (TR 8:30-9:45 in G86) Mirela Damian http://www.csc.villanova.edu/~mdamian/csc2405/ Introductions Mirela Damian Room 167A in the Mendel Science Building mirela.damian@villanova.edu

More information

Agenda. Enterprise Application Performance Factors. Current form of Enterprise Applications. Factors to Application Performance.

Agenda. Enterprise Application Performance Factors. Current form of Enterprise Applications. Factors to Application Performance. Agenda Enterprise Performance Factors Overall Enterprise Performance Factors Best Practice for generic Enterprise Best Practice for 3-tiers Enterprise Hardware Load Balancer Basic Unix Tuning Performance

More information

Distributed File Systems

Distributed File Systems Distributed File Systems Paul Krzyzanowski Rutgers University October 28, 2012 1 Introduction The classic network file systems we examined, NFS, CIFS, AFS, Coda, were designed as client-server applications.

More information

Web Development. Owen Sacco. ICS2205/ICS2230 Web Intelligence

Web Development. Owen Sacco. ICS2205/ICS2230 Web Intelligence Web Development Owen Sacco ICS2205/ICS2230 Web Intelligence 2. Web Servers Introduction Web content lives on Web servers Web servers speak the platform independent HyperText Transfer Protocol (HTTP) (so

More information

Web Server Deathmatch

Web Server Deathmatch Web Server Deathmatch Joe Williams Cloudant @williamsjoe on Twitter http://www.joeandmotorboat.com/ Overview The Contenders The Systems, Test Setup, Environment and Configuration The Results Base Tests

More information

Tempesta FW. Alexander Krizhanovsky NatSys Lab. ak@natsys-lab.com

Tempesta FW. Alexander Krizhanovsky NatSys Lab. ak@natsys-lab.com Tempesta FW Alexander Krizhanovsky NatSys Lab. ak@natsys-lab.com What Tempesta FW Is? FireWall: layer 3 (IP) layer 7 (HTTP) filter FrameWork: high performance and flexible platform to build intelligent

More information

Have both hardware and software. Want to hide the details from the programmer (user).

Have both hardware and software. Want to hide the details from the programmer (user). Input/Output Devices Chapter 5 of Tanenbaum. Have both hardware and software. Want to hide the details from the programmer (user). Ideally have the same interface to all devices (device independence).

More information

Chapter 2: OS Overview

Chapter 2: OS Overview Chapter 2: OS Overview CmSc 335 Operating Systems 1. Operating system objectives and functions Operating systems control and support the usage of computer systems. a. usage users of a computer system:

More information

Practical Performance Understanding the Performance of Your Application

Practical Performance Understanding the Performance of Your Application Neil Masson IBM Java Service Technical Lead 25 th September 2012 Practical Performance Understanding the Performance of Your Application 1 WebSphere User Group: Practical Performance Understand the Performance

More information

Web Server (Step 1) Processes request and sends query to SQL server via ADO/OLEDB. Web Server (Step 2) Creates HTML page dynamically from record set

Web Server (Step 1) Processes request and sends query to SQL server via ADO/OLEDB. Web Server (Step 2) Creates HTML page dynamically from record set Dawn CF Performance Considerations Dawn CF key processes Request (http) Web Server (Step 1) Processes request and sends query to SQL server via ADO/OLEDB. Query (SQL) SQL Server Queries Database & returns

More information

Agility Database Scalability Testing

Agility Database Scalability Testing Agility Database Scalability Testing V1.6 November 11, 2012 Prepared by on behalf of Table of Contents 1 Introduction... 4 1.1 Brief... 4 2 Scope... 5 3 Test Approach... 6 4 Test environment setup... 7

More information

Check Point FireWall-1 HTTP Security Server performance tuning

Check Point FireWall-1 HTTP Security Server performance tuning PROFESSIONAL SECURITY SYSTEMS Check Point FireWall-1 HTTP Security Server performance tuning by Mariusz Stawowski CCSA/CCSE (4.1x, NG) Check Point FireWall-1 security system has been designed as a means

More information

Tuning Tableau Server for High Performance

Tuning Tableau Server for High Performance Tuning Tableau Server for High Performance I wanna go fast PRESENT ED BY Francois Ajenstat Alan Doerhoefer Daniel Meyer Agenda What are the things that can impact performance? Tips and tricks to improve

More information

Geospatial Server Performance Colin Bertram UK User Group Meeting 23-Sep-2014

Geospatial Server Performance Colin Bertram UK User Group Meeting 23-Sep-2014 Geospatial Server Performance Colin Bertram UK User Group Meeting 23-Sep-2014 Topics Auditing a Geospatial Server Solution Web Server Strategies and Configuration Database Server Strategy and Configuration

More information

These sub-systems are all highly dependent on each other. Any one of them with high utilization can easily cause problems in the other.

These sub-systems are all highly dependent on each other. Any one of them with high utilization can easily cause problems in the other. Abstract: The purpose of this document is to describe how to monitor Linux operating systems for performance. This paper examines how to interpret common Linux performance tool output. After collecting

More information

TFE listener architecture. Matt Klein, Staff Software Engineer Twitter Front End

TFE listener architecture. Matt Klein, Staff Software Engineer Twitter Front End TFE listener architecture Matt Klein, Staff Software Engineer Twitter Front End Agenda TFE architecture overview TSA architecture overview TSA hot restart Future plans Q&A TFE architecture overview Listener:

More information

Scalability of web applications. CSCI 470: Web Science Keith Vertanen

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

More information

How To Use Ngnix (Php) With A Php-Fpm (Php-Fmm) On A Web Server (Php5) On Your Web Browser) On An Ubuntu Web Server On A Raspberry Web 2.5 (Net

How To Use Ngnix (Php) With A Php-Fpm (Php-Fmm) On A Web Server (Php5) On Your Web Browser) On An Ubuntu Web Server On A Raspberry Web 2.5 (Net Powering Magento with Ngnix and PHP-FPM Written by: Yuri Golovko Alexey Samorukov Table of Contents INTRODUCTION WHY YOU SHOULD CONSIDER NGNIX NGNIX AND STATIC CONTENT HOW TO USE NGNIX NGNIX SYSTEM REQUIREMENTS

More information

A Packet Forwarding Method for the ISCSI Virtualization Switch

A Packet Forwarding Method for the ISCSI Virtualization Switch Fourth International Workshop on Storage Network Architecture and Parallel I/Os A Packet Forwarding Method for the ISCSI Virtualization Switch Yi-Cheng Chung a, Stanley Lee b Network & Communications Technology,

More information

The best reverse proxy around. Kristian Lyngstøl PRODUCTS CONSULTING APPLICATION MANAGEMENT IT OPERATIONS SUPPORT TRAINING

The best reverse proxy around. Kristian Lyngstøl PRODUCTS CONSULTING APPLICATION MANAGEMENT IT OPERATIONS SUPPORT TRAINING The best reverse proxy around Kristian Lyngstøl Who we are Redpill Linpro is a Scandinavian free software company offering development services, operations, support, training and more. Varnish Software

More information

Dynamic Thread Pool based Service Tracking Manager

Dynamic Thread Pool based Service Tracking Manager Dynamic Thread Pool based Service Tracking Manager D.V.Lavanya, V.K.Govindan Department of Computer Science & Engineering National Institute of Technology Calicut Calicut, India e-mail: lavanya.vijaysri@gmail.com,

More information

Application of Predictive Analytics for Better Alignment of Business and IT

Application of Predictive Analytics for Better Alignment of Business and IT Application of Predictive Analytics for Better Alignment of Business and IT Boris Zibitsker, PhD bzibitsker@beznext.com July 25, 2014 Big Data Summit - Riga, Latvia About the Presenter Boris Zibitsker

More information

ON THE IMPLEMENTATION OF ADAPTIVE FLOW MEASUREMENT IN THE SDN-ENABLED NETWORK: A PROTOTYPE

ON THE IMPLEMENTATION OF ADAPTIVE FLOW MEASUREMENT IN THE SDN-ENABLED NETWORK: A PROTOTYPE ON THE IMPLEMENTATION OF ADAPTIVE FLOW MEASUREMENT IN THE SDN-ENABLED NETWORK: A PROTOTYPE PANG-WEI TSAI, CHUN-YU HSU, MON-YEN LUO AND CHU-SING YANG NATIONAL CHENG KUNG UNIVERSITY, INSTITUTE OF COMPUTER

More information

I/O Device and Drivers

I/O Device and Drivers COS 318: Operating Systems I/O Device and Drivers Prof. Margaret Martonosi Computer Science Department Princeton University http://www.cs.princeton.edu/courses/archive/fall11/cos318/ Announcements Project

More information

NetIQ Access Manager 4.1

NetIQ Access Manager 4.1 White Paper NetIQ Access Manager 4.1 Performance and Sizing Guidelines Performance, Reliability, and Scalability Testing Revisions This table outlines all the changes that have been made to this document

More information

SQL Server Business Intelligence on HP ProLiant DL785 Server

SQL Server Business Intelligence on HP ProLiant DL785 Server SQL Server Business Intelligence on HP ProLiant DL785 Server By Ajay Goyal www.scalabilityexperts.com Mike Fitzner Hewlett Packard www.hp.com Recommendations presented in this document should be thoroughly

More information

10.04.2008. Thomas Fahrig Senior Developer Hypervisor Team. Hypervisor Architecture Terminology Goals Basics Details

10.04.2008. Thomas Fahrig Senior Developer Hypervisor Team. Hypervisor Architecture Terminology Goals Basics Details Thomas Fahrig Senior Developer Hypervisor Team Hypervisor Architecture Terminology Goals Basics Details Scheduling Interval External Interrupt Handling Reserves, Weights and Caps Context Switch Waiting

More information

Applications Manager Best Practices document

Applications Manager Best Practices document Applications Manager Best Practices document This document will list the AdventNet ManageEngine Applications Manager best practices 1. Hardware and Software requirements 2. Configuring Applications Manager

More information

Load Balancer Comparison: a quantitative approach. a call for researchers ;)

Load Balancer Comparison: a quantitative approach. a call for researchers ;) Load Balancer Comparison: a quantitative approach a call for researchers ;) Complex Internet infrastructure high performance systems clusters grids high availability systems resilient storage resilient

More information

Leveraging NIC Technology to Improve Network Performance in VMware vsphere

Leveraging NIC Technology to Improve Network Performance in VMware vsphere Leveraging NIC Technology to Improve Network Performance in VMware vsphere Performance Study TECHNICAL WHITE PAPER Table of Contents Introduction... 3 Hardware Description... 3 List of Features... 4 NetQueue...

More information

File System & Device Drive. Overview of Mass Storage Structure. Moving head Disk Mechanism. HDD Pictures 11/13/2014. CS341: Operating System

File System & Device Drive. Overview of Mass Storage Structure. Moving head Disk Mechanism. HDD Pictures 11/13/2014. CS341: Operating System CS341: Operating System Lect 36: 1 st Nov 2014 Dr. A. Sahu Dept of Comp. Sc. & Engg. Indian Institute of Technology Guwahati File System & Device Drive Mass Storage Disk Structure Disk Arm Scheduling RAID

More information

CHAPTER 3 PROBLEM STATEMENT AND RESEARCH METHODOLOGY

CHAPTER 3 PROBLEM STATEMENT AND RESEARCH METHODOLOGY 51 CHAPTER 3 PROBLEM STATEMENT AND RESEARCH METHODOLOGY Web application operations are a crucial aspect of most organizational operations. Among them business continuity is one of the main concerns. Companies

More information

Understanding IBM Lotus Domino server clustering

Understanding IBM Lotus Domino server clustering Understanding IBM Lotus Domino server clustering Reetu Sharma Software Engineer, IBM Software Group Pune, India Ranjit Rai Software Engineer IBM Software Group Pune, India August 2009 Copyright International

More information

Unstructured Data Accelerator (UDA) Author: Motti Beck, Mellanox Technologies Date: March 27, 2012

Unstructured Data Accelerator (UDA) Author: Motti Beck, Mellanox Technologies Date: March 27, 2012 Unstructured Data Accelerator (UDA) Author: Motti Beck, Mellanox Technologies Date: March 27, 2012 1 Market Trends Big Data Growing technology deployments are creating an exponential increase in the volume

More information

Middleware and Distributed Systems. Design of Scalable Servers. Martin v. Löwis. Donnerstag, 16. Februar 12

Middleware and Distributed Systems. Design of Scalable Servers. Martin v. Löwis. Donnerstag, 16. Februar 12 Middleware and Distributed Systems Design of Scalable Servers Martin v. Löwis Problem Statement Allow multiple clients to connect to a server simultaneously, and handle connections from them in an overlapping

More information

COS 318: Operating Systems. Virtual Machine Monitors

COS 318: Operating Systems. Virtual Machine Monitors COS 318: Operating Systems Virtual Machine Monitors Andy Bavier Computer Science Department Princeton University http://www.cs.princeton.edu/courses/archive/fall10/cos318/ Introduction Have been around

More information

BASICS OF SCALING: LOAD BALANCERS

BASICS 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 information

Stingray Traffic Manager Sizing Guide

Stingray Traffic Manager Sizing Guide STINGRAY TRAFFIC MANAGER SIZING GUIDE 1 Stingray Traffic Manager Sizing Guide Stingray Traffic Manager version 8.0, December 2011. For internal and partner use. Introduction The performance of Stingray

More information