CSE 190 Internet ECommerce Lecture 16 Performance Performance

  • Slides: 12
Download presentation
CSE 190: Internet E-Commerce Lecture 16: Performance

CSE 190: Internet E-Commerce Lecture 16: Performance

Performance Parameters • Four dimensions of performance – CPU Usage • Issue for app

Performance Parameters • Four dimensions of performance – CPU Usage • Issue for app server, DB – Disk I/O • Issue for DB, video streaming – Memory Usage – Network Usage • Reflected in cost • Each may be a bottleneck depending on the application

Network Speeds (What do all these names mean? ) Connection Type Speed T-1 1.

Network Speeds (What do all these names mean? ) Connection Type Speed T-1 1. 544 Mbps (24 voice channels) ~$1 k/m T-3 44. 7 Mbps (30 T-1 s) ~$20 k/m OC-1 51. 8 Mbps (SONET standard) OC-3 155 Mbps ~50 k/mo OC-192 9. 95 Gbps For comparison: Connection Type Speed Analog POTS modem 300 bps – 56. 7 kbps Cable modem Upstream: 320 Kbps – 10 Mbps Downstream: 30 – 42 Mbps ADSL (Asymmetric Digital Subscriber Line) Upstream: 64 kbps – 1. 5 Mbps Downstream: 768 kbps – 9 Mbps ~$40 -120/m Ethernet 10 -Base. T 10 Mbps Ethernet 100 Base. T 100 Mbps

Effect of Architecture • Small # of servers (Concentrated) – Availability under high load

Effect of Architecture • Small # of servers (Concentrated) – Availability under high load – Vulnerability to attack – Cost/unit performance is lower • Distributed architecture – DNS load balancing – Application load balancing – Capacity upgrades require smaller investment

DNS Load Balancing • DNS Load Balancing – When address of web server is

DNS Load Balancing • DNS Load Balancing – When address of web server is resolved, it may return any of N IP addresses associated with it – Yahoo Example • Reference: Figure 7. 2, page 188, “Web Servers” by Benay Dara et al. • HTTP Requests distributed over a farm of servers. • Content mirrored at each server • Server A gets first request, server B gets second, server C gets third, etc.

Application Load Balancing • HTTP Requests sent to the least busy server • NOT

Application Load Balancing • HTTP Requests sent to the least busy server • NOT distributed in a linear fashion • All servers kept equally busy • Reference: Figure 7. 3, page 189, “Web Servers” by Benay Dara et al. • Bridge acts as virtual server to requesting browsers/clients. • More complex monitoring => may go awry

State And Server Affinity No Affinity Client IP Affinity Request Forwarding Multiple Web Farms

State And Server Affinity No Affinity Client IP Affinity Request Forwarding Multiple Web Farms

Proxy Servers • Proxy, cache, and mirror techniques: for improving web performance – reduce

Proxy Servers • Proxy, cache, and mirror techniques: for improving web performance – reduce latency of access to most frequently accessed web documents – Reduce network bandwidth congestion – Increase security of electronic services • Proxies provide web gateway on private networks • Configurable within browser (e. g. in IE, Tools | Options | Connections) • Reference: Figure 7. 4, page 189, “Web Servers” by Benay Dara et al.

Proxy servers • • • Proxy servers run on Firewalls. Handle both incoming and

Proxy servers • • • Proxy servers run on Firewalls. Handle both incoming and outgoing web requests. Hide IP addresses of requesting clients Handle NAT – Network address translation Advantages: – Access control of web sites by employees of an organization. – Selective blocking of protocols such ftp. – Cache relayed responses for performance. • Cache problem: how current is the data • Products: – Apache with proxy configuration – MS ISA Server (previously MS Proxy Server)

Scalability THE BIG CHOICE Distributed (e. g. , Yahoo!, Google, Yodlee) vs. Concentrated (many

Scalability THE BIG CHOICE Distributed (e. g. , Yahoo!, Google, Yodlee) vs. Concentrated (many e-commerce sites) Pros Cons Lower initial cost Complex deployment infrastructure Gradual ramp in cost Involved monitoring infrastructure Highly redundant 3 rd party hosting expensive More amenable for LARGE systems Managing state across systems complex

Scalability Stateless (vs Stateful systems) Pros Cons Highly redundant Lower performance Easier implementation in

Scalability Stateless (vs Stateful systems) Pros Cons Highly redundant Lower performance Easier implementation in distributed Network level load balancers Application Level Load Balancers (vs. Network level) Pros Cons More closed loop load balancing Lower performance Can help manage stateful systems Higher cost

Performance Elements of Performance § Throughput (affecting scalability) § Response Time (affecting user experience)

Performance Elements of Performance § Throughput (affecting scalability) § Response Time (affecting user experience) Elements of Response Time § HTML Rendering § Network download speed § Application processing time § Database performance § Queues (web server, application server, network level) Elements of Throughput § Application processing time § Database performance