PHP PERFORMANCE. Principles and Tools. By Kevin Schroeder Technology Evangelist Zend Technologies. Copyright 2007, Zend Technologies Inc.

Size: px
Start display at page:

Download "PHP PERFORMANCE. Principles and Tools. By Kevin Schroeder Technology Evangelist Zend Technologies. Copyright 2007, Zend Technologies Inc."

Transcription

1 PHP PERFORMANCE Principles and Tools By Kevin Schroeder Technology Evangelist Zend Technologies Copyright 2007, Zend Technologies Inc.

2 About me Kevin Schroeder Technology Evangelist for Zend Programmer Sys Admin Author IBM i Programmer s Guide to PHP You want to do WHAT with PHP? Coming up Race Ferraris on the weekend My Honda has a dismal win record

3 If you have a question you can Type in the Q&A panel Tweet #zendperf Follow us! (or search for Zend) (me!)

4 Things we ll look at Database Network Latency IO Contention CPU utilization Network Connectivity Best Practices/Pit Falls/Things to consider

5 Performance Database Tools Zend Server A distinct group of monitoring options for DB s Inter-application query monitoring, usually via a DB adapter abstraction layer Symptoms Pages take a long time to load with Apache/IIS/PHP using proportionally less of the CPU time Causes The list could go on for 1x10 5 slides

6 Performance - Database Possible remedies Simplify your queries Make your queries more complex Tune your database

7 Performance Network Latency Tools Zend Server monitor slow socket function execution Wireshark Tcpdump Symptoms Depends on where the latency is occurring Often slow page responses with low CPU usage Causes Network Saturation (probably not too likely) DNS Reverse Lookups TCP Handshakes High number of hops and much more

8 The TCP handshake T/TCP SYN + Response Data + FIN T/TCP SYN + Response Data + ACK +FIN ACK

9 Hops (not the good kind) Server Client HTTP Layer 7 HTTP Layer 7 UTF-8 Layer 6 TCP Layer 4 Switch/Router UTF-8 Layer 6 TCP Layer 4 IP Layer 3 IP Layer 3 IP Layer 3 IP Layer 3 Ethernet Layer 2 Ethernet Layer 2 Ethernet Layer 2 Ethernet Layer 2 Physical Layer 1 Physical Layer 1 Physical Layer 1 Physical Layer 1

10 Performance IO Contention Tools Zend Server (in extreme cases, long fopen() calls) vmstat & top (Linux) System Internals Process Explorer (Windows) Symptoms Unpredictable and difficult to reproduce page load times Causes Too few spindles serving too much data High write concurrency Insufficient free system RAM

11 Performance CPU Utilization Tools top (Linux) System Internals Process Explorer (Windows) Symptoms Page load times either correspond directly to CPU utilization or are consistently slow Causes Bad code or over-architected solutions Excessive recursion Excessive IO High server utilization too few servers serving too much traffic

12 Performance CPU Utilization There are often 2 different paths this can follow User time Time spent executing the code that you wrote System time Time spent running functionality that your code calls, such as networking, file system, etc.

13 Performance Network Connectivity Tools Zend Server monitor failed calls to socket_connect(), fsockopen() or fread() Wireshark Tcpdump Symptoms Database or web service calls take long to execute If read functions die unexpectedly, bad network hardware might be a cause

14 Choosing the right architecture If you deal with large collections of data, be careful of various ORM techniques or data access methods. This can pertain to the cloud too Limit 100 Limit 500 Limit 1000 Unlimited (250k) Active Record Collection Difference (Col * Dif) = AR

15 OO Beware of magic! get, set, call Situations where they are often used When representing another object that it has no knowledge of - I.e. Soap requests, COM objects, Java objects, database tables When there are property-level permissions on an object s properties. Keeping the properties private and using get/set to determine access If used sparingly they won t affect you, but many modern applications have lots of recursion or large underlying architectures that can have unpredicted consequences

16 !Preg Use preg_match for data checking only when you have to stripos( $website) is over twice as fast as preg_match( / $website) ctype_alnum() is almost 5 times as fast as preg_match( /^\s*$/ ); Casting if ($test == (int)$test) is well over 5 times faster than preg_match( /^\d*$/)

17 Code Acceleration From a test on Wordpress Without acceleration Requests per second: 2.28 Time per request: ms With acceleration Requests per second: 8.11 Time per request: ms 4-fold increase in performance by flipping a (free) switch Zend Server CE is free and has this. You have no excuse!!

18 Do you queue? Offloading long running processes to a queuing system can help make your front end servers scale more vertically Examples include Job Queues Zend Platform/Zend Server 5 Gearman Message Queues ActiveMQ RabbitMQ

19 What not to do This is not complete!!! Oh we ll just cache it Our NFS server is just fine for serving PHP files That LIKE query is necessary You may need to structure your data a little different You might need to use a search engine instead Zend_Search_Lucene SOLR Using arrays is faster than objects, we ll use them instead Monitoring/diagnostic tools are too expensive

