Se si desidera salvare il disegno come immagine, esistono alcune soluzioni possibili.
- salvare l'elemento da qualche parte in una cartella e salvare il percorso della directory + il nome del file nel database
- Salvare le immagini nel database come un
blob
. Tuttavia, i BLOB sono davvero intensivi di database.
Ci sono alcuni interessanti articoli su BLOB. Come this one da microsoft.
Come previsto dalla comune saggezza, gli oggetti più piccoli di 256 KB sono archiviati al meglio in un database mentre gli oggetti più grandi di 1M sono archiviati al meglio nel file system.
Quindi, in termini di prestazioni, sarebbe una soluzione migliore per salvare l'immagine in una directory.
È anche possibile esportare un file svg
di un'immagine disegnata. (info) Non so se questo ti può aiutare, ma questa è la mia esperienza personale. E sono d'accordo con te che memorizzare migliaia di comandi in un database non è la soluzione migliore. Quindi potresti voler dare un'occhiata al salvataggio delle immagini da qualche parte, ma in tal caso perderai la possibilità di modificare un'immagine se hai implementato questo.
Aggiornamento:
Se non si desidera salvare un blob
la soluzione migliore sarebbe quella di "rendere" l'immagine ogni volta che una modifica è fatto. Quindi è possibile eseguire tutti i comandi quando qualcuno apre il disegno. E applica solo gli ultimi comandi quando viene attivata una modifica.
Ci sono diverse opzioni per raggiungere questo obiettivo. Come Jimmy Chandra ha detto, firebase
sarebbe una buona soluzione. Offrono anche un tutorial con praticamente tutto ciò che si desidera ottenere. (disegnare un'immagine usando le coordinate x
e in tempo reale) Forse dovresti dare un'occhiata a questo.
Ulteriori informazioni su Firebase.
Firebase è un potente API per archiviare e sincronizzare i dati in tempo reale
Questo è esattamente quello che si vuole raggiungere credo. Puoi provare il loro tutorial completo here.
Un'altra opzione che è possibile prendere in considerazione è nodejs
. Ho visto persone che usano nodejs
per i sistemi di chat per inviare i dati a tutti gli altri utenti. Se puoi inviare dati, sono sicuro che puoi disegnare un'immagine con esso.
Alla fine spetta a voi scegliere quale tecnologia si desidera utilizzare. Quindi penso che tu possa dover indagare su alcune soluzioni come ho suggerito e fare una domanda diversa se ti imbatti in problemi con l'integrazione di quella tecnologia.
Hai guardato Firebase? Sono abbastanza bravi a fare questo tipo di cose in sincronia a 3 vie. sorgente, server e altri client allo stesso tempo ... https://www.firebase.com/tutorial/#session/nvjq7b2kop2 –