Systems | Development | Analytics | API | Testing

January 2023

WebSockets vs Server-Sent Events: Key differences and which to use

WebSockets and Server-Sent Events are commonly used in realtime applications where quick and efficient data transfer is a critical requirement. The expectations of realtime experiences in applications has only grown with time, with improving technology and understanding of what is possible. This article compares two popular realtime protocols — the WebSockets and Server-Sent Event APIs. Below you’ll learn what each is capable of, their pros and cons, and when to use them.

Rails ActionCable - the good and the bad

ActionCable allows developers to move away from the typical request/response paradigm of old to one where persistent WebSocket connections are maintained from clients to your Rails servers. Event-driven and low-latency, WebSockets are an excellent choice for use cases like live chat, alerts & notifications, and realtime data broadcast.

Ably Terraform provider: provision & configure Ably programmatically

The Ably Terraform provider greatly simplifies the provisioning and managing of realtime architectures that include Ably via HashiCorp Terraform. Our growing reliance on realtime applications is highlighted both by the impact of incidents such as WhatApp’s latest outage, and by an exponential growth in use cases for realtime technology. This growth is spurred on by the fast adoption of dynamically orchestrated, microservice-oriented cloud architectures.

Building realtime infrastructure: Costs and challenges

Realtime digital experiences are in high demand. They keep users engaged, informed, and entertained in a fast-paced digital world, and they allow businesses to better serve their customers, provide more efficient and effective services, and gain the upper hand over competitors. This is the second post in a series that looks at what it takes to build and deliver realtime experiences for end-users.

Live chat examples: Companies using live chat in creative ways

Imagine you’re running a logistics business. Your asset tracking stops working, and the only way for customers to get in touch is via email or phone. As calls and emails pile in, your support team becomes stretched - and customers become frustrated as they have to wait to have their calls taken and emails answered. Now imagine if instead the customer who first experienced the issue could have accessed a live chat service, and easily let your customer service team know what was going on.

What it takes to build a realtime chat or messaging app

We all expect online experiences to happen in realtime. Messages should arrive instantly, dashboards should deliver business metrics as they happen, and live sports scores should broadcast to fans around the world in a blink. This expectation is even higher for chat, which is now embedded in everything from e-commerce platforms to online gaming. But building realtime chat requires some heavy lifting—especially if you’re starting from scratch.

Building realtime experiences: Capabilities and use cases

Internet users increasingly expect their digital experiences to be realtime. To meet this growing expectation, augmenting digital products with realtime features is becoming a priority for many businesses. This is the first post in a multi-part series that looks at what it takes to build and deliver realtime experiences for end-users. This post covers the core capabilities you need to engineer realtime functionality.