Although the cloud is not a new topic, it does have constantly changing services and offerings. As a means to help get ahead of the many new buzzwords surrounding the cloud, the DZone Editorial team has put together a list of what we feel are the most important cloud terms that you should know.
Apache thrift: An interface definition language and binary communication protocol.
API: Application Programming Interface, an endpoint exposed in a programming language that offers some useful feature or behavior.
Amazon Web Services (AWS): A huge suite of *aaS provided by Amazon; many services highly elastic; availability regions distributed globally; largest public cloud provider by far.
Auto-scaling: Helps ensure that you have the correct number of Amazon EC2 instances available to handle the load for your application.
Azure: Microsoft’s public cloud computing platform. Provides services such as computing, storage, analytics, and networking.
BASE (basic availability, soft state, eventual consistency): An approach to storage that divides physical or virtual storage medium into independently addressable chunks ('blocks'); increases performance by narrowing search space (specified as a path) for a particular store or retrieve operation; often accessed via logical abstraction layer that adds metadata (filesystem, DBMS).
CAP theorem: The idea that a distributed system can only provide two out of three benefits: consistency, availability, and partition tolerance.
Centralized logging solution: Either a custom managed Elasticsearch-Logstash-Kibana (ELK) stack or a Software-as-a-Service (SaaS) solution. Having a centralized logging solution enables programmers or admins to easily view, compare, and correlate logs from different servers at the same place.
Circuit breaker: A cloud-native design pattern to build and operate resilient, scalable microservices.
Cloud architecture: The components that are required for cloud computing including a front-end platform, a back-end platform, a cloud-based delivery, and a network.
Cloud broker: (Like any other broker) abstracts away from provider details to offer users easier access to cloud computing resources; often provides simplified API and/or human UI, data lifecycle management, and focused service integrations and aggregations.
Cloud computing: Ubiquitous, convenient, on-demand access to shared computing resources; offers on-demand self-service (without human interaction), broad network access, resource pooling (dynamically assigned as workloads vary), location independence (to varying degrees), rapid elasticity, metered service (charging only for resources used); generally offered at three fundamental service levels (IaaS, PaaS, SaaS); deployed for use within an organization (private cloud), for any organization or individual (public cloud), or some combination (hybrid cloud).
Cloud migration: The process of moving applications and data from an onsite computer to the cloud. It can also include moving data from one cloud environment to another.
Cloud-native application: An application that can take full advantage of a cloud environment (e.g. scalability, high availability).
Cloud-native middleware: Middleware framework or product that natively leverages cloud-native concepts, design patterns, and cloud platforms.
Co-location: A data center that provides rental space, network connections, power, cooling, and security for servers that you manage and maintain.
Container: Resource isolation at the OS (rather than machine) level, usually (in UNIX-based systems) in the user space. Isolated elements vary by containerization strategy and often include file system, disk quota, CPU and memory, I/O rate, root privileges, and network access. Much lighter-weight than machine-level virtualization and sufficient for many isolation requirement sets.
Container image: A container image is essentially a snapshot of a container. They are created with a build command and produce a container that you can later run.
Content delivery network (CDN): Physically distributed servers that provide (often static) content along paths optimized per user; decrease transport time and overall network load; simplify per-machine resource management; prevent DoS by distributing (and thereby absorbing) requests.
Data volume: A marked directory inside of a container that exists to hold persistent or commonly shared data.
Distributed system: Any number of computer systems linked by a network.
Docker: An open source platform aimed to deploy and manage virtualized containers.
Dockerfile: A file that contains one or more instructions that dictate how a container is to be created.
Dynamic or agile environment: An environment where servers are frequently scaled up or down.
Elastic ephemeral computing: Ephemeral storage and computing via instance store volumes available on EC2.
Event-driven architecture: A pattern promoting the production and consumption of events used to integrate different parts of a system.
Functions(-as-a-Service): Cloud services that enable app serverless app management and development. Common FaaS providers include AWS Lambda, Azure Functions, and Google Cloud Functions.
Host-based intrusion detection system (HIDS): A software application that monitors and analyzes a computer system for any unauthorized activity.
Hybrid cloud: An environment that uses a combination of on-premises, private cloud, and public cloud services.
Jenkins: open source automation server with plugins to support building, deploying, and automating any project.
Kubernetes: An open-source container cluster management platform maintained by Google.
Lambda (serverless architecture): AWS cloud service that enables the building of we apps and mobile backends in a faster, more agile way.
Lift and shift: Common cloud migration option that replicates in-house apps in the cloud without re-design.
Managed DNS: An external service provider that runs authoritative DNS servers on your behalf, answering queries about your domain names.
Mesosphere: A commercial container cluster management platform based on Apache Mesos.
Metered licensing: Per-use licensing flexibility in the cloud.
Microservices: A pattern based on service-oriented architectures used to build cloud-native and independently deployable systems.
Microservices architecture: Describes applications built as collection of single-process services communicating over constrained and easily managed channels (often HTTP), where each service does one well-defined business level task or set of tasks and scales independently of other services. Microservice component boundaries map onto bounded contexts in Domain-Driven Design. The aim is to make changes easier, deployment faster, technology<->business match tighter, infrastructure more automated, conceptual and data models more flexible, and applications more resilient to failure.
Orchestration: The process of managing how containers are created and how they are connected.
Origin server: Application servers that serve content to a CDN when an object is no longer cached or has expired.
Private cloud: Dedicated to a single organization and delivers scalability and self-service through proprietary architecture.
Private container registry: A private and secure location to publish, store, and retrieve container images for software you use in your infrastructure.
Protocol buffers: Google’s language-neutral, platform-neutral, extensible mechanism for serializing structured data, similar to a smaller, faster, and simpler XML.
Public cloud: Based on the standard cloud computing model where a service provider makes applications, storage, and other resources available to the general public via the internet.
Scalability: The ability for the cloud to continue to function well when the usage and storage has grown.
Scale elastically: Delivering capacity on demand and then eliminating when it is no longer needed.
Semantic versioning: A governance scheme for how to structure a version number and when to adjust it.
Serverless: A platform providing computing, networking, and storage without the need of managing (virtual) machines.
Service discovery: A cloud-native design pattern to discover distributed microservices in a flexible architecture.
Vendor lock-in: Where customers are dependent on a single cloud provider technology implementation and cannot easily move in the future to a different vendor without substantial costs, legal constraints, or technical incompatibilities.
Web API: An HTTP endpoint designed to accept and return data, rather than HTML.
WebSocket: A computer communications protocol, providing full-duplex communication channels over a single TCP connection.
Did we miss any terms? Please let us know in the comments and we’ll add them to this list!