Velky JSON rubrika: Programování: JavaScript

7 xxar3s
položil/-a 8.12.2016

Ako do js vlozit binarne data idealne ako string.

Mam totiz velky json s udajmi o 8000 produktoch json sa nacitava pri nacitani stranky a potom to nacitanie trva cca 3 sekundy. Json ma 3 MB lenze tych 8000 produktov ma neskor narast na cca 100000 produktov takze celkova velkost bude 40 MB.

Na serveri ho viem zozipovat a urobit z neho binarny string (potom ma cca 300 KB) a chcel som to dekomprimovat cez js na klientovi, akurat neviem ako takyto string vlozit do jska. SU v nom aj nealfanumericke znaky ktore JS v stringovych literaloch nepodporuje. Nemozem to vkladat ako hexaznaky ani ako byte array lebo to zase narastie.

//Edit teraz pozeram ze server ho posiela uz skomprimovany (mam tam zapnutu deflate kompresiu) tak potom si asi nepomozem, bude to treba zoptimalizovat na strane js

Komentáře

  • Honza Břešťan : Na co ta stranka potrebuje mit tolik dat najednou a ke vsemu jeste serverem zapecene do skriptu? To mi zni jako zanedbany design. Jinak base64. To sice naroste, ale tak o tretinu, ne na nejake nasobky. 9.12.2016
  • diverman : Pošli ukázku toho JSONu. Jsem si téměř jistý, že půjde optimalizovat na velikost i složitost. Např. objekty nahradit arraymi apod. 9.12.2016
  • archenroot : Ty chces zobrazovat na jedny webovy strance data o 8 tisic produktech? Nebo te zajima jenom cast tech dat? Me by zajimal celej ten use case, co jdes s tema datama delat... 4.12.2017
  • mamatoto : nazaj sa zamysli nad tym, preco potrebujes data o 8000 az 100000 produktoch naraz na klientovi 17.12.2017
odkaz
12 Kit
odpověděl/-a 9.12.2016

100k položek, to je příliš velký JSON, který svědčí o chybě v návrhu. Zatíží server i klienta až k nepoužitelnosti. Je lepší si ajaxem dotahovat pouze ty položky/kategorie, které se mají aktuálně zobrazit.

Pro zobrazení všech 6 odpovědí se prosím přihlaste:

Rychlé přihlášení přes sociální sítě:

Nebo se přihlaste jménem a heslem:

Zadejte prosím svou e-mailovou adresu.
Zadejte své heslo.