[wp-trac] [WordPress Trac] #60375: Site Transfer Protocol
WordPress Trac
noreply at wordpress.org
Wed Nov 20 19:23:49 UTC 2024
#60375: Site Transfer Protocol
-------------------------+------------------------------
Reporter: zieladam | Owner: (none)
Type: enhancement | Status: new
Priority: normal | Milestone: Awaiting Review
Component: Import | Version:
Severity: normal | Resolution:
Keywords: | Focuses:
-------------------------+------------------------------
Comment (by bpayton):
Replying to [comment:24 dmsnell]:
> When sites connect, a primary site can transfer all its records (the
//Transfer//) to the secondary site. It will record in the sync state
tracking which //version// of each resource it sent during the transfer
(and it can wait for acknowledgement from the receiving site). From this
point on it will have a sound guess at what content the secondary site
has.
>
> When sites continue to communicate, the primary site can compare the
version of each resource it has updated against the version it last sent
to the secondary site. Any new, deleted, or updated resources are expected
to be stale on the secondary site and thus need to be transferred over.
@dmsnell, I have some naive questions about this scheme. Hopefully, these
do not add too much noise as I have not yet considered this space deeply.
Do we assume there is always a primary/secondary relationship between
sites where syncing is unidirectional?
Could it be bidirectional or decentralized so that multiple WP sites/nodes
can sync with one another? For example, could someone editing a post on
their phone's local WP instance naturally sync their changes to their WP
instance on the web? We might view the web WP instance as primary, but a
mobile secondary might also have changes to share.
Could we simply reverse the sync direction so there is a
primary->secondary sync and then a secondary->primary sync? That way, the
secondary would have to reconcile any changes from the primary before
sharing back to the primary.
> **Discussion**
>
> I apologize for how lengthy and simultaneously rough and prescribed this
is. I'm trying to dump some ideas "onto paper" since @zieladam and I have
spoken about this many times. It's a big-picture idea for a technical
design that powers a specific user flow, which is all about visibility
into a reliable and interruptable synchronization process.
Thanks so much for getting these ideas out there. :)
--
Ticket URL: <https://core.trac.wordpress.org/ticket/60375#comment:34>
WordPress Trac <https://core.trac.wordpress.org/>
WordPress publishing platform
More information about the wp-trac
mailing list