J'ai une application javascript qui envoie une grande quantité de données numériques sur le réseau. Ces données sont ensuite stockées dans une base de données. J'ai des problèmes de taille (trop de bande passante, la base de données devient trop grande). Je suis maintenant prêt à sacrifier certaines performances pour la compression.Compression de tableau de grand nombre
Je pensais implémenter un numéro de base 62 à chaîne (62) et à parseInt (compressé, 62). Cela réduirait certainement la taille des données, mais avant d'aller de l'avant et de le faire, j'ai pensé que je mettrais les gens ici, car je sais qu'il doit y avoir une solution hors des sentiers battus que je n'ai pas envisagée.
Les spécifications de base sont les suivants: - Compresser grands tableaux de nombres en chaînes pour le transfert JSONP (Je pense donc que UTF est hors) - être relativement rapide, regardez je ne suis pas attendre même performance que j'ai maintenant mais je aussi don ne veux pas de compression gzip non plus.
Toutes les idées seraient grandement appréciées.
Merci
Guido Tapia
Pourquoi ne pas gzip? Qu'est-ce qui ne va pas avec ça? (ou plus probablement, DEFLATE) Vous pouvez aussi faire quelque chose comme Huffman, ou juste LZW, si vous voulez le garder plus simple. Huffman codant en Javascript: http://tom-ash.net/blogs/Blog.aspx?File=Programming/20090602_HuffmanCompression.blog – Cheeso
Juste pour être clair - envoyaient des données du client au serveur via javascript et ajax/jsonp? –
@James: Correct, nous envoyons un très grand nombre de tableaux sous forme de chaîne à un serveur. Le tableau n'est pas en JSON (donc pas de balises XML stupides - [edit] oups je voulais dire des accolades) juste un string.join ('.') Entre les ints. Cette chaîne est ensuite stockée dans une base de données (qui est le problème de taille réelle). – gatapia