DOC PREVIEW
CORNELL CS 514 - Lecture Slides

This preview shows page 1-2-3-4-5-33-34-35-36-66-67-68-69-70 out of 70 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 70 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 70 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 70 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 70 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 70 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 70 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 70 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 70 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 70 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 70 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 70 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 70 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 70 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 70 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 70 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

CS514: Intermediate Course in Operating SystemsToday: A two-part lectureHow do Web Services really work?DiscoveryExample of a repositoryRoles?Discovery and namingClient talks to eStuff.comA glimpse inside eStuff.comDiscovery in eStuff.comCORBA approachCORBA is object orientedWill Web Services “help” with naming and discovery?But Web Services won’t…ChallengeWhy this is a challengeHow we do it nowWhy this isn’t good enoughContent Routing Principle (a.k.a. Content Distribution Network)Slide 20Slide 21Two basic types of CDN: cached and pushedCached CDNSlide 24Slide 25Slide 26Pushed CDNSlide 28CDN benefitsCDN costs and limitationsCDN example: AkamaiAkamai caching services ARL: Akamai Resource LocatorARL: Akamai Resource LocatorSlide 34Slide 35ARL Control PartARL Host PartSlide 38Akamai EdgesuiteSharper Image and EdgesuiteSlide 41What may be happening…Akamai isn’t the only storyOther content routing mechanismsSlide 45Slide 46How well do CDNs work?Slide 48Reduced latency can improve TCP performanceLets look at a studyMethodologyResponse Time Results (II) Including DNS Lookup TimeSlide 53CDNs out-performed non-CDNsEffectiveness of DNS load balancingSlide 56DNS load balancing not very effectiveOther findings of studyUltimately a frustrating studyAnother studyHistorical trend: Clear improvementPerformance breakdownEffect of CDN: Positive (but again, we don’t know why)Most web sites not using CDN (4-1)To wrap things upBack to web servicesAside: Why do this?Layered NamingResearch challengesHomework (not to hand in)CS514: Intermediate Course in Operating SystemsProfessor Ken BirmanVivek Vishnumurthy: TAToday: A two-part lecturePart I: Some details on Web ServicesMostly “syntactic”We’ll cover this fast because it’s easyPart II: Content distributionHere look at a larger-scale problem typical of the modern web (not specific to WS)Topic relates to how images are served up by big, high-volume web sitesHow do Web Services really work?Today:WSDL: The Web Services Description LanguageUDDI: The Universal Description, Discovery and Integration standardRoles for brokers in Web Services systemsChallenges associated with naming, discovery and translation in large systemsDiscoveryThis is the problem of finding the “right” serviceIn our example, we saw one way to do it – with a URLWeb Services community favors what they call a URN: Uniform Resource NameBut the more general approach is to use an intermediary: a discovery serviceName Type Publisher Toolkit Language OSWeb Services Performance and Load TesterApplication LisaWu N/A Cross-PlatformTemperature Service Client Application vinuk Glue Java Cross-PlatformWeather Buddy Application rdmgh724890 MS .NET C# WindowsDreamFactory Client Application billappleton DreamFactory Javascript Cross-PlatformTemperature Perl Client Example Source gfinke13 Perl Cross-PlatformApache SOAP sample source Example Source xmethods.net Apache SOAP Java Cross-PlatformASS 4 Example Source TVG SOAPLite N/A Cross-PlatformPocketSOAP demo Example Source simonfell PocketSOAP C++ Windowseasysoap temperature Example Source a00 EasySoap++ C++ WindowsWeather Service Client with MS- Visual BasicExample Source oglimmer MS SOAP Visual Basic WindowsTemperatureClient Example Source jgalyan MS .NET C# WindowsExample of a repositoryRoles?UDDI is used to write down the information that became a “row” in the repository (“I have a temperature service…”)WSDL documents the interfaces and data types used by the serviceBut this isn’t the whole story…Discovery and namingThe topic raises some tough questionsMany settings, like the big data centers run by large corporations, have rather standard structure. Can we automate discovery?How to debug if applications might sometimes bind to the wrong service?Delegation and migration are very trickyShould a system automatically launch services on demand?WebServiceWebServiceWebServicesClient talks to eStuff.comOne big issue: we’re oversimplifyingWe think of remote method invocation and Web Services as a simple chain:ClientsystemSoap RPCSOAProuterA glimpse inside eStuff.comPub-sub combined with point-to-pointcommunication technologies like TCPLBserviceLBserviceLBserviceLBserviceLBserviceLBservice“front-end applications”Discovery in eStuff.comData centers are increasingly commonAnd they raise hard questions!How can a data center in California control decisions a client is making in Ithaca?Services are clustered. How should client request be “routed” to the right memberOnce you start talking to a server it may cache data for you. How can you be sure to get the right one next time?CORBA approachCORBA had what are calledWays to export specialized client stubsThe client stub could include server provided decision logic, like “which data center to connect with”Gives data center a form of remote controlFactory services: manufacture certain kinds of objects as neededEffect was that “discovery” can also be a “service creation” activityCORBA is object orientedSeems obvious… and it is. CORBA is centered around the notion of an objectObjects can be passive (data)… active (programs)… persistent (data that gets saved)… volatile (state only while running)In CORBA the application that manages the object is inseparable from the objectAnd the stub on the client side is part of the applicationThe request per-se is an action by the object on itself and could even exploit various special protocolsWe can’t do this in Web ServicesWill Web Services “help” with naming and discovery?Web Services tells us howOne client can…… find one server and… bind to that server and… send a request that will make sense… and make sense of the responseSo sure, WS will helpBut Web Services won’t…Allow the data center to control decisions the client makesAssist us in implementing naming and discovery in scalable cluster-style servicesHow to load balance? How to replicate data? What precisely happens if a node crashes or one is launched while the service is up?Help with dynamics. For example, best server for a given client can be a function of load but also affinity, recent tasks, etcChallengeWeb Services are expected to parallel existing web site architecturesSo to understand how load balancing could work in a web services system, start by


View Full Document

CORNELL CS 514 - Lecture Slides

Documents in this Course
LECTURE

LECTURE

29 pages

LECTURE

LECTURE

28 pages

Load more
Download Lecture Slides
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Lecture Slides and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Lecture Slides 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?