Avatar
Pyvo
Člen
Avatar
Pyvo:

Vyvíjím sadu několika webových aplikací. Ve formuláři zadá uživatel vstupní data a appka provede výpočet a zobrazí výsledky. Některé aplikace jsou jednoduché - třeba sada deseti rovnic a hotovo. Některé jsou složitější - matice 100x100 a úpravy na nich, hodně iterace.

  • Všechny aplikace tahají data z sql databází, takže většina vstupních dat je na serveru tak jako tak.
  • Není žádný důvod použít server pro ověření vstupních dat. Uživatel (obejitím frontend validace) může poškodit jen sám sebe.
  • Vyhovuje mi python na serveru, protože má skvělou knihovnu numpy pro numerické výpočty. Ale nechci aby se uživatel rozčiloval kvůli pomalé odezvě. V JS bych to snad taky zvládl naprogramovat.

Provádět výpočty v javascriptu/jquery a přenést tak zátěž na uživatele nebo vše nechat na serveru (python+flask)? Existuje nějaké obecné dopooručení? Díky

 
Odpovědět 1. prosince 15:56
Avatar
Odpovídá na Pyvo
Petr Čech (czubehead):

Pokud jsou data jen pro uživatele tak v prohlížeči. Je zbytečné zatěžovat server.

Nahoru Odpovědět 1. prosince 16:20
Why so serious? -Joker
Avatar
Jiří Gracík
Redaktor
Avatar
Odpovídá na Pyvo
Jiří Gracík:

Má to běhat i na telefonu? Je ten výpočet potřeba pokaždé, když zobrazíš stránku, nebo méně často?

Nahoru Odpovědět 1. prosince 16:32
Creating websites is awesome till you see the result in another browser ...
Avatar
Martin Florián:

Zajímavé téma. Určitě bych se přiklonil k tomu, aby výpočty prováděl server. Tady je příklad proč:

  • Mám pár let starý smartphone (1C, 512MB RAM), tedy výpočty budou trvat mnohem déle než na serveru
  • Používám pomalé připojení, takže se výrazně zvýší latence, protože potřebuji nejprve stáhnout všechny JS a následně i vstupní data z DB
  • v případě, že výpočet bude trvat až přiliš dlouho, je celkem jednoduché ho korektně ukončit na serveru a zalogovat událost pro budoucí analýzu
 
Nahoru Odpovědět 1. prosince 16:39
Avatar
Luboš Běhounek (Satik):

Pokud je to něco, kde je hodně výpočtů a kde je šance, že to bude používat víc lidí, tak na klientu, jinak brzo server přetížíš :) .

Nahoru Odpovědět  +1 1. prosince 16:42
:)
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Pyvo
David Čápka:

Pokud to je něco, co není příliš obchodně zajímavé, dal bych kód klidně ke klientovi. Když tam dáš ale něco převratného, musíš počítat s tím, že to jde z klienta velmi jednoduše ukrást a to i když to obfuskuješ.

Nahoru Odpovědět  +1 1. prosince 17:38
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
Pyvo
Člen
Avatar
Odpovídá na Jiří Gracík
Pyvo:

Odpovím na otázky z diskuze.

  • Předpokládá se většina uživatelů na desktopu. Mobil jen okrajově. Ale tohle se těžko odhaduje.
  • Výpočet proběhne až si uživatel řekne, nikoliv při každém zobrazení stránky.
  • Nechtěl bych aby do kodu někdo hrabal. Díky za připomínku, tohle mi uniklo.

Zatím jsem spíše pro výpočet na serveru. Přetížení je samozřejmě reálná hrozba, takže bych to chtěl sledovat a pak případně řešit.

 
Nahoru Odpovědět 2. prosince 7:53
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 7 zpráv z 7.