1 / 73

E-Commerce Architectures and Technologies

E-Commerce Architectures and Technologies. Rob Oshana Southern Methodist University. Quality of Service. Issues to consider during design and implementation reliability security capacity scalability cost Many E-Commerce and Web services are real-time processes!. Quality of Service.

kael
Download Presentation

E-Commerce Architectures and Technologies

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. E-Commerce Architectures and Technologies Rob Oshana Southern Methodist University

  2. Quality of Service • Issues to consider during design and implementation • reliability • security • capacity • scalability • cost • Many E-Commerce and Web services are real-time processes!

  3. Quality of Service • Example; On-line Auction • multimedia capabilities for product • should be considered during design • bandwidth capacity • processor speed • disk capacity • load varies by a factor of 10 depending on the time of day

  4. Quality of Service • Number of page views/day = 4.8 mil • 3/10 page requests are “Display item description” (navigational patterns) • Increase in 90K bytes/page for multimedia capability • What is the increase in bandwidth?

  5. Quality of Service • AvgPageRequests/hour = PagesPerDay/24 = 4,800,000/24 = 200,000 pages/hour • PeakPageRequest = AvgPageRequests X PeakLoadFactor = 200,000 X 10 = 2,000,000 pages/hour

  6. Quality of Service • NumberOfDisplayPagesOnPeak = PeakPageRequest X 0.3 = 2,000,000 X 0.3 = 600,000 • PeakBandwidthIncrease = NumberOfDisplayPagesOnPeak X PageSizeIncrease = 600,000 X 90,000 bytes = 54,000 Mbytes/hour = 120 Mbs

  7. Quality of Service • Availability goal = 99% • How much downtime allowed ? • Reasons for a system to be unavailable • Regular maintenance • backups • configuration changes • can usually be scheduled

  8. Quality of Service • Upgrades • new S/W releases • new H/W platforms • facility moves • Infrastructure failures • systems outside control • electric power • internet access service • telecommunications disruptions • can be managed at a cost!

  9. Quality of Service • Environment • floods, fires, and other man-made disasters • hot or warm backup systems geographically distant • Software failures • software can stop working • encryption method becoming vulnerable due to technical advances can lead to software becoming untrustworthy

  10. Quality of Service • Human error • operator error • configuration mistakes • controlled by additional training and testing • routing errors in the network • Hardware failures • disks • computers • network routers • probability rises as the size of the system increases the number of components

  11. Quality of Service • Maximum downtime allowed • %ofAvailabilityPerYear = (HoursPerYear - HoursOfUnavailability) / HoursPerYear • 99% = (8760 - HoursOfUnavailability) / 8760 • HoursOfUnavailability = 8760 - (0.99 X 8760) = 87.6 hours

  12. Overview of Quantitative Approach • Quality of service factors • speed • 24/7 availability • security Customer expectations Cost

  13. Quantitative Analysis Business model & measurable goals E-Business site architecture 1 2 Predict E-Business Site performance Measure E-Business Site 8 3 Forecast Workload Evolution 7 Characterize Customer Behavior 4 Obtain Performance Parameters Characterize Site Workload 6 5 Develop Performance Models

  14. Quantitative Analysis • 1. Obtain in-depth understanding of e-business site architecture • system requirements • configuration of the site • number of internal layers • what type of servers being run • what software is running on servers • reliability and scalability requirements

  15. Quantitative Analysis • 2. Measure the performance of the systems that make up the e-business site • guarantee quality of service • prevent problems later • measure performance from different reference points • logs of transactions and accesses to servers

  16. Quantitative Analysis • Downloading times from different parts of the network • Data answers important questions • # customer visits per day • site revenue for a specific period of time • average and peak traffic • characteristics of shoppers

  17. Quantitative Analysis • 3. Understand customer behavior • heavy buyers • occasional buyers (lots of browsing) • Different navigational patterns • invoke different services • invoke in different ways • invoke in different frequencies • Different services use different amounts of resources

  18. Quantitative Analysis • 4. Characterize the workload • sessions; sequences of requests of different types made by a single customer to a single site • browse • search • select • add to shopping cart • user registration • pay

  19. Quantitative Analysis • 5. Quantitative techniques and analytical models • used to evaluate performance of a site • performance models used to predict performance when a site changes

  20. Quantitative Analysis • 6. Obtain input parameters for performance models • describe the architecture of the site • Web servers • application servers • database servers • layered groups • workload under study

  21. Quantitative Analysis • 7. Forecast the expected workload • What is the expected workload of a particular e-business website at a certain time of year? • How will the number of users vary in the next six months?

  22. Quantitative Analysis • 8. Analyze alternative architecutures • Use performance models and workload forecasts • Take into consideration expected workload, site cost, quality of service perceived by customers

  23. Customer Behavior Models

  24. Why Model Customer Behavior? • Session: series of consecutive and related requests made during a single visit • login • browse • search • add to shopping cart • pay

  25. Why Model Customer Behavior? • Customer’s behavior while interacting with the site impacts the IT resources of the site as well as the revenue of the store • Important to characterize the behavior of customers at the site

  26. Metrics: - revenue/sec - response time - throughput Customer Model Workload Model Resource Model What-if questions regarding impacts of customer behavior What-if questions regarding impacts of workload, architecture, and configuration changes Customer, Workload, and Resource Models

  27. Customer Model • Captures the elements of user behavior; • navigational patterns • e-commerce functions used • frequency of access to e-commerce functions • times between access to the various e-commerce functions • times between access to the various services offered by the website

  28. Customer Model • Model User Navigational Patterns for Predictive Purposes • Customer Behavior Model Graph (CBMG) • Capture Workload Parameters • Customer Visit Model (CVM) • Workload model; describes the workload of a site in terms of workload intensity

  29. State and Transitions of a CBMG Search Browse Pay Entry Home Login Add to cart Select Register Search

  30. Virtual Bookstore Example • Customers can enter the bookstore at three states; Home, Browse, Search • Figure represents all possible transitions between states • but a particular customer may not visit all states during a visit • Must capture the frequency with which transitions occur

  31. Virtual Bookstore Example Browse 8 Add to Cart Select 1 4 7 Search

  32. Virtual Bookstore Example Browse 8 (0.4) Add to Cart Select 1 (0.05) 4 (0.2) 7 (0.35) Search

  33. Virtual Bookstore Example • Use different CBMGs for different users or user classes • occasional buyers • information retrieval but buy elsewhere • heavy buyers • will buy if they see a product they like • Different models to represent different visits to a site, because customer patterns may change

  34. State and Transitions of a CBMG 0.25 Search 0.25 0.35 Browse 0.2 Pay 1.0 0.3 0.2 0.15 0.2 0.3 0.3 0.1 0.1 0.1 0.05 0.7 Entry Home Login Add to cart Select 0.6 0.2 0.1 0.4 0.05 0.2 0.05 0.1 0.2 Register 0.5 0.3 0.2 0.1 0.15 0.35 Search 0.25 0.2 0.1

  35. Customer Behavior Graph Model • N states • state 1 is always the entry • state n always the exit • number of states can vary • depends on the site and the amount of functionality • Characterization of the navigational pattern of a group of customers • viewed from the server side

  36. CBGM • Relies totally on server side information • Not 100% complete but still very useful

  37. CBGM Transition Matrix

  38. Building a CBMG • 1. Determine the set of functions provided to the customers of the e-commerce site • common functions (search, login) • site specific functions (buy stock, etc)

  39. Building a CBMG E-Business Functions Login Register Browse Search Select Add to Cart Pay E-Business Server Infrastructure (processors, disks, networks, and routers)

  40. Building a CBMG • 2. Refine the set of functions according to resource consumption • each function requires some amount of processing by an IT infrastructure • be sensitive to bandwidth requirements • break up functions if it makes sense

  41. Building a CBMG • Determine the transitions between states • examine all possible transitions • analyze the layout of pages • analyze the functions available on each page

  42. Aggregate Metrics for E-Business Sites • Hits/second • Page views/day • Click-throughs • Unique visitors • Revenue Throughput • Potential Loss Throughput

  43. Metrics Derived from the CBMG • How many times on average is each E-Business function invoked per visit? • On average, how often do customers buy something each time they visit the site? • What is the average number of E-Commerce function executions requested by a customer?

  44. Customer Visit Model • Alternative to CBMG (less detailed) • Represent a session as a vector of visits to a state during a session • CVM is a set of vectors that indicate the number of times each of the functions supplied are executed • Does not provide information as to the number of times a customer moves between states

  45. Customer Visit Model

  46. Session Identification • How does one identify requests coming from the same customer? • How does one determine if requests coming from the same customer belong to the same or to a different session?

  47. Session Identification • HTTP is a stateless protocol • HTTP server does not store information about a request after that request has been serviced • generates an entry in the HTTP log for each completed request • information is not used to process the next request

  48. Session Identification • Cookies used for identification • pieces of data stored on hard drive • information sent back to server on each subsequent request to the server • used to store customer and/or session identifiers

  49. Session Identification with Cookies server browser Request 1: http://www.xyz.com/home.html Reply 1: home.html + cookie (ID=2136789105) Request 2: http://www.xyz.com/products.html + cookie (ID=2136789105) Reply 2: products.html session Request n: http://www.xyz.com/services.html + cookie (ID=2136789105) Reply n: services.html

  50. Anatomy of E-Business Functions

More Related