Skip to content

Commit 4ee2797

Browse files
authored
Merge pull request #3058 from ably/FTF-452-write-usp-copy-for-live-objects
Adds USPs to liveobjects docs
2 parents f2d8f79 + 6779168 commit 4ee2797

File tree

4 files changed

+19
-1
lines changed

4 files changed

+19
-1
lines changed

src/pages/docs/liveobjects/concepts/operations.mdx

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,12 @@ When you create or update an object, the change is expressed as an _operation_ t
3131

3232
This document explains the key concepts you need to know when working with operations.
3333

34+
<Aside data-type='usp'>
35+
Exactly-once delivery
36+
37+
Ably's platform guarantees [idempotent publishing](/docs/platform/architecture/idempotency), ensuring that each operation is applied exactly once across all subscribers — even if the publishing client retries due to network issues.
38+
</Aside>
39+
3440
## Operation types <a id="operation-types"/>
3541

3642
Each object type supports specific operations that modify the object's data.

src/pages/docs/liveobjects/inband-objects.mdx

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,12 @@ If you're using LiveObjects from one of the the following languages, then use th
3737

3838
Inband objects works by delivering changes to channel objects as regular channel messages, similar to [inband occupancy](/docs/channels/options#occupancy).
3939

40+
<Aside data-type='usp'>
41+
Scalable message fanout
42+
43+
Inband object updates are delivered as regular channel messages through Ably's [horizontally scalable architecture](/docs/platform/architecture/platform-scalability), so LiveObjects state changes can be distributed to any number of subscribers simultaneously.
44+
</Aside>
45+
4046
## Enable Inband Objects <a id="inband-objects-enable"/>
4147

4248
To enable inband objects, use the `objects` [channel parameter](/docs/channels/options#objects) when getting a channel:

src/pages/docs/liveobjects/index.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ Ably LiveObjects provides a serverless, durable, and scalable way to create, upd
2929

3030
LiveObjects provides a global, durable, and conflict-free shared data layer built on Ably's [global platform](/docs/platform/architecture), so your application state stays perfectly synchronized in realtime without the need to build or manage complex infrastructure yourself.
3131

32-
<Aside class="note">
32+
<Aside data-type='note'>
3333
LiveObjects has the same performance guarantees and scaling potential as [channels](/docs/channels).
3434
</Aside>
3535

src/pages/docs/liveobjects/storage.mdx

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,12 @@ This means that if a client disconnects from Ably for a short period of time, it
2929

3030
Operations themselves are not included in the [history](/docs/storage-history/history) or [rewind](/docs/channels/options/rewind) backlog of a channel. Instead, you should interact with objects directly via the client library.
3131

32+
<Aside data-type='usp'>
33+
Two-tier recovery
34+
35+
Short disconnections (under two minutes) are resolved by replaying missed operations via [automatic connection recovery](/docs/platform/architecture/connection-recovery), while longer disconnections trigger a full resync from durable storage. Either way, clients always converge to the correct state automatically.
36+
</Aside>
37+
3238
## Object size limit <a id="limits"/>
3339

3440
The channel object has a maximum size limit, the default is 6.5(MB). This takes into account the size of every LiveObject (Map and Counter). When calculating the size of a channel object, Ably ignores any object or map entry with a [tombstone](/docs/liveobjects/concepts/objects#tombstones).

0 commit comments

Comments
 (0)