20 What TO do This is not complete!!! Minimize require_once calls/use an autoloader Try to make your architecture more horizontal rather than vertical People from Java backgrounds tend to go more vertical Use Lazy Loading/Load on Demand THINK before you code!! Don t just do something because someone else is Use diagnostic tools! Zend Server Monitoring and Code Tracing Zend Studio Profiler (pays for itself if you are 0.5% more productive in a year (according to my calculation)

21 Non-PHP PHP performance rules PHP performance is not the only factor in determining the overall performance of a website. Here are some suggestions Make fewer HTTP requests Use an Expires header Gzip cached content Put stylesheets at the top Put Javascript at the bottom Reduce DNS lookups Avoid redirects

22 Non-PHP PHP performance rules Be aware of your page size Microsoft 238kb 4.4 seconds Oracle 104kb 861ms IBM 640 kb 4.6 seconds Zend 183kb 2.4 seconds There is a fairly direct relationship between the amount of data on your web page and the render time

23 Non-PHP PHP performance rules Similarly, be careful when dealing with lots of Ajax data The browser needs to process that data With large data sets the browser may take a while to update the DOM 2 options Use staggered loading Pass rendered content to the browser and attach with innerhtml

24 Questions?

25 Fin Kevin Schroeder

Guidelines for deploying PHP applications

Guidelines for deploying PHP applications Guidelines for deploying PHP applications By Kevin Schroeder Technology Evangelist Zend Technologies About me Kevin Schroeder Technology Evangelist for Zend Programmer Sys Admin Author IBM i Programmer

More information

PHP Security. Kevin Schroeder Zend Technologies. Copyright 2007, Zend Technologies Inc.

PHP Security. Kevin Schroeder Zend Technologies. Copyright 2007, Zend Technologies Inc. PHP Security Kevin Schroeder Zend Technologies Copyright 2007, Zend Technologies Inc. Disclaimer Do not use anything you learn here for nefarious purposes Why Program Securely? Your job/reputation depends

More information

Improve Web Application Performance with Zend Platform

Improve Web Application Performance with Zend Platform Improve Web Application Performance with Zend Platform Shahar Evron Zend Sr. PHP Specialist Copyright 2007, Zend Technologies Inc. Agenda Benchmark Setup Comprehensive Performance Multilayered Caching

More information

BU-2 How Protocols Work 16 June 2009

BU-2 How Protocols Work 16 June 2009 BU-2 How Protocols Work 16 June 2009 Ray Tompkins Founder & CEO SHARKFEST '09 Stanford University June 15-18, 2009 How Protocols Work Presentation Overview The Challenge Understanding How Protocols Work

More information

Zend PHP Cloud Application Platform

Zend PHP Cloud Application Platform Zend PHP Cloud Application Platform Kevin Schroeder Technology Evangelist About me Past: Programming/Sys Admin Current: Technology Evangelist/Author/Composer @kpschrade Is this a new product? No! It is

More information

90 Minute Optimization Life Cycle

90 Minute Optimization Life Cycle 90 Minute Optimization Life Cycle Fast by Default before our eyes Author of presentation Today s Hosts Hooman Beheshti VP Products Strangeloop Joshua Bixby President Strangeloop 2010 Strangeloop Networks

More information

Features of a proxy server: - Nowadays, by using TCP/IP within local area networks, the relaying role that the proxy

Features of a proxy server: - Nowadays, by using TCP/IP within local area networks, the relaying role that the proxy Que: -Proxy server Introduction: Proxy simply means acting on someone other s behalf. A Proxy acts on behalf of the client or user to provide access to a network service, and it shields each side from

More information

Real Life Web Development. Joseph Paul Cohen

Real Life Web Development. Joseph Paul Cohen Real Life Web Development Joseph Paul Cohen joecohen@cs.umb.edu Index 201 - The code 404 - How to run it? 500 - Your code is broken? 200 - Someone broke into your server? 400 - How are people using your

More information

The Care and Feeding of a MySQL Database for Linux Adminstrators. Dave Stokes MySQL Community Manager

The Care and Feeding of a MySQL Database for Linux Adminstrators. Dave Stokes MySQL Community Manager The Care and Feeding of a MySQL Database for Linux Adminstrators Dave Stokes MySQL Community Manager David.Stokes@Oracle.com Simple Introduction This is a general introduction to running a MySQL database

More information

OS-caused Long JVM Pauses - Deep Dive and Solutions

OS-caused Long JVM Pauses - Deep Dive and Solutions OS-caused Long JVM Pauses - Deep Dive and Solutions Zhenyun Zhuang LinkedIn Corp., Mountain View, California, USA https://www.linkedin.com/in/zhenyun Zhenyun@gmail.com 2016-4-21 Outline q Introduction

More information

Executive Summary. Performance Report for: The web should be fast. Top 4 Priority Issues

Executive Summary. Performance Report for:   The web should be fast. Top 4 Priority Issues The web should be fast. Executive Summary Performance Report for: https://www.wpspeedupoptimisation.com/ Report generated: Test Server Region: Using: Tue,, 2018, 12:04 PM -0800 London, UK Chrome (Desktop)

More information

CCNA 1 Chapter 7 v5.0 Exam Answers 2013

CCNA 1 Chapter 7 v5.0 Exam Answers 2013 CCNA 1 Chapter 7 v5.0 Exam Answers 2013 1 A PC is downloading a large file from a server. The TCP window is 1000 bytes. The server is sending the file using 100-byte segments. How many segments will the

More information

The Z-Files: Field reports from the world of business critical PHP applications

The Z-Files: Field reports from the world of business critical PHP applications The Z-Files: Field reports from the world of business critical PHP applications By Axel Schinke Senior Manager of Global Operations for Global Services About this webinar Field reports from Zend Consulting

More information

Internet Technology 3/2/2016

Internet Technology 3/2/2016 Question 1 Defend or contradict this statement: for maximum efficiency, at the expense of reliability, an application should bypass TCP or UDP and use IP directly for communication. Internet Technology

More information

Improve WordPress performance with caching and deferred execution of code. Danilo Ercoli Software Engineer

Improve WordPress performance with caching and deferred execution of code. Danilo Ercoli Software Engineer Improve WordPress performance with caching and deferred execution of code Danilo Ercoli Software Engineer http://daniloercoli.com Agenda PHP Caching WordPress Page Caching WordPress Object Caching Deferred

More information

Real World Web Scalability. Ask Bjørn Hansen Develooper LLC

Real World Web Scalability. Ask Bjørn Hansen Develooper LLC Real World Web Scalability Ask Bjørn Hansen Develooper LLC Hello. 28 brilliant methods to make your website keep working past $goal requests/transactions/sales per second/hour/day Requiring minimal extra

More information

Drupal Frontend Performance & Scalability

Drupal Frontend Performance & Scalability Riverside Drupal Meetup @ Riverside.io August 14, 2014 Christefano Reyes christo@larks.la, @christefano Who's Your Presenter? Who's Your Presenter? Why We Care About Performance Who's Your Presenter? Why

More information

Executive Summary. Performance Report for: https://edwardtbabinski.us/blogger/social/index. The web should be fast. How does this affect me?

Executive Summary. Performance Report for: https://edwardtbabinski.us/blogger/social/index. The web should be fast. How does this affect me? The web should be fast. Executive Summary Performance Report for: https://edwardtbabinski.us/blogger/social/index Report generated: Test Server Region: Using: Analysis options: Tue,, 2017, 4:21 AM -0400

More information

CHAPTER 1: A REFRESHER ON WEB BROWSERS 3

CHAPTER 1: A REFRESHER ON WEB BROWSERS 3 INTRODUCTION xxiii PART I: FRONT END CHAPTER 1: A REFRESHER ON WEB BROWSERS 3 A Brief History of Web Browsers 3 Netscape Loses Its Dominance 4 The Growth of Firefox 4 The Present 5 Inside HTTP 5 The HyperText

More information

ECE 435 Network Engineering Lecture 10

ECE 435 Network Engineering Lecture 10 ECE 435 Network Engineering Lecture 10 Vince Weaver http://web.eece.maine.edu/~vweaver vincent.weaver@maine.edu 28 September 2017 Announcements HW#4 was due HW#5 will be posted. midterm/fall break You

More information

Internet Content Distribution

Internet Content Distribution Internet Content Distribution Chapter 1: Introduction Jussi Kangasharju Chapter Outline Introduction into content distribution Basic concepts TCP DNS HTTP Outline of the rest of the course Kangasharju:

More information

Evaluating external network bandwidth load for Google Apps

Evaluating external network bandwidth load for Google Apps Evaluating external network bandwidth load for Google Apps This document describes how to perform measurements to better understand how much network load will be caused by using a software as a service

More information

Improving Application Performance by Submitting Scripts to Batch using Zend Server for IBM i

Improving Application Performance by Submitting Scripts to Batch using Zend Server for IBM i Improving Application Performance by Submitting Scripts to Batch using Zend Server for IBM i Mike Pavlak Solution Consultant mike.p@zend.com Insert->Header 1 & Footer Agenda Overview of Zend Server Advantages

More information

Wireshark in the Large Enterprise

Wireshark in the Large Enterprise Wireshark in the Large Enterprise Hansang Bae, Director Riverbed Performance Management, Architect http://www.youtube.com/hansangb has the Camtasia recorded sessions. https://www.box.com/sharkfest2013

More information

Internet Technology. 06. Exam 1 Review Paul Krzyzanowski. Rutgers University. Spring 2016

Internet Technology. 06. Exam 1 Review Paul Krzyzanowski. Rutgers University. Spring 2016 Internet Technology 06. Exam 1 Review Paul Krzyzanowski Rutgers University Spring 2016 March 2, 2016 2016 Paul Krzyzanowski 1 Question 1 Defend or contradict this statement: for maximum efficiency, at

More information

Performance Case Study

Performance Case Study Performance Case Study @Fabian_Frank Yahoo! Search, Engineer Youthmedia.eu, Volunteer A Dynamic Website self-contained App self-contained App self-contained App node v0.4.x multi-core

More information

IBM i Modernization with PHP

IBM i Modernization with PHP IBM i Modernization with PHP Mike Pavlak Solution Consultant mike.p@zend.com Alison Butterill Application Development Offering Manager, IBM Power Systems Software Insert->Header 1 & Footer Agenda IBM Application

More information

TCP Tuning for the Web

TCP Tuning for the Web TCP Tuning for the Web Jason Cook - @macros - jason@fastly.com Me Co-founder and Operations at Fastly Former Operations Engineer at Wikia Lots of Sysadmin and Linux consulting The Goal Make the best use

More information

Building your own BMC Remedy AR System v7 Applications. Maruthi Dogiparthi

Building your own BMC Remedy AR System v7 Applications. Maruthi Dogiparthi Building your own BMC Remedy AR System v7 Applications Maruthi Dogiparthi Agenda Introduction New Goodies Navigation, tree widgets Data Visualization Plug-in framework Development Guidelines Tools BMC

More information

Executive Summary. Performance Report for: The web should be fast. Top 1 Priority Issues. How does this affect me?

Executive Summary. Performance Report for:   The web should be fast. Top 1 Priority Issues. How does this affect me? The web should be fast. Executive Summary Performance Report for: http://instantwebapp.co.uk/8/ Report generated: Test Server Region: Using: Fri, May 19, 2017, 4:01 AM -0700 Vancouver, Canada Firefox (Desktop)

More information

4.0.1 CHAPTER INTRODUCTION

4.0.1 CHAPTER INTRODUCTION 4.0.1 CHAPTER INTRODUCTION Data networks and the Internet support the human network by supplying seamless, reliable communication between people - both locally and around the globe. On a single device,

More information

Executive Summary. Performance Report for: The web should be fast. Top 5 Priority Issues. How does this affect me?

Executive Summary. Performance Report for:   The web should be fast. Top 5 Priority Issues. How does this affect me? The web should be fast. Executive Summary Performance Report for: http://idwebcare.nl/ Report generated: Test Server Region: Using: Tue, Aug 29, 2017, 5:08 AM -0700 Vancouver, Canada Firefox (Desktop)

More information

CNIT 129S: Securing Web Applications. Ch 3: Web Application Technologies

CNIT 129S: Securing Web Applications. Ch 3: Web Application Technologies CNIT 129S: Securing Web Applications Ch 3: Web Application Technologies HTTP Hypertext Transfer Protocol (HTTP) Connectionless protocol Client sends an HTTP request to a Web server Gets an HTTP response

More information

ò Server can crash or be disconnected ò Client can crash or be disconnected ò How to coordinate multiple clients accessing same file?

ò Server can crash or be disconnected ò Client can crash or be disconnected ò How to coordinate multiple clients accessing same file? Big picture (from Sandberg et al.) NFS Don Porter CSE 506 Intuition Challenges Instead of translating VFS requests into hard drive accesses, translate them into remote procedure calls to a server Simple,

More information

NFS. Don Porter CSE 506

NFS. Don Porter CSE 506 NFS Don Porter CSE 506 Big picture (from Sandberg et al.) Intuition ò Instead of translating VFS requests into hard drive accesses, translate them into remote procedure calls to a server ò Simple, right?

More information

Zend Server 5.0 Code Tracing

Zend Server 5.0 Code Tracing Zend Server 5.0 Code Tracing Cohen Tzahi Product Manager Nov. 2009 Zend Server 5.0 Faster problem resolution with code tracing Better application performance with Job Queue Support for the new PHP 5.3

More information

UDP and TCP. Introduction. So far we have studied some data link layer protocols such as PPP which are responsible for getting data

UDP and TCP. Introduction. So far we have studied some data link layer protocols such as PPP which are responsible for getting data ELEX 4550 : Wide Area Networks 2015 Winter Session UDP and TCP is lecture describes the two most common transport-layer protocols used by IP networks: the User Datagram Protocol (UDP) and the Transmission

More information

EnGiNeErInG HtMl5 applications for better performance

EnGiNeErInG HtMl5 applications for better performance EnGiNeErInG HtMl5 applications for better performance LaUrI SvAn @laurisvan Sc5 OnLiNe @sc5 HtMl5 expertise at your service GiVe me something that I can UsE 15 YeArS ReTrOsPeCtIvE of My PeRsOnAl GeAr 1000

More information

CSCI-GA Operating Systems. Networking. Hubertus Franke

CSCI-GA Operating Systems. Networking. Hubertus Franke CSCI-GA.2250-001 Operating Systems Networking Hubertus Franke frankeh@cs.nyu.edu Source: Ganesh Sittampalam NYU TCP/IP protocol family IP : Internet Protocol UDP : User Datagram Protocol RTP, traceroute

More information

Last modification of document: by Tomasz Dobrzyński

Last modification of document: by Tomasz Dobrzyński Thank you for purchasing Gonzales. If you have any questions that are beyond the scope of this help file, please feel free to contact me using following form. If you need my help with installation or plugin

More information

Etanova Enterprise Solutions

Etanova Enterprise Solutions Etanova Enterprise Solutions Networking» 2018-02-24 http://www.etanova.com/technologies/networking Contents HTTP Web Servers... 6 Apache HTTPD Web Server... 6 Internet Information Services (IIS)... 6 Nginx

More information

Smart Database Architecture

Smart Database Architecture Smart Database Architecture Getting Great Performance by Using The Database As a Processing Engine Toon Koppelaars Real-World Performance Oracle Server Technologies Safe Harbor Statement The following

More information

Secure Access Troubleshooting Rewrite related issues (Core/Web Based Access)

Secure Access Troubleshooting Rewrite related issues (Core/Web Based Access) Secure Access Troubleshooting Rewrite related issues (Core/Web Based Access) Published June 2015 Why do certain web-based applications have issues through the rewrite engine compared to accessing the resource

More information

A Simple Network Analyzer Decoding TCP, UDP, DNS and DHCP headers

A Simple Network Analyzer Decoding TCP, UDP, DNS and DHCP headers A Simple Network Analyzer Decoding TCP, UDP, DNS and DHCP headers Objectives The main objective of this assignment is to gain a deeper understanding of network activities and network packet formats using

More information

Executive Summary. Performance Report for: The web should be fast. Top 5 Priority Issues. How does this affect me?

Executive Summary. Performance Report for:   The web should be fast. Top 5 Priority Issues. How does this affect me? The web should be fast. Executive Summary Performance Report for: https://designmartijn.nl/ Report generated: Test Server Region: Using: Sun, Sep 30, 2018, 7:29 AM -0700 Vancouver, Canada Chrome (Desktop)

More information

Final Exam for ECE374 05/03/12 Solution!!

Final Exam for ECE374 05/03/12 Solution!! ECE374: Second Midterm 1 Final Exam for ECE374 05/03/12 Solution!! Instructions: Put your name and student number on each sheet of paper! The exam is closed book. You have 90 minutes to complete the exam.

More information

Distributed Systems Exam 1 Review Paul Krzyzanowski. Rutgers University. Fall 2016

Distributed Systems Exam 1 Review Paul Krzyzanowski. Rutgers University. Fall 2016 Distributed Systems 2015 Exam 1 Review Paul Krzyzanowski Rutgers University Fall 2016 1 Question 1 Why did the use of reference counting for remote objects prove to be impractical? Explain. It s not fault

More information

IBM Integration Bus v9.0 System Administration: Course Content By Yuvaraj C Panneerselvam

IBM Integration Bus v9.0 System Administration: Course Content By Yuvaraj C Panneerselvam IBM Integration Bus v9.0 System Administration: Course Content By Yuvaraj C Panneerselvam 1. COURSE OVERVIEW As part of this course, you will learn how to administer IBM Integration Bus on distributed

More information

Historical Collection Best Practices. Version 2.0

Historical Collection Best Practices. Version 2.0 Historical Collection Best Practices Version 2.0 Ben Stern, Best Practices and Client Success Architect for Virtualization and Cloud bstern@us.ibm.com Copyright International Business Machines Corporation

More information

magento_1:full_page_cache https://amasty.com/docs/doku.php?id=magento_1:full_page_cache

magento_1:full_page_cache https://amasty.com/docs/doku.php?id=magento_1:full_page_cache magento_1:full_page_cache https://amasty.com/docs/doku.php?id=magento_1:full_page_cache For more details see the extension page. Speed up your Magento using cache to the full. Decrease pages time load

More information

Detects Potential Problems. Customizable Data Columns. Support for International Characters

Detects Potential Problems. Customizable Data Columns. Support for International Characters Home Buy Download Support Company Blog Features Home Features HttpWatch Home Overview Features Compare Editions New in Version 9.x Awards and Reviews Download Pricing Our Customers Who is using it? What

More information

Protocol Analysis: Capturing Packets

Protocol Analysis: Capturing Packets Protocol Analysis: Capturing Packets This project is intended to be done on your assigned Windows VM on the EiLab Network. This is, in part, because you must do this on a PC that you have administrative

More information

Connectionless and Connection-Oriented Protocols OSI Layer 4 Common feature: Multiplexing Using. The Transmission Control Protocol (TCP)

Connectionless and Connection-Oriented Protocols OSI Layer 4 Common feature: Multiplexing Using. The Transmission Control Protocol (TCP) Lecture (07) OSI layer 4 protocols TCP/UDP protocols By: Dr. Ahmed ElShafee ١ Dr. Ahmed ElShafee, ACU Fall2014, Computer Networks II Introduction Most data-link protocols notice errors then discard frames

More information

Performance by combining different log information. Daniel Stein Nürnberg,

Performance by combining different log information. Daniel Stein Nürnberg, Performance by combining different log information Daniel Stein Nürnberg, 22.11.2017 agenda about me introduction four examples conclusion 2 about me about me 32 years 10+ years experience Java / JDBC

More information

Transport: How Applications Communicate

Transport: How Applications Communicate Transport: How Applications Communicate Week 2 Philip Levis 1 7 Layers (or 4) 7. 6. 5. 4. 3. 2. 1. Application Presentation Session Transport Network Link Physical segments packets frames bits/bytes Application

More information

Application Architecture

Application Architecture Application Architecture Compatibility Flexibility Scalability Web Technologies Author: KM Newnham Edited by: SA Jost Last Update Date: 11/28/2016 Tel. 303.741.5711 Email. sales@adginc.net Web. www.adginc.net

More information

Transport Layer. <protocol, local-addr,local-port,foreign-addr,foreign-port> ϒ Client uses ephemeral ports /10 Joseph Cordina 2005

Transport Layer. <protocol, local-addr,local-port,foreign-addr,foreign-port> ϒ Client uses ephemeral ports /10 Joseph Cordina 2005 Transport Layer For a connection on a host (single IP address), there exist many entry points through which there may be many-to-many connections. These are called ports. A port is a 16-bit number used

More information

CSE/EE 461 Lecture 13 Connections and Fragmentation. TCP Connection Management

CSE/EE 461 Lecture 13 Connections and Fragmentation. TCP Connection Management CSE/EE 461 Lecture 13 Connections and Fragmentation Tom Anderson tom@cs.washington.edu Peterson, Chapter 5.2 TCP Connection Management Setup assymetric 3-way handshake Transfer sliding window; data and

More information

Deploying the BIG-IP System v10 with Oracle s BEA WebLogic

Deploying the BIG-IP System v10 with Oracle s BEA WebLogic DEPLOYMENT GUIDE Deploying the BIG-IP System v10 with Oracle s BEA WebLogic Version 1.0 Table of Contents Table of Contents Deploying the BIG-IP system v10 with Oracle s BEA WebLogic Prerequisites and

More information

March 2007 Oracle Spatial User Conference

March 2007 Oracle Spatial User Conference March 8, 2007 Henry B. Gonzalez Convention Center San Antonio, Texas USA Matthew Bafford GIS Consultant / Software Developer Designing GIS Applications for Mobile Web Devices Presentation Outline Existing

More information

Optimizing LAMP Development with PHP5

Optimizing LAMP Development with PHP5 Optimizing LAMP Development with PHP5 Wednesday, November 9, 2005 Jamil Hassan Spain NCSSM Database Administrator March 12, 2005 Presentation Agenda Simple Upgrade Method to PHP5 Enterprise LAMP Development

More information

Flash: an efficient and portable web server

Flash: an efficient and portable web server Flash: an efficient and portable web server High Level Ideas Server performance has several dimensions Lots of different choices on how to express and effect concurrency in a program Paper argues that

More information

Web Client And Server

Web Client And Server Web Client And Server Project Part A Overview In this part of the project, you and your partner will build a simple web client and a succession of servers to which it can connect. The goal is to slowly

More information

Lecture (11) OSI layer 4 protocols TCP/UDP protocols

Lecture (11) OSI layer 4 protocols TCP/UDP protocols Lecture (11) OSI layer 4 protocols TCP/UDP protocols Dr. Ahmed M. ElShafee ١ Agenda Introduction Typical Features of OSI Layer 4 Connectionless and Connection Oriented Protocols OSI Layer 4 Common feature:

More information

shortcut Tap into learning NOW! Visit for a complete list of Short Cuts. Your Short Cut to Knowledge

shortcut Tap into learning NOW! Visit  for a complete list of Short Cuts. Your Short Cut to Knowledge shortcut Your Short Cut to Knowledge The following is an excerpt from a Short Cut published by one of the Pearson Education imprints. Short Cuts are short, concise, PDF documents designed specifically

More information

Implementing a Numerical Data Access Service

Implementing a Numerical Data Access Service Implementing a Numerical Data Access Service Andrew Cooke October 2008 Abstract This paper describes the implementation of a J2EE Web Server that presents numerical data, stored in a database, in various

More information

Using Wireshark as an Applica1on Support Engineer Tim Poth. Senior Priority Response Analyst Bentley Systems, Inc.

Using Wireshark as an Applica1on Support Engineer Tim Poth. Senior Priority Response Analyst Bentley Systems, Inc. Using Wireshark as an Applica1on Support Engineer Tim Poth Senior Priority Response Analyst Bentley Systems, Inc. tim.poth@bentley.com 1 Agenda Quick intro to Bentley Systems, Inc How the Priority Response

More information

magento_1:full_page_cache

magento_1:full_page_cache magento_1:full_page_cache https://amasty.com/docs/doku.php?id=magento_1:full_page_cache For more details see the extension page. Speed up your Magento using cache to the full. Decrease pages time load

More information

Question 1 (6 points) Compare circuit-switching and packet-switching networks based on the following criteria:

Question 1 (6 points) Compare circuit-switching and packet-switching networks based on the following criteria: Question 1 (6 points) Compare circuit-switching and packet-switching networks based on the following criteria: (a) Reserving network resources ahead of data being sent: (2pts) In circuit-switching networks,

More information

Tutorial 8 Build resilient, responsive and scalable web applications with SocketPro

Tutorial 8 Build resilient, responsive and scalable web applications with SocketPro Tutorial 8 Build resilient, responsive and scalable web applications with SocketPro Contents: Introduction SocketPro ways for resilient, responsive and scalable web applications Vertical scalability o

More information

Software Development & Education Center PHP 5

Software Development & Education Center PHP 5 Software Development & Education Center PHP 5 (CORE) Detailed Curriculum Core PHP Introduction Classes & Objects Object based & Object Oriented Programming Three Tier Architecture HTML & significance of

More information

ECE 435 Network Engineering Lecture 17

ECE 435 Network Engineering Lecture 17 ECE 435 Network Engineering Lecture 17 Vince Weaver http://web.eece.maine.edu/~vweaver vincent.weaver@maine.edu 7 November 2016 Announcements HW#6 graded, HW#8 on Wednesday Plumbers wrapup Not much network

More information

Scalability of web applications

Scalability of web applications Scalability of web applications CSCI 470: Web Science Keith Vertanen Copyright 2014 Scalability questions Overview What's important in order to build scalable web sites? High availability vs. load balancing

More information

CSCD 330 Network Programming Winter 2015

CSCD 330 Network Programming Winter 2015 CSCD 330 Network Programming Winter 2015 Lecture 11a Transport Layer Reading: Chapter 3 Some Material in these slides from J.F Kurose and K.W. Ross All material copyright 1996-2007 1 Chapter 3 Sections

More information

Principal Solutions Architect. Architecting in the Cloud

Principal Solutions Architect. Architecting in the Cloud Matt Tavis Principal Solutions Architect Architecting in the Cloud Cloud Best Practices Whitepaper Prescriptive guidance to Cloud Architects Just Search for Cloud Best Practices to find the link ttp://media.amazonwebservices.co

More information

Screaming Fast Galois Field Arithmetic Using Intel SIMD Instructions

Screaming Fast Galois Field Arithmetic Using Intel SIMD Instructions Screaming Fast Galois Field Arithmetic Using Intel SIMD Instructions Ethan L. Miller Center for Research in Storage Systems University of California, Santa Cruz (and Pure Storage) Authors Jim Plank Univ.

More information

Screaming Fast Galois Field Arithmetic Using Intel SIMD Instructions. James S. Plank USENIX FAST. University of Tennessee

Screaming Fast Galois Field Arithmetic Using Intel SIMD Instructions. James S. Plank USENIX FAST. University of Tennessee Screaming Fast Galois Field Arithmetic Using Intel SIMD Instructions James S. Plank University of Tennessee USENIX FAST San Jose, CA February 15, 2013. Authors Jim Plank Tennessee Kevin Greenan EMC/Data

More information

A New Internet? RIPE76 - Marseille May Jordi Palet

A New Internet? RIPE76 - Marseille May Jordi Palet A New Internet? RIPE76 - Marseille May 2018 Jordi Palet (jordi.palet@theipv6company.com) -1 (a quick) Introduction to HTTP/2, QUIC and DOH and more RIPE76 - Marseille May 2018 Jordi Palet (jordi.palet@theipv6company.com)

More information

Portal Cache Tuning with Portal Cache Viewer Open Mic 10/01/2014

Portal Cache Tuning with Portal Cache Viewer Open Mic 10/01/2014 Portal Cache Tuning with Portal Cache Viewer Open Mic 10/01/2014 Klaus Nossek Software Engineer, WebSphere Portal Dr. Andreas Wickenhaeuser Software Engineer, WebSphere Portal IBM Collaboration Solutions

More information

TCP Selective Acknowledgement

TCP Selective Acknowledgement SharkFest 18 ASIA TCP Selective Acknowledgement correctly interpreting this field can help you be a better performance troubleshooter John Pittle Global Architect, Performance Management Services Riverbed

More information

Oracle Service Cloud Integration for Developers Ed 1

Oracle Service Cloud Integration for Developers Ed 1 Oracle University Contact Us: Local: 1800 103 4775 Intl: +91 80 67863102 Oracle Service Cloud Integration for Developers Ed 1 Duration: 5 Days What you will learn The class covers how to extend the Service

More information

CS 355. Computer Networking. Wei Lu, Ph.D., P.Eng.

CS 355. Computer Networking. Wei Lu, Ph.D., P.Eng. CS 355 Computer Networking Wei Lu, Ph.D., P.Eng. Chapter 2: Application Layer Overview: Principles of network applications? Introduction to Wireshark Web and HTTP FTP Electronic Mail SMTP, POP3, IMAP DNS

More information

Executive Summary. Performance Report for: The web should be fast. Top 5 Priority Issues. How does this affect me?

Executive Summary. Performance Report for:  The web should be fast. Top 5 Priority Issues. How does this affect me? The web should be fast. Executive Summary Performance Report for: http://ardrosscs.ie/ Report generated: Test Server Region: Using: Sat, May 6, 2017, 5:14 AM -0700 Vancouver, Canada Firefox (Desktop) 49.0.2,

More information

Scaling with Postgres. Robert Treat Percona Performance Conference 2009

Scaling with Postgres. Robert Treat Percona Performance Conference 2009 Scaling with Postgres Robert Treat Percona Performance Conference 2009 Disclaimer Every really big site uses custom solutions. Don t expect to get there using out of the box software. You don t have to

More information

Fast Retransmit. Problem: coarsegrain. timeouts lead to idle periods Fast retransmit: use duplicate ACKs to trigger retransmission

Fast Retransmit. Problem: coarsegrain. timeouts lead to idle periods Fast retransmit: use duplicate ACKs to trigger retransmission Fast Retransmit Problem: coarsegrain TCP timeouts lead to idle periods Fast retransmit: use duplicate ACKs to trigger retransmission Packet 1 Packet 2 Packet 3 Packet 4 Packet 5 Packet 6 Sender Receiver

More information

SC/CSE 3213 Winter Sebastian Magierowski York University CSE 3213, W13 L8: TCP/IP. Outline. Forwarding over network and data link layers

SC/CSE 3213 Winter Sebastian Magierowski York University CSE 3213, W13 L8: TCP/IP. Outline. Forwarding over network and data link layers SC/CSE 3213 Winter 2013 L8: TCP/IP Overview Sebastian Magierowski York University 1 Outline TCP/IP Reference Model A set of protocols for internetworking The basis of the modern IP Datagram Exchange Examples

More information

CSE 473 Introduction to Computer Networks. Exam 1. Your name here: 10/3/2012

CSE 473 Introduction to Computer Networks. Exam 1. Your name here: 10/3/2012 CSE 473 Introduction to Computer Networks Jon Turner Exam 1 Your name here: 10/3/2012 1. (10 points). A user in St. Louis, connected to the internet via a 20 Mb/s (b=bits) connection retrieves a 250 KB

More information

Developers and DBAs. Farmers and City Slickers have different mindsets

Developers and DBAs. Farmers and City Slickers have different mindsets Developers and DBAs Farmers and City Slickers have different mindsets About ~ Øyvind Isene DBA Consultant working for Bicon in Oslo Optimization and helping developers with db OUGN and the Oracle community

More information

COPYRIGHT 13 June 2017MARKLOGIC CORPORATION. ALL RIGHTS RESERVED.

COPYRIGHT 13 June 2017MARKLOGIC CORPORATION. ALL RIGHTS RESERVED. Building and Operating High Performance MarkLogic Apps James Clippinger, VP, Strategic Accounts, MarkLogic Erin Miller, Manager, Performance Engineering, MarkLogic COPYRIGHT 13 June 2017MARKLOGIC CORPORATION.

More information

A PRACTICAL GUIDE TO DATA CACHING WITH ZEND SERVER

A PRACTICAL GUIDE TO DATA CACHING WITH ZEND SERVER A PRACTICAL GUIDE TO DATA CACHING WITH ZEND SERVER When asked about the most significant methods to speed up PHP applications, most experts would say cache, cache, and cache. There are a lot of optimizations

More information

What is Network Acceleration?

What is Network Acceleration? What is Network Acceleration? How do WAN Optimization, Network Acceleration, and Protocol Streamlining work, and what can they do for your network? Contents Introduction Availability Improvement Data Reduction

More information

Investigating Transparent Web Proxies in Cellular Networks

Investigating Transparent Web Proxies in Cellular Networks Investigating Transparent Web Proxies in Cellular Networks Xing Xu, Yurong Jiang, Tobias Flach, Ethan Katz-Bassett, David Choffnes, Ramesh Govindan USC & Northeastern University March 20, 2015 Introduction

More information

Basic Reliable Transport Protocols

Basic Reliable Transport Protocols Basic Reliable Transport Protocols Do not be alarmed by the length of this guide. There are a lot of pictures. You ve seen in lecture that most of the networks we re dealing with are best-effort : they

More information

Wireshark.

Wireshark. Wireshark Workshop $ whois Erik Vanderhasselt () Xiobe does 3 things: Risk Management Incident Response (= risk mitigation strategy for some residual risks) Social Engineering (my offensive side) Wireshark

More information

Performance Tune your Ajax Applications. The Ajax Experience 2007 Bob Buffone

Performance Tune your Ajax Applications. The Ajax Experience 2007 Bob Buffone Performance Tune your Ajax Applications The Ajax Experience 2007 Bob Buffone Agenda Introduction Performance Tuning Startup Time Runtime Metrics jslex Introduction Name: Company: Position: Bob Buffone

More information

DX Cluster - Specific Configuration and Troubleshooting

DX Cluster - Specific Configuration and Troubleshooting DX Cluster - Specific Configuration and Troubleshooting 1. - Topic Default DX cluster configuration works perfectly in front of the vast majority of web applications. But in few cases, some web applications

More information

Executive Summary. Performance Report for: The web should be fast. Top 5 Priority Issues. How does this affect me?

Executive Summary. Performance Report for:   The web should be fast. Top 5 Priority Issues. How does this affect me? The web should be fast. Executive Summary Performance Report for: https://www.weebly.com/ Report generated: Test Server Region: Using: Mon, Jul 30, 2018, 2:22 PM -0500 Vancouver, Canada Chrome (Android,

More information

ECE 650 Systems Programming & Engineering. Spring 2018

ECE 650 Systems Programming & Engineering. Spring 2018 ECE 650 Systems Programming & Engineering Spring 2018 Networking Transport Layer Tyler Bletsch Duke University Slides are adapted from Brian Rogers (Duke) TCP/IP Model 2 Transport Layer Problem solved:

More information

Computer Networks. 5th of February, This exam consists of 6 questions with subquestions. Every subquestion counts for 10 points.

Computer Networks. 5th of February, This exam consists of 6 questions with subquestions. Every subquestion counts for 10 points. Computer Networks 5th of February, 05 This exam consists of 6 questions with subquestions. Every subquestion counts for 0 points. Mark every page with name and student number. Use of books, additional

More information

COMPUTER SCIENCE E-1 EXAM I BRIEFING. Understanding Computers & the Internet

COMPUTER SCIENCE E-1 EXAM I BRIEFING. Understanding Computers & the Internet COMPUTER SCIENCE E-1 Understanding Computers & the Internet EXAM I BRIEFING Our rst exam will take place on Monday, March 11 from 5:30pm 7:30pm EST. You will have two hours to complete the exam. is exam

More information