Apache API Notes Robert S. Thau (Presented by Justin Erenkrantz)

Slides:



Advertisements
Similar presentations
HTTP and Apache Roy T. Fielding eBuilt, Inc. The Apache Software Foundation
Advertisements

Other Web Application Development Technologies. PHP.
Kit Chan ATS Lua Plugin Kit Chan Hi, My name is kit.
A Blackboard Building Block™ Crash Course for Web Developers
Extensibility, Safety and Performance in the SPIN Operating System Presented by Allen Kerr.
UNDERSTANDING JAVA APIS FOR MOBILE DEVICES v0.01.
Apache Web Server v. 2.2 Reference Manual Chapter 4 Multi-Processing Modules (MPMs)
SEDA: An Architecture for Well-Conditioned, Scalable Internet Services Matt Welsh, David Culler, and Eric Brewer Computer Science Division University of.
Mi-Joung choi, Hong-Taek Ju, Hyun-Jun Cha, Sook-Hyang Kim and J
Precept 3 COS 461. Concurrency is Useful Multi Processor/Core Multiple Inputs Don’t wait on slow devices.
Time Scalability Single User Unlimited Users 100s of Users Several Users PC based Single user Late 1980sNow PC based, file-level locking Single user or.
V0.01 © 2009 Research In Motion Limited Understanding Java APIs for Mobile Devices Trainer name Date.
RDMA ENABLED WEB SERVER Rajat Sharma. Objective  To implement a Web Server serving HTTP client requests through RDMA replacing the traditional TCP/IP.
Implementing ISA Server Caching. Caching Overview ISA Server supports caching as a way to improve the speed of retrieving information from the Internet.
Design and Implementation of a Server Director Project for the LCCN Lab at the Technion.
Java Server Team 8. Overview What is a Java Server? History Architecture Advantages Disadvantages Current Technologies Conclusion.
Internet Information Server (IIS)
VSP Video Station Protocol Presented by : Mittelman Dana Ben-Hamo Revital Ariel Tal Instructor : Sela Guy Presented by : Mittelman Dana Ben-Hamo Revital.
Session-01. What is a Servlet? Servlet can be described in many ways, depending on the context: 1.Servlet is a technology i.e. used to create web application.
Applets & Servlets.
Drupal Training Syllabus Chaitanya Lakshmi
APACHE 2.0 A Look Under the Hood CHUUG, June 2002 by Cliff Woolley
Chapter 1: Introduction to Web Applications. This chapter gives an overview of the Internet, and where the World Wide Web fits in. It then outlines the.
Putting What We Learned Into Context – WSGI and Web Frameworks A290/A590, Fall /16/2014.
1 Apache. 2 Module - Apache ♦ Overview This module focuses on configuring and customizing Apache web server. Apache is a commonly used Hypertext Transfer.
Webcommerce Computer Networks Webcommerce by Linnea Reppa Douglas Martindale Lev Shalevich.
© 2001 Covalent Technologies – Commercial in Confidence – 29 January Writing Apache 2.0 Modules and porting 1.3 modules to 2.0 Dirk-Willem van.
Large scale IP filtering using Apache Pig and case study Kaushik Chandrasekaran Nabeel Akheel.
Http protocol Response-request Clients not limited to web browsers. Anything that can access code implementing the protocol works: –Standalone programs.
.htaccess Apache server directives BTM 395: Internet Programming.
Module 7: Advanced Application and Web Filtering.
AxKit A member of the Apache XML project Ryan Maslyn Kyle Bechtel.
Processes CSCI 4534 Chapter 4. Introduction Early computer systems allowed one program to be executed at a time –The program had complete control of the.
JS (Java Servlets). Internet evolution [1] The internet Internet started of as a static content dispersal and delivery mechanism, where files residing.
Security Issues with PHP  PHP installation  PHP programming Willa Zhu & Eugene Burger.
Processes and Virtual Memory
CSI 3125, Preliminaries, page 1 SERVLET. CSI 3125, Preliminaries, page 2 SERVLET A servlet is a server-side software program, written in Java code, that.
SEDA An architecture for Well-Conditioned, scalable Internet Services Matt Welsh, David Culler, and Eric Brewer University of California, Berkeley Symposium.
Threads. Readings r Silberschatz et al : Chapter 4.
Apache Web Server Architecture Chaitanya Kulkarni MSCS rd April /23/20081Apache Web Server Architecture.
Performance Optimization in Apache 2.0 Development: How we made Apache faster, and what we learned from the experience O’Reilly Open.
By Ruizhe Ma, Avinash Madineni Sidoine Lafleur Kamgang Nov,
Win32 Programming Lesson 19: Introduction to DLLs.
HPC pilot code. Danila Oleynik 18 December 2013 from.
MINIX Presented by: Clinton Morse, Joseph Paetz, Theresa Sullivan, and Angela Volk.
Unified Parallel C at LBNL/UCB Berkeley UPC Runtime Report Jason Duell LBNL September 9, 2004.
Session 11: Cookies, Sessions ans Security iNET Academy Open Source Web Development.
WStore Programmer Guide Resources management integration.
Beyond Application Profiling to System Aware Analysis Elena Laskavaia, QNX Bill Graham, QNX.
Apache Web Server v. 2.2 Reference Manual Chapter 2 Starting Apache.
Module 4: Troubleshooting Web Servers. Overview Use IIS 7.0 troubleshooting features to gather troubleshooting information Use the Runtime Control and.
Overview A) Power on or reset B) 1st stage boot loader C) 2nd stage boot loader D) Operate system.
Name of Presentation Red Hat Presenter RED HAT Developer conference Brno 2009 Mobicents/JBCP Pavel Slegr.
Linux Optimization Kit Many developers need to get a performance increase from their Linux OS Linux OK allows users to achieve higher performance.
Threads vs. Events SEDA – An Event Model 5204 – Operating Systems.
Apache Web Server v. 2.2 Reference Manual
Node.js Express Web Applications
CS 6560: Operating Systems Design
Processes The most important processes used in Web-based systems and their internal organization.
Semester Review Chris Gill CSE 422S - Operating Systems Organization
File service architecture
Optimize Your Java Code By Tools
Moodle Scalability What is Scalability?
HTTP Request Method URL Protocol Version GET /index.html HTTP/1.1
INTRODUCTION TO By Stepan Vardanyan.
Building production-ready APIs with ASP.NET Core 2.2
Introduction to Servlet
Web Servers (IIS and Apache)
Message Passing Systems Version 2
Mr. M. D. Jamadar Assistant Professor
Presentation transcript:

Apache API Notes Robert S. Thau (Presented by Justin Erenkrantz)

Introduction Allow third-parties to extend product Expose as much as possible C Modules –Provides hooks and handlers –May execute arbitrary code –May be controlled by configuration directives

Approach Hooks –Run at well-defined stages of execution –Run for all requests Handlers –Responsible for serving content –Only run for specific requests –May accept or decline request

Apache 1.3 Hook Stages Translate URI->File Check user Auth check Access check Type check Fixer Upper Logger Header Parser Child Init Child Exit Post Read Request

Apache 1.3 Data Model Memory Pools –No malloc()/free() –Used to optimize memory allocation –Cleanups request_rec, conn_rec –Core data structures –Access to headers, file structure

Strength and Weaknesses Proved worth Lots of functionality never envisioned Fairly robust Tied to HTTP Tied to files Inability to layer No ability to thread

Observations Apache HTTP Server 2.0 addresses some of these concerns –Filters and Bucket Brigades –Threaded processing –Multi-protocol support Requires rewrite of modules