Presentation is loading. Please wait.

Presentation is loading. Please wait.

Web Server Design Week 16 Old Dominion University

Similar presentations


Presentation on theme: "Web Server Design Week 16 Old Dominion University"— Presentation transcript:

1 Web Server Design Week 16 Old Dominion University
Department of Computer Science CS 495/595 Spring 2012 Michael L. Nelson 04/24/12

2 Representational State Transfer
http is an implementation of REST REST is best understood in contrast to Remote Procedure Call (RPC) style interfaces like SOAP The simplest explanation is RESTful URIs are nouns, and RPC URIs are verbs it is not true that REST URIs do not have arguments / query strings Philosophies: RPC: http is just a transport protocol to tunnel an application-specific protocol; other protocols (e.g., SMTP or future protocols) can be used too REST (http implementation): http already has basic mechanisms for almost anything you need and will be around forever. Embrace it in your system design.

3 All You Need is CRUD… Operation SQL HTTP Create Insert POST, PUT
Read/Retrieve Select GET Update PUT Delete/Destroy Delete DELETE

4 Example Design RPC: REST:
RPC: (one for each user - where {user} is either the user name or the user id) (one for each location - where {location} is the location name or the location id) REST: adapted from:

5 Amazon S3 “Simple Storage Service” Premise: http://aws.amazon.com/s3
part of a family of Amazon Web Services (AWS), including “Elastic Compute Cloud (EC2)” and “Simple Queueing Service (SQS)” Premise: cheap, remote storage service accessible via http no initial fee, no maintenance fee $0.11 per GB/month storage (first 50TB) $0.12 per GB/month transferred (first 10TB) private/public X read/write access available

6 Core Concepts Registration: Bucket Object AWS access key ID
semantic free name space for your account Secret access key used to authenticate to AWS Bucket namespace for referencing your objects; must be globally unique you can have buckets per AWS access key buckets hold 0 or more objects Object files (placed in buckets); up to 5GB in a single object “key” is the identifier for the object placed in a bucket

7 Access Points SOAP and REST interfaces provided
3 different URLs for REST access: Where: bucket = your namespace key = identifier of the object in the bucket For more info:

8 Examples: These are the same (& real):
These would be the same (but not real):

9 Authenticating to AWS Can authenticate to AWS via:
“Authorization” http header using the AWS authentication scheme cf. “Basic” & “Digest in RFC-2616 URL arguments HMAC: Keyed-Hashing for Message Authentication RFC-2104:

10 A Tour of the REST API for S3

11 GData: Atom + REST http://en.wikipedia.org/wiki/Atom_(standard)


Download ppt "Web Server Design Week 16 Old Dominion University"

Similar presentations


Ads by Google