SEDA: An Architecture for Robust, Well-Conditioned Internet Services
|
|
|
- Eleanore Fletcher
- 10 years ago
- Views:
Transcription
1 SEDA: An Architecture for Robust, Well-Conditioned Internet Services Matt Welsh UC Berkeley Computer Science Division 1
2 Motivation - Internet Services Today Massive concurrency demands Yahoo: 1.2 billion+ pageviews/day AOL web caches: 10 billion hits/day Load spikes are inevitable - the Slashdot Effect Traffic on September 11, 2001 overloaded many news sites Denial of service attacks increasingly common Peak load is orders of magnitude greater than average In this regime, overprovisioning is infeasible Load spikes occur exactly when the service is most valuable! Increasingly dynamic and complex Not just static web pages anymore: e-commerce, stock trading, driving directions, etc. New application domains, e.g. Web services Service logic evolves rapidly Matt Welsh, UC Berkeley 2
3 Massive Overload is Sudden and Unpredictable September 11 - unprecedented web traffic CNN: 20x over expected peak - 30,000+ hits/sec Grew server farm by 5x by scrounging machines, but still no service for 2.5 hours USGS site load after M7.1 earthquake 3 orders of magnitude increase in 10 minutes, disk log filled up 80 USGS Web server load Hits per second :00 03:00 06:00 09:00 12:00 15:00 18:00 21:00 00:00 Time Matt Welsh, UC Berkeley 3
4 Service building is a black art Supporting massive concurrency is hard Threads/processes designed for timesharing and don t scale High overheads and memory footprint Existing systems do not provide graceful management of load Standard OSs strive for maximum resource transparency Static resource containment is inflexible How to set apriori resource limits for widely fluctuating loads? Load management demands a feedback loop Dynamics of services exaggerate these problems Much work on performance/robustness for specific services e.g., Fast, event-driven Web servers As services become more dynamic, this engineering burden is excessive Services increasingly hosted on general-purpose facilities Matt Welsh, UC Berkeley 4
5 Proposal: The Staged Event-Driven Architecture SEDA: A new architecture for Internet services A general-purpose framework for high concurrency and load conditioning Decomposes applications into stages separated by queues Adopt a structured approach to event-driven concurrency Overload management is explicit in the programming model Event queues expose request streams to the application Perform load conditioning by filtering or prioritizing queues Dynamic control for self-tuning resource management System observes application performance and tunes runtime parameters Apply control for graceful degradation Perform load shedding or degrade service under overload Simplify task of building highly-concurrent services Decouple load management from service complexity Use of stages supports modularity, code reuse, debugging Dynamic control shields apps from complexity of resource management Matt Welsh, UC Berkeley 5
6 Outline Problems with Threads and Event-Driven Concurrency The Staged Event-Driven Architecture SEDA Implementation Application Study: High-Performance HTTP Server Using Control for Overload Prevention Future Work and Conclusions Matt Welsh, UC Berkeley 6
7 Classic model: One thread per task Threads are designed for timesharing High resource usage, context switch overhead, contended locks Too many threads throughput meltdown, response time explosion How to determine the right number of threads? Regardless of performance, threads are fundamentally the wrong interface Throughput, tasks/sec Throughput Latency Linear (ideal) latency Latency, msec Number of threads Matt Welsh, UC Berkeley 7
8 Event-driven Concurrency Multiplex many requests (FSMs) over small number of threads Ideal performance: Flat throughput, linear response time penalty Many examples: Click router, Flash web server, TP Monitors, etc. Difficult to engineer, modularize, and tune Typically very brittle: application-specific event scheduling FSM code can never block (but page faults, garbage collection force a block) Throughput Throughput, tasks/sec Number of tasks in pipeline Matt Welsh, UC Berkeley 8
9 Staged Event-Driven Architecture (SEDA) file data accept connection read packet connection packet parse packet HTTP request check cache cache hit cache miss handle miss send response I/O request packet file I/O write packet Decompose service into stages separated by queues Each stage performs a subset of request processing Stages use light-weight event-driven concurrency internally Nonblocking I/O interfaces are essential Queues make load management explicit Stages contain a thread pool to drive execution Small number of threads per stage Dynamic control grows/shrinks thread pools with demand Event Handler Thread Pool Dynamic Resource Control Applications implement simple event handler interface Apps don t allocate, schedule, or manage threads Matt Welsh, UC Berkeley 9
10 Queues for Control and Composition Queues subject to admission control policy Manage load by controlling queueing at each stage e.g., Thresholding, rate control, credit-based flow control Enqueue failure is an overload signal? Reject Accept Block on full queue backpressure Drop rejected events load shedding Can also degrade service, redirect request, etc. Queues introduce explicit execution boundary Threads may only execute within a single stage Performance isolation, modularity, independent load management Explicit event delivery supports inspection Trace flow of events through application Monitor queue lengths to detect bottleneck Profile Matt Welsh, UC Berkeley 10
11 SEDA Thread Pool Controller 200 Event Handler Input queue length Observe Length Thread Pool Adjust Size > Observe Throughput Threshold 40 0 Thread pool size Time (1 sec intervals) Goal: Determine ideal degree of concurrency for a stage Dynamically adjust number of threads allocated to each stage Avoid wasting threads when unneeded Controller operation Observes input queue length, adds threads if over threshold Idle threads removed from pool Drop in stage throughput indicates max thread pool size Matt Welsh, UC Berkeley 11
12 SEDA Batching Controller Event Handler Other Stages Stage output rate 0 Thread Pool Adjust Batching > Factor Running Avg Observe Rate Time (100 ms intervals) Batching factor Goal: Schedule for low response time and high throughput Batching factor: number of events consumed by each thread Large batching factor more locality, higher throughput Small batching factor more parallelism, lower response time Attempt to find smallest batching factor with stable throughput Reduces batching factor when throughput high, increases when low Matt Welsh, UC Berkeley 12
13 SEDA Prototype: Sandstorm application stage application stage application stage application stage asynchronous sockets HTTP protocol Gnutella protocol timer SSL/TLS protocol asynchronous file I/O Profiler System Manager NBIO Java Virtual Machine JAIO Operating System Implemented in Java with nonblocking I/O interfaces Scalable network performance up to 10,000 clients per node Influenced design of JDK 1.4 java.nio APIs Java viable as service construction language Built-in threading, automatic memory management, cross-platform Java-based SEDA Web server outperforms Apache and Flash Matt Welsh, UC Berkeley 13
14 Outline Problems with Threads and Event-Driven Concurrency The Staged Event-Driven Architecture SEDA Implementation Application Study: High-Performance HTTP Server Using Control for Overload Prevention Future Work and Conclusions Matt Welsh, UC Berkeley 14
15 Haboob: A SEDA-Based Web Server file data accept connection read packet connection packet parse packet HTTP request check cache cache hit cache miss handle miss send response I/O request packet file I/O write packet SEDA-based HTTP server for static and dynamic pages Memory page cache (sized at 200 MB to force disk I/O) Dynamic page generation with new Python-based scripting language Database access, asynchronous SSL/TLS library Measured static file load from SpecWEB99 benchmark 1 to 1024 clients making repeated requests, think time 20ms Total fileset size is 3.31 GB ; page sizes from 102 Bytes to 940 KB Comparison with Apache and Flash Apache: Process-based concurrency, 150 processes Flash (Vivek Pai, Princeton): Event-driven w/ 4 processes Apache accepts only 150 connections, Flash only 506 Matt Welsh, UC Berkeley 15
16 SEDA Scales Well with Increasing Load Throughput, MBit/sec Apache Flash SEDA Throughput Number of clients 4-way Pentium III 500 MHz, Gigabit Ethernet, 2 GB RAM, Linux , IBM JDK 1.3 SEDA throughput 10% higher than Apache and Flash (which are in C!) But higher efficiency was not really the goal! Apache accepts only 150 clients at once - no overload despite thread model But as we will see, this penalizes many clients Matt Welsh, UC Berkeley 16
17 Max Response Time vs. Apache and Flash Max response time, seconds Apache Flash SEDA Number of clients SEDA yields stable, predictable performance Apache and Flash are very unfair when overloaded 1.7 minutes 37 sec 3.8 sec Long response times due to exponential backoff in TCP SYN retransmit Not accepting connections is the wrong approach to overload management Matt Welsh, UC Berkeley 17
18 Can t we just fix Apache? Real problem with Apache: Uses TCP protocol as a request queue Unfortunately, incurs a terrible response time penalty How to fix Apache? Add a couple of threads to rapidly accept and read requests Internally queue requests to avoid TCP backoff But that s not all! Replace static process limit with dynamic control Isolate potential bottlenecks to avoid overload You get the idea... accept connection read packet Apache Thread Pool Tune Process Limit CGI script SSL processing long disk I/O Matt Welsh, UC Berkeley 18
19 Outline Problems with Threads and Event-Driven Concurrency The Staged Event-Driven Architecture SEDA Implementation Application Study: High-Performance HTTP Server Using Control for Overload Prevention Future Work and Conclusions Matt Welsh, UC Berkeley 19
20 Alternatives for Overload Control Fundamentally: Apply admission control to each stage Expensive stages throttled more aggressively Degrade service (e.g., reduce image quality or service complexity) Redirect request to another server (e.g., HTTP redirect) Can couple with front-end load balancing across server farm Reject request (e.g., Error message or Please wait... ) Social engineering possible: fake or confusing error message Deliver differentiated service Give some users better service; don t reject users with a full shopping cart! Matt Welsh, UC Berkeley 20
21 Dynamic Control for Overload Prevention Token Bucket λ Stage Response Times Controller RT Target Adaptive admission control at each stage Target metric: Bound 90th percentile response time Measure stage latency, throttle incoming event rate Distribution Additive-increase/Multiplicative-decrease controller design Slight overshoot in input rate can lead to large response time spikes! Clamp down quickly on input rate when over target Increase incoming rate slowly when below target Matt Welsh, UC Berkeley 21
22 Arashi: A Web-based service Yahoo Mail clone - real world service Dynamic page generation, SSL New Python-based Web scripting language Mail stored in back-end MySQL database Realistic client load generator Traces taken from departmental IMAP server Markov chain model of user behavior Overload control applied to each request type separately: admission control list folders accept connection read packet parse packet degrade service, send error page, etc. show message... delete/refile message database access send response (some stages not shown) Matt Welsh, UC Berkeley 22
23 Overload prevention during massive load spike th percentile response time (sec) Load spike (1000 users) Time (5 sec intervals) No overload control With overload control Reject rate Load spike ends Sudden load spike of 1000 users hitting Arashi service 7 request types, handled by separate stages with overload controller 90th percentile response time target: 1 second Rejected requests cause clients to pause for 5 sec Overload controller has no knowledge of the service! Reject rate Matt Welsh, UC Berkeley 23
24 Structured Event Queues Related Work Many examples: Click modular router, Scout OS, Work Crews, TSS/360, etc. Often concerned with optimizing fast path, less general processing within stages StagedServer [Microsoft]: Explored use of batching for cache locality only We focus on network-of-queues for robustness to huge variations in load Overload prevention techniques in Internet services Dynamic listen queue thresholding [Voigt, Cherkasova, Kant] Specialized scheduling techniques [Crovella, Harchol-Balter] Class-based service differentiation [Bhoj, Voigt, Reumann] SEDA generalizes on these techniques by introducing them to the service programming model, not as generic OS functions Control-theoretic approaches to resource management PID control of Internet service parameters [Diao, Hellerstein] Feedback-driven scheduling [Stankovic, Abdelzaher, Steere] This work complements our approach to system design Often limited by linear models - fail to capture full complexity of real system Matt Welsh, UC Berkeley 24
25 SEDA Impact and Retrospectives Adoption by other systems at Berkeley and elsewhere Ninja vspace: Cluster-based SEDA for scalable servers Replicate stages on a cluster for scalablilty and fault tolerance OceanStore (global, secure, archival filesystem) based on SEDA TerraLycos chat server, LimeWire Gnutella servers, SwiftMQ system, etc... SEDA requires a fundamental shift in thinking Programming model is no longer single request in isolation Rather, processing many requests at each stage Overload exposed to applications through queue rejections Open questions and future work Explore impact of SEDA on OS design Rejecting requests which have accumulated state? Need rollback mechanism backwards along event path Applying control theory to SEDA resource management Internet services are highly nonlinear, difficult to apply classic control theory Matt Welsh, UC Berkeley 25
26 Summary Support for massive load requires new design techniques SEDA introduces service design as a network of stages Architecture for services that are robust to huge variations in load Combines efficiency of event-driven concurrency with programmability of threads Observation and control as key to service design Expose request streams and overload to applications Dynamic control to keep stages within operating regime Decouple load management from service complexity Bring body of work on control theory to bear on Internet services Opens up interesting new directions for Internet service design What would a native SEDA operating system look like? Language and tool support for event-driven computing For more information, software, and papers: Matt Welsh, UC Berkeley 26
27 Backup Slides Follow Matt Welsh, UC Berkeley 27
28 But isn t it difficult to program in this way? Some learning curve for SEDA, but mitigated by design: Easier to manage event-driven concurrency within each stage Queues help with debugging, modularity, and performance isolation Also, stages can block (for difficult code or lazy programmers) Much better than monolithic, event-driven spaghetti-code designs Decomposition into stages helps greatly! Each stage is a self-contained, well-conditioned module Stage communication via message protocol, not API Some drawbacks: Shared state across stages still requires synchronization Funny concurrency issues, e.g., inter-event dependencies and serialization Matt Welsh, UC Berkeley 28
29 Future Directions Explore impact of SEDA on OS design Rethinking the role of resource virtualization Strive for robustness/stability rather than mere speed Scheduling, I/O, VM, programming model all affected Adaptivity and control as the basis for robust, large-scale systems Feedback as first-order systems construction primitive Interesting ties with control theory, performance modeling, machine learning Further development of formal techniques needed to apply to real systems Longer term: Resilient, massively scalable computing platforms Macrocomputing - computing across many unreliable devices e.g., Wireless sensor networks with s of nodes Language-based approach to robust computing under uncertainty Matt Welsh, UC Berkeley 29
30 High-performance Web servers Related Work Many systems realizing the benefit of event-driven design [Flash, Harvest, Squid, JAWS,...] Specific applications - no general-purpose framework Little work on load conditioning, event scheduling StagedServer (Microsoft Research) Core design similar to SEDA Primarily concerned with cache locality Wavefront thread scheduler: last in, first out Click Modular Router, Scout OS, Utah Janos Various systems making use of structured event queues Packet processing decomposed as stages Threads call through multiple stages Major goal is latency reduction Matt Welsh, UC Berkeley 30
31 Resource Containers [Banga] Related Work 2 Similar to Scout path and Janos flow Vertical resource management for data flows SEDA applies resource management at per-stage level Scalable I/O and Event Delivery [ASHs, IO-Lite, fbufs, /dev/poll, FreeBSD kqueue, NT completion ports] Structure I/O system to scale with number of clients We build on this work Large body of work on scheduling Interesting thread/event/task scheduling results e.g., Use of SRPT and SCF scheduling in Web servers [Crovella, Harchol-Balter] Alternate performance metrics [Bender] We plan to investigate their use within SEDA Matt Welsh, UC Berkeley 31
32 Apache and Flash Architectures Apache Classic thread/process per task model Maintains fixed-size pool of 150 processes Only accepts 150 processes at a time; others queue in network Leads to extreme unfairness due to exponential TCP backoff Lucky clients serviced quickly Unlucky clients must go out to lunch Flash [V. Pai et al., USENIX 1999] Canonical example of event-driven server design Single thread processes all concurrent requests Lots of optimizations Sub-processes used to perform disk I/O, DNS lookup Limited to 506 simultaneous connections due to fd limits Original USENIX paper only measured up to this point Matt Welsh, UC Berkeley 32
33 Response Time Distribution - 64 Clients SEDA Flash Apache 0.8 Prob [response time <= x] Response time, msec Note log scale SEDA Flash Apache Mean RT 15 ms 18 ms 16 ms Max RT 1.8 sec 12 sec 2.2 sec All servers about the same, Apache a little faster Matt Welsh, UC Berkeley 33
34 Response Time Distribution Clients Prob [response time <= x] Apache (150 conns) Flash (506 conns) SEDA (1024 conns) Long tail in Apache & Flash due to TCP SYN backoff Response time, msec Note log scale SEDA Flash Apache Mean RT 547 ms 665 ms 475 ms Max RT 3.8 sec 37 sec 1.7 minutes Apache accepts only 150 connections: less resource contention But very unfair treatment of clients Matt Welsh, UC Berkeley 34
35 Response time CDF by request type Prob [response time <= x] showmsg login refile deletemsg list folderlist search Response time, msec CDF of response time, 128 clients Most request types meet performance target Search is particularly bad - but not very common Aggressiveness of controller proportional to request frequency Matt Welsh, UC Berkeley 35
36 Overload prevention under increasing load th percentile RT, seconds Response time target No admission control With admission control Fraction of accepted requests Number of clients 90th %-tile response time target set to 1 second Controller keeps response time below target with increased load Greater proportion of expensive requests rejected System admin can tune response time vs. rejected load tradeoff Matt Welsh, UC Berkeley 36
37 Controller-based Overload Prevention Performance target 90th percentile RT = 1 sec Prob [response time <= x] With overload control No overload control Response time, msec 1024 clients under overload Adaptive load-shedding controller attempts to meet performance target Dynamically adjust queue thresholds to maintain low response time Goal: 90th percentile response time of 1 sec In this run, 49% of requests rejected from server Matt Welsh, UC Berkeley 37
Adaptive Overload Control for Busy Internet Servers
Adaptive Overload Control for Busy Internet Servers Matt Welsh Intel Research and Harvard University David Culler Intel Research and U.C. Berkeley 1 The Problem: Overload in the Internet Overload is an
SEDA: An Architecture for Well-Conditioned, Scalable Internet Services
SEDA: An Architecture for Well-Conditioned, Scalable Internet Services Matt Welsh, David Culler, and Eric Brewer Computer Science Division University of California, Berkeley {mdw,culler,brewer}@cs.berkeley.edu
Adaptive Overload Control for Busy Internet Servers
Adaptive Overload Control for Busy Internet Servers Matt Welsh and David Culler Intel Research, Berkeley and University of California, Berkeley {mdw,culler}@cs.berkeley.edu Abstract As Internet services
MAGENTO HOSTING Progressive Server Performance Improvements
MAGENTO HOSTING Progressive Server Performance Improvements Simple Helix, LLC 4092 Memorial Parkway Ste 202 Huntsville, AL 35802 [email protected] 1.866.963.0424 www.simplehelix.com 2 Table of Contents
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
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
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
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
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
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
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
JBoss Seam Performance and Scalability on Dell PowerEdge 1855 Blade Servers
JBoss Seam Performance and Scalability on Dell PowerEdge 1855 Blade Servers Dave Jaffe, PhD, Dell Inc. Michael Yuan, PhD, JBoss / RedHat June 14th, 2006 JBoss Inc. 2006 About us Dave Jaffe Works for Dell
SCALABILITY AND AVAILABILITY
SCALABILITY AND AVAILABILITY Real Systems must be Scalable fast enough to handle the expected load and grow easily when the load grows Available available enough of the time Scalable Scale-up increase
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
scalability OneBridge
scalability OneBridge Mobile Groupware technical brief An important consideration for IT professionals when choosing a server-based synchronization solution is that of scalability. Scalability refers to
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,
- An Essential Building Block for Stable and Reliable Compute Clusters
Ferdinand Geier ParTec Cluster Competence Center GmbH, V. 1.4, March 2005 Cluster Middleware - An Essential Building Block for Stable and Reliable Compute Clusters Contents: Compute Clusters a Real Alternative
Estimate Performance and Capacity Requirements for Workflow in SharePoint Server 2010
Estimate Performance and Capacity Requirements for Workflow in SharePoint Server 2010 This document is provided as-is. Information and views expressed in this document, including URL and other Internet
1.0 Hardware Requirements:
01 - ServiceDesk Plus - Best Practices We appreciate you choosing ServiceDesk Plus for your organization to deliver world-class IT services. Before installing the product, take a few minutes to go through
BENCHMARKING CLOUD DATABASES CASE STUDY on HBASE, HADOOP and CASSANDRA USING YCSB
BENCHMARKING CLOUD DATABASES CASE STUDY on HBASE, HADOOP and CASSANDRA USING YCSB Planet Size Data!? Gartner s 10 key IT trends for 2012 unstructured data will grow some 80% over the course of the next
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
Berkeley Ninja Architecture
Berkeley Ninja Architecture ACID vs BASE 1.Strong Consistency 2. Availability not considered 3. Conservative 1. Weak consistency 2. Availability is a primary design element 3. Aggressive --> Traditional
A Hybrid Web Server Architecture for e-commerce Applications
A Hybrid Web Server Architecture for e-commerce Applications David Carrera, Vicenç Beltran, Jordi Torres and Eduard Ayguadé {dcarrera, vbeltran, torres, eduard}@ac.upc.es European Center for Parallelism
Introduction 1 Performance on Hosted Server 1. Benchmarks 2. System Requirements 7 Load Balancing 7
Introduction 1 Performance on Hosted Server 1 Figure 1: Real World Performance 1 Benchmarks 2 System configuration used for benchmarks 2 Figure 2a: New tickets per minute on E5440 processors 3 Figure 2b:
Capacity Planning Guide for Adobe LiveCycle Data Services 2.6
White Paper Capacity Planning Guide for Adobe LiveCycle Data Services 2.6 Create applications that can deliver thousands of messages per second to thousands of end users simultaneously Table of contents
EWeb: Highly Scalable Client Transparent Fault Tolerant System for Cloud based Web Applications
ECE6102 Dependable Distribute Systems, Fall2010 EWeb: Highly Scalable Client Transparent Fault Tolerant System for Cloud based Web Applications Deepal Jayasinghe, Hyojun Kim, Mohammad M. Hossain, Ali Payani
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.
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
Accelerating and Simplifying Apache
Accelerating and Simplifying Apache Hadoop with Panasas ActiveStor White paper NOvember 2012 1.888.PANASAS www.panasas.com Executive Overview The technology requirements for big data vary significantly
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
Part V Applications. What is cloud computing? SaaS has been around for awhile. Cloud Computing: General concepts
Part V Applications Cloud Computing: General concepts Copyright K.Goseva 2010 CS 736 Software Performance Engineering Slide 1 What is cloud computing? SaaS: Software as a Service Cloud: Datacenters hardware
Scala Storage Scale-Out Clustered Storage White Paper
White Paper Scala Storage Scale-Out Clustered Storage White Paper Chapter 1 Introduction... 3 Capacity - Explosive Growth of Unstructured Data... 3 Performance - Cluster Computing... 3 Chapter 2 Current
WHITE PAPER 1 WWW.FUSIONIO.COM
1 WWW.FUSIONIO.COM WHITE PAPER WHITE PAPER Executive Summary Fusion iovdi is the first desktop- aware solution to virtual desktop infrastructure. Its software- defined approach uniquely combines the economics
InfiniteGraph: The Distributed Graph Database
A Performance and Distributed Performance Benchmark of InfiniteGraph and a Leading Open Source Graph Database Using Synthetic Data Objectivity, Inc. 640 West California Ave. Suite 240 Sunnyvale, CA 94086
Windows Server Performance Monitoring
Spot server problems before they are noticed The system s really slow today! How often have you heard that? Finding the solution isn t so easy. The obvious questions to ask are why is it running slowly
Agenda. Tomcat Versions Troubleshooting management Tomcat Connectors HTTP Protocal and Performance Log Tuning JVM Tuning Load balancing Tomcat
Agenda Tomcat Versions Troubleshooting management Tomcat Connectors HTTP Protocal and Performance Log Tuning JVM Tuning Load balancing Tomcat Tomcat Performance Tuning Tomcat Versions Application/System
Shoal: IaaS Cloud Cache Publisher
University of Victoria Faculty of Engineering Winter 2013 Work Term Report Shoal: IaaS Cloud Cache Publisher Department of Physics University of Victoria Victoria, BC Mike Chester V00711672 Work Term 3
Why Threads Are A Bad Idea (for most purposes)
Why Threads Are A Bad Idea (for most purposes) John Ousterhout Sun Microsystems Laboratories [email protected] http://www.sunlabs.com/~ouster Introduction Threads: Grew up in OS world (processes).
High Availability Essentials
High Availability Essentials Introduction Ascent Capture s High Availability Support feature consists of a number of independent components that, when deployed in a highly available computer system, result
Contents Introduction... 5 Deployment Considerations... 9 Deployment Architectures... 11
Oracle Primavera Contract Management 14.1 Sizing Guide July 2014 Contents Introduction... 5 Contract Management Database Server... 5 Requirements of the Contract Management Web and Application Servers...
Petascale Software Challenges. Piyush Chaudhary [email protected] High Performance Computing
Petascale Software Challenges Piyush Chaudhary [email protected] High Performance Computing Fundamental Observations Applications are struggling to realize growth in sustained performance at scale Reasons
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
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
SIDN Server Measurements
SIDN Server Measurements Yuri Schaeffer 1, NLnet Labs NLnet Labs document 2010-003 July 19, 2010 1 Introduction For future capacity planning SIDN would like to have an insight on the required resources
Wisdom from Crowds of Machines
Wisdom from Crowds of Machines Analytics and Big Data Summit September 19, 2013 Chetan Conikee Irfan Ahmad About Us CloudPhysics' mission is to discover the underlying principles that govern systems behavior
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
IBM Tivoli Composite Application Manager for Microsoft Applications: Microsoft Internet Information Services Agent Version 6.3.1 Fix Pack 2.
IBM Tivoli Composite Application Manager for Microsoft Applications: Microsoft Internet Information Services Agent Version 6.3.1 Fix Pack 2 Reference IBM Tivoli Composite Application Manager for Microsoft
Enterprise Applications
Enterprise Applications Chi Ho Yue Sorav Bansal Shivnath Babu Amin Firoozshahian EE392C Emerging Applications Study Spring 2003 Functionality Online Transaction Processing (OLTP) Users/apps interacting
COSC 6374 Parallel Computation. Parallel I/O (I) I/O basics. Concept of a clusters
COSC 6374 Parallel Computation Parallel I/O (I) I/O basics Spring 2008 Concept of a clusters Processor 1 local disks Compute node message passing network administrative network Memory Processor 2 Network
From Internet Data Centers to Data Centers in the Cloud
From Internet Data Centers to Data Centers in the Cloud This case study is a short extract from a keynote address given to the Doctoral Symposium at Middleware 2009 by Lucy Cherkasova of HP Research Labs
Architecting ColdFusion For Scalability And High Availability. Ryan Stewart Platform Evangelist
Architecting ColdFusion For Scalability And High Availability Ryan Stewart Platform Evangelist Introduction Architecture & Clustering Options Design an architecture and develop applications that scale
Direct NFS - Design considerations for next-gen NAS appliances optimized for database workloads Akshay Shah Gurmeet Goindi Oracle
Direct NFS - Design considerations for next-gen NAS appliances optimized for database workloads Akshay Shah Gurmeet Goindi Oracle Agenda Introduction Database Architecture Direct NFS Client NFS Server
Performance Analysis of Web based Applications on Single and Multi Core Servers
Performance Analysis of Web based Applications on Single and Multi Core Servers Gitika Khare, Diptikant Pathy, Alpana Rajan, Alok Jain, Anil Rawat Raja Ramanna Centre for Advanced Technology Department
Testing & Assuring Mobile End User Experience Before Production. Neotys
Testing & Assuring Mobile End User Experience Before Production Neotys Agenda Introduction The challenges Best practices NeoLoad mobile capabilities Mobile devices are used more and more At Home In 2014,
Streaming and Virtual Hosted Desktop Study
White Paper Intel Information Technology Streaming, Virtual Hosted Desktop, Computing Models, Client Virtualization Streaming and Virtual Hosted Desktop Study Benchmarking Results As part of an ongoing
How To Test A Web Server
Performance and Load Testing Part 1 Performance & Load Testing Basics Performance & Load Testing Basics Introduction to Performance Testing Difference between Performance, Load and Stress Testing Why Performance
Azul Compute Appliances
W H I T E P A P E R Azul Compute Appliances Ultra-high Capacity Building Blocks for Scalable Compute Pools WP_ACA0209 2009 Azul Systems, Inc. W H I T E P A P E R : A z u l C o m p u t e A p p l i a n c
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
Liferay Portal Performance. Benchmark Study of Liferay Portal Enterprise Edition
Liferay Portal Performance Benchmark Study of Liferay Portal Enterprise Edition Table of Contents Executive Summary... 3 Test Scenarios... 4 Benchmark Configuration and Methodology... 5 Environment Configuration...
What Is Specific in Load Testing?
What Is Specific in Load Testing? Testing of multi-user applications under realistic and stress loads is really the only way to ensure appropriate performance and reliability in production. Load testing
MuleSoft Blueprint: Load Balancing Mule for Scalability and Availability
MuleSoft Blueprint: Load Balancing Mule for Scalability and Availability Introduction Integration applications almost always have requirements dictating high availability and scalability. In this Blueprint
Optimizing TCP Forwarding
Optimizing TCP Forwarding Vsevolod V. Panteleenko and Vincent W. Freeh TR-2-3 Department of Computer Science and Engineering University of Notre Dame Notre Dame, IN 46556 {vvp, vin}@cse.nd.edu Abstract
Distributed File System. MCSN N. Tonellotto Complements of Distributed Enabling Platforms
Distributed File System 1 How do we get data to the workers? NAS Compute Nodes SAN 2 Distributed File System Don t move data to workers move workers to the data! Store data on the local disks of nodes
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...
B M C S O F T W A R E, I N C. BASIC BEST PRACTICES. Ross Cochran Principal SW Consultant
B M C S O F T W A R E, I N C. PATROL FOR WEBSPHERE APPLICATION SERVER BASIC BEST PRACTICES Ross Cochran Principal SW Consultant PAT R O L F O R W E B S P H E R E A P P L I C AT I O N S E R V E R BEST PRACTICES
An introduction to Apache Traffic Server. Leif Hedstrom December 2011
An introduction to Apache Traffic Server Leif Hedstrom December 2011 Who am I? One of the drivers to open source Traffic Server (at Yahoo) Committer for Apache Traffic Server VP of Apache Traffic Server
http://support.oracle.com/
Oracle Primavera Contract Management 14.0 Sizing Guide October 2012 Legal Notices Oracle Primavera Oracle Primavera Contract Management 14.0 Sizing Guide Copyright 1997, 2012, Oracle and/or its affiliates.
Perfmon counters for Enterprise MOSS
Perfmon counters for Enterprise MOSS # Counter What does it measure or can tell us Threshold [Action taken if] Notes PROCESSOR RELATED COUNTERS 1 Processor(_Total)\% Measures average processor utilization
Achieving Nanosecond Latency Between Applications with IPC Shared Memory Messaging
Achieving Nanosecond Latency Between Applications with IPC Shared Memory Messaging In some markets and scenarios where competitive advantage is all about speed, speed is measured in micro- and even nano-seconds.
Running a Workflow on a PowerCenter Grid
Running a Workflow on a PowerCenter Grid 2010-2014 Informatica Corporation. No part of this document may be reproduced or transmitted in any form, by any means (electronic, photocopying, recording or otherwise)
Mark Bennett. Search and the Virtual Machine
Mark Bennett Search and the Virtual Machine Agenda Intro / Business Drivers What to do with Search + Virtual What Makes Search Fast (or Slow!) Virtual Platforms Test Results Trends / Wrap Up / Q & A Business
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: [email protected],
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
OpenFlow Based Load Balancing
OpenFlow Based Load Balancing Hardeep Uppal and Dane Brandon University of Washington CSE561: Networking Project Report Abstract: In today s high-traffic internet, it is often desirable to have multiple
Design and Performance of a Web Server Accelerator
Design and Performance of a Web Server Accelerator Eric Levy-Abegnoli, Arun Iyengar, Junehwa Song, and Daniel Dias IBM Research T. J. Watson Research Center P. O. Box 74 Yorktown Heights, NY 598 Abstract
MailEnable Scalability White Paper Version 1.2
MailEnable Scalability White Paper Version 1.2 Table of Contents 1 Overview...2 2 Core architecture...3 2.1 Configuration repository...3 2.2 Storage repository...3 2.3 Connectors...3 2.3.1 SMTP Connector...3
Web Email DNS Peer-to-peer systems (file sharing, CDNs, cycle sharing)
1 1 Distributed Systems What are distributed systems? How would you characterize them? Components of the system are located at networked computers Cooperate to provide some service No shared memory Communication
Business Application Services Testing
Business Application Services Testing Curriculum Structure Course name Duration(days) Express 2 Testing Concept and methodologies 3 Introduction to Performance Testing 3 Web Testing 2 QTP 5 SQL 5 Load
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
PERFORMANCE TUNING ORACLE RAC ON LINUX
PERFORMANCE TUNING ORACLE RAC ON LINUX By: Edward Whalen Performance Tuning Corporation INTRODUCTION Performance tuning is an integral part of the maintenance and administration of the Oracle database
Top 10 Reasons why MySQL Experts Switch to SchoonerSQL - Solving the common problems users face with MySQL
SCHOONER WHITE PAPER Top 10 Reasons why MySQL Experts Switch to SchoonerSQL - Solving the common problems users face with MySQL About Schooner Information Technology Schooner Information Technology provides
A Scalability Study for WebSphere Application Server and DB2 Universal Database
A Scalability Study for WebSphere Application and DB2 Universal Database By Yongli An, Tsz Kin Tony Lau, and Peter Shum DB2 Universal Database Performance & Advanced Technology IBM Toronto Lab, IBM Canada
Using Apache Derby in the real world
Apache Derby a 100% Java Open Source RDBMS Using Apache Derby in the real world Victorian AJUG, Australia 28 th August 2008 Chris Dance Chris Dance Introduction Director and Found of PaperCut Software
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
Network Infrastructure Services CS848 Project
Quality of Service Guarantees for Cloud Services CS848 Project presentation by Alexey Karyakin David R. Cheriton School of Computer Science University of Waterloo March 2010 Outline 1. Performance of cloud
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
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:
Cisco UCS and Fusion- io take Big Data workloads to extreme performance in a small footprint: A case study with Oracle NoSQL database
Cisco UCS and Fusion- io take Big Data workloads to extreme performance in a small footprint: A case study with Oracle NoSQL database Built up on Cisco s big data common platform architecture (CPA), a
CommuniGate Pro White Paper. Dynamic Clustering Solution. For Reliable and Scalable. Messaging
CommuniGate Pro White Paper Dynamic Clustering Solution For Reliable and Scalable Messaging Date April 2002 Modern E-Mail Systems: Achieving Speed, Stability and Growth E-mail becomes more important each
DYNAMIC LOAD BALANCING IN CLIENT SERVER ARCHITECTURE
DYNAMIC LOAD BALANCING IN CLIENT SERVER ARCHITECTURE PROJECT OF COEN233 SUBMITTED BY Aparna R Lalita V Sanjeev C 12/10/2013 INSTRUCTOR Dr. Prof Ming-Hwa Wang Santa Clara University 1 TABLE OF CONTENTS
Responsive, resilient, elastic and message driven system
Responsive, resilient, elastic and message driven system solving scalability problems of course registrations Janina Mincer-Daszkiewicz, University of Warsaw [email protected] Dundee, 2015-06-14 Agenda
White Paper. How Streaming Data Analytics Enables Real-Time Decisions
White Paper How Streaming Data Analytics Enables Real-Time Decisions Contents Introduction... 1 What Is Streaming Analytics?... 1 How Does SAS Event Stream Processing Work?... 2 Overview...2 Event Stream
Quantum StorNext. Product Brief: Distributed LAN Client
Quantum StorNext Product Brief: Distributed LAN Client NOTICE This product brief may contain proprietary information protected by copyright. Information in this product brief is subject to change without
