The subtle art of e triage Professor Ken Birman Dept of Computer Science Cornell University Last Time We learned that complex e commerce systems are at e risk We saw that e risks take many forms System complexity Failure to plan for failures Poor project management Can we do better E triage In a hospital emergency room nurse sees a bunch of sick people E triage In a hospital emergency room nurse sees a bunch of sick people Can t deal with everything at once so she decides what problems are most urgent We can use the same idea to triage risks to an e commerce project Example Your e company will host the ultimate web site for women s cosmetic products Scan in pictures of your clients Software on the web site makes cosmetic recommendations Depicts results right on the image Plan is to be the world s largest direct sales channel for cosmetics Business Roles You write the checks but also set the tone You need to learn enough about the choices to guide your technology people to make the right ones Your role is triage but of managerial type Reduce to a Technical Problem Option A Hire a bunch of hackers Explain the vision trust them They start to mumble about Oracle Sybase Informix VRML HHTPS XML IE 5 0 versus Netscape 3 2 scalable cluster servers You zone out Problem your fate in their hands Reduce to a Technical Problem Option B You bring in the experts IBM shows up Monday HP on Tuesday Their marketing guys want money Their technical guys are incomprehensible You zone out Problem your money in their hands Didn t IBM blow that air traffic project Reduce to a Technical Problem Option C You decide to manage the project in an effective way Before bringing in technical people can you sort out the big issues Problem you aren t a technical person But they know that and yet they look to you for guidance because you run the show Basic Maxims We can t do everything We need to focus on what really matters Each technical feature adds complexity Can we achieve a spare elegant solution that has precisely the mechanisms we need to excel On each choice ask why does this matter What will be the downstream costs Pieces of the system The Internet customers use it to talk to your company Your web server hosts the content A database of customer information Her face her age past purchases etc A database of cosmetic products A database of advertising materials Back office system clears transactions Terminology A database is a big collection of information organized for easy access Internet technologies provide a way for client systems browsers to issue some form of database request to your system Usually the request occurs by fetching a computed web page Internally your company may have information spread over multiple sites and hidden behind a firewall at each location Complexity All of this takes an initially simple idea and makes it complex The data may not be at one place Perhaps many systems will need to cooperate to satisfy your customers With lots of customers we need to worry about how the model scales The System Internet NewMe com Choices How to build the web site itself We ll focus on BEA Weblogic This technology is a hot product that many feel does it all There are lots of other similar projects but Weblogic is typical and most successful But picking the technology doesn t really solve the business problem Roll Your Own With Weblogic you Use their tools But your own people build the actual web site Their tools provide Basic functionality for web sites on which people can do shopping cart style purchases Database to track inventory and customer histories They even handle credit card transactions Why is Weblogic a Success Very easy to get slick web sites off the ground Built in solutions for most of the things you might need to do And BEA has related products to link the web site you build to your other systems within your company All of this makes for a good story the whole story for building web sites All About Weblogic The basic architecture On the client side cookie tracks the contents of the shopping cart Requests are received by the Weblogic load balancing proxy Behind it a cluster of servers run the web pages proxy server Weblogic Limits For extremely popular web sites the approach Weblogic takes won t scale Remote users will get slow response Hard to customize content so that each user sees a private set of web pages And the database itself is built by other companies forcing you to make a choice High availability a big issue at this level Yet their product literature claims that Weblogic scales extremely well Business Tradeoffs These limitations are serious worries Near term they won t impact you Building a great site will come down to hiring great graphics people But long term they point to problems scaling your business model You might not easily have discovered the problem In effect the technology choice may dictate the business model and price point at a stage when you didn t even know you were buying into them Project Creep A common phenomenon You make sensible initial decisions And the technology seems to work Your company gets off the ground But then hit limits These force you to hack solutions Your business suffers downtime unreliability Ultimately your people do more and more hacking and may have to rebuild from scratch or worse Avoiding Project Creep The key to sensible business decisions in technology settings is scalability To be a success your company needs to see revenue growth increase without requiring commensurate skilled labor Focus your business decision making on scalability questions about the technology as your company will be using it The mantra scalable from start to finish Scalability We use this term to talk about Ability of system to continue providing high quality services to its users Even as numbers of users rises and or Size of network rises and or Load on the system increases and or Amounts of data it manages increase Scalability is Hard In small scale settings Conditions are easily controlled We don t tend to see failures and recoveries Things that can fail include computers and software on them network links routers We are not likely to come under attack Fundamental Issues of Scale Suppose a machine can do x business transactions per second If I double the load to 2x how big and fast a machine should I buy With computers answer isn t obvious If the answer is twice as big we say the problem scales linearly Often the answer is 4 times as big or worse Such
View Full Document