Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p><strong>Update:</strong> Based on your edit, I believe Mr. Deni Mf's link is a nice pointer to getting peer to peer working. But I believe that technology isn't available yet for general usage, and that you will probably be better off syncing against a server, possibly even a third party allowing you to do this (Amazon S3 and/or similar services). Chrome has some sync service built in already - <a href="https://stackoverflow.com/questions/4901024/how-to-synchronize-chrome-extension-data-on-different-computers">How to synchronize Chrome extension data on different computers?</a> - but you can only use that for small amounts of data, so realistically those can only be pointers to real data hosted elsewhere.</p> <p><strong>Original answer below:</strong></p> <p>There are a few aspects you need to figure out. Firstly, when you say "multiple computers", does that mean multiple computers talking to the same set of server(s), or do you actually mean multiple computers in a peer to peer sense (each computer is both a client and a server).</p> <p>Secondly, you need a synchronization mechanism and protocol. If everything is nice and everybody is trusted with no real secrets and running You've got at least a couple of challenges; on a private network of some kind, you may very well use something like CouchDB or similar which works great out of the box (but becomes challenging as soon as you try to add authentication and authorization to data). If not, you need to roll your own.</p> <p>Assuming you have clients talking to a specific set of servers (using HTTP or similar), and assuming you can not use CouchDB or similar (for the reasons stated in the previous paragraph), rolling your own isn't too hard. Since database rows (or similar) may be created on any client or server, using a traditional serial integer primary key will most likely not be worth it, and you need to use UUID or similar for unique keys (so each machine can create it's own - assumed unique - key for any object). Add at least one column for each row which contains it "updated" timestamp (when the object was created or updated) and add another database containing the last synchronization timestamp. Whenever the client connects, ask the server for any updates since you last connected, and send the server any updates you created locally since you last connected. Things like deleting rows is a bit trickier since a deleted row has no "updated" timestamp, so consider just adding a simple "deleted" flag to each row to make things simpler.</p> <p>This should at least be enough to get you going.</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload