The most important part of cloud computing is understanding all of its buzzwords and where and how they may apply. Hang on, there are a lot of them.

  • Cloud Computing: Wikipedia’s definition of cloud computing is “the delivery of computing and storage capacity as a service to a heterogeneous community of end-recipients.” I look at it as a paradigm shift in the way we architect and build dynamically scalable systems where everything may soon become a service.
  • CaaS: Compute as a Service.
  • IaaS: Infrastructure as a Service.
  • DaaS or DNSaaS: DNS as a Service.
  • STaaS: Storage as a Service.
  • PaaS: Platform as a Service.
  • VaaS: Video as a Service.
  • EaaS: Everything as a Service.
  • SaaS: Software as a Service.
  • SaaS: Security as a Service (I know, I just said it was Software as a Service but in a different context it can mean something else. Same applies to all of these “as a service” items).
  • CDN: Content Delivery Network
  • DNS: Domain Name Service (translates IPs into host names) — Critical to everything.
  • CNAME: Canonical Name Record (used as an alias within DNS records).
  • Caching: Holding on to “hot requests” for period of time to aid in performance.
  • Proxy: Used as a “gateway” for performance in systems that utilize caching. There are several types, like Reverse Proxies and Transparent Proxies.
  • Memcache: In memory data cache sitting in front of Web apps.
  • Queues: A way of messaging or communicating between systems.
  • Tasks: Typically a small discrete unit of work.
  • Cron: Wonderful ole friend that allows you to schedule units of work.
  • VIPs: Virtual IPs — used with Load Balancers.
  • Load Balancer: Software/hardware versions that typically balance load requests to different servers via VIPs.
  • Roles: Worker, Web, Service, etc. — more platform-specific, but not all platforms utilize roles in the way described here.
  • Multitenancy: An architecture where a single instance can service multiple organizations and keep them completely separate.
  • SQL: In this context, it refers to RDBMS like Oracle, SQL Server, MySQL, etc.
  • NoSQL: In this context, it refers to Data Stores that use name/value pairs to store data instead of traditional row/column formats like SQL databases.
  • Vertical Scaling: Growing systems up, usually by adding more memory, capacity, etc.
  • Horizontal Scaling: Growing systems out using lower-cost commodity equipment where the “secret sauce” manages the growth transparently.
  • Sharding: Used in horizontal scaling, it’s a technique mainly employed with SQL and NoSQL data.
  • JBOD: Just a bunch of disks — a term used a lot in the cloud computing world to reference commodity hardware.
  • Origin Pull: Term used in the CDN world where the source of an object may not reside on the actual CDN, so when a user requests the object via a Web page hosted on a CDN for acceleration, the CDN must go get the object from the origin to fill its cache.
  • Replication: Depending on the vendor, plan, etc., data from the ingest point is copied to an alternate location.
  • Geo Fencing: Usually using geographic location (latitude and longitude) of a given DNS server (if captured), or possibly information from the location service of the mobile device to restrict access to or from a service. Most often used by CDNs.
  • Geo Proximity Routing: Based on the geographic location of the DNS, the request is routed to the closest egress point.
  • oAuth: Allows a user to grant a third-party limited permission to access a Web app on their behalf. Apps that interface with Facebook and Twitter are good examples of this.
  • MapReduce: Model to distribute large data sets, process them and finally recombine them into a reduced result set.
  • Web Service: Architecture to allow devices to communicate between themselves.  It also acts as entry point into most cloud offerings.
  • RESTful: Representational state transfer — A way to architect communication to use standard HTTP protocol. Typically low-overhead.
  • SOAP: Simple Object Access Protocol. A nice binding envelope that also uses HTTP and others, but is typically heavier than REST. Tip: Try not to use SOAP if you are using a mobile device. Use REST instead.