bg_image
header

Cloud Computing

Cloud computing refers to the delivery of computing resources over the internet. Instead of using local servers or personal devices to store data or run applications, cloud services are provided and managed by a provider over the internet.

There are different types of cloud services:

  1. Infrastructure as a Service (IaaS): It provides basic computing resources such as virtual machines, storage, and networking. Users can utilize and manage these resources without owning physical hardware.

  2. Platform as a Service (PaaS): It offers a platform for developers to build, run, and manage applications without worrying about the underlying infrastructure. This includes databases, development tools, and middleware.

  3. Software as a Service (SaaS): Fully hosted applications that can be accessed and used over the internet without requiring installations or updates on the users' devices. Examples include email services, office suites, and CRM systems.

Cloud computing offers numerous benefits, including scalability, flexibility, cost-effectiveness (through usage-based billing), easier access to resources, and regular updates to services provided by the vendor.

It's used across various domains, from businesses looking to outsource their infrastructure to developers aiming to build scalable applications. The cloud has significantly transformed how resources are provisioned and applications are developed.

 


Publish-Subscribe-Pattern - PubSub

The Publish/Subscribe pattern (often abbreviated as Pub/Sub) is a communication pattern in software development that enables loose coupling between components or systems. It involves two main actors: the Publisher and the Subscriber.

  • Publisher: Responsible for generating and publishing messages or events. A Publisher sends messages to a central location, the Message Broker or Pub/Sub system.

  • Subscriber: Registers for specific types of messages or topics it wants to react to. A Subscriber receives messages published by the Publisher and forwarded by the Message Broker to the respective subscribers.

The key concept in the Pub/Sub pattern is that the Publisher doesn't send messages directly to specific recipients but rather to a central intermediary system. This system stores messages and then distributes them to all Subscribers interested in the corresponding topic or type of message.

The pattern enables decoupled, scalable, and flexible communication between different parts of an application or between different applications. It's used in various systems and technologies, including messaging brokers, cloud platforms, IoT (Internet of Things), real-time analytics, and other scenarios requiring flexible message delivery.

 


Google Cloud PubSub

Google Cloud Pub/Sub is a managed messaging service provided by Google, based on the Publish/Subscribe model. It enables scalable and reliable message delivery between applications and systems in real-time.

Cloud Pub/Sub serves as a central intermediary for message delivery between different components within cloud infrastructure or across various applications. It facilitates Publish/Subscribe communication, where Publishers send messages to specific topics, and Subscribers subscribe to these topics to receive messages.

Some key features of Google Cloud Pub/Sub include:

  1. Scalability: It can handle messages in large volumes and is designed for high throughput rates.

  2. Reliability: It ensures message delivery with low latency and offers persistence to prevent message loss.

  3. Real-time processing: Facilitates real-time message transmission between applications or systems.

  4. Integration: Seamlessly integrates with other Google Cloud services and can connect to external systems.

Cloud Pub/Sub is commonly used in cloud-based applications, data processing pipelines, real-time analytics, IoT (Internet of Things), and other scenarios requiring reliable and scalable message delivery.