Zobrazit příspěvky

Tato sekce Vám umožňuje zobrazit všechny příspěvky tohoto uživatele. Prosím uvědomte si, že můžete vidět příspěvky pouze z oblastí Vám přístupných.


Příspěvky - Zabanovaný Anonymní Troll

Stran: 1 ... 15 16 [17] 18 19 ... 31
241
Odkladiště / Re:Jak zdrhnout z IT?
« kdy: 27. 08. 2019, 08:16:49 »
Bratranec je drevorubec. Specializuje se na rizikove kaceni. Vydela si zhruba stejne jako ja v IT. Teda on ma zivnost a ja HPP takze to nejde uplne srovnat, ale +/- podobna zivotni uroven.
On musi shanet ksefty a jednat se zakazniky o fakturach, ale zase se neda kacet porad takze ma hodne volna. Pracuje na cerstvem vzduchu a ma silu jako bejk  :).
Intelektualni narocnost je predpokladam nizsi nez u programovani, aspon po nejakym case az si clovek zvykne na discipliny a udela si par skoleni.

Tak tohle co jsi řekl je přesně TO co mě totálně se re na moji práci. Celý život jsem se jenom učil a vydával svoji duševní energii na získání nějakého nového skillu, a teď mám tvl nadváhu a z práce dojdu domu duševně vysáty. V mezičase vídám kolem sebe lidi, co věnovali energii do něčeho normálnější ho a mají se financne stejně jako ja. Jestli vůbec budu mít děti, tak si dám záležet na tom, aby je nezpracovali ve škole, protože mi přijde že člověk nakonec v životě dojde dál, když nedělá co nechce. Děti ve škole i na střední mají ohromnou pravdu, když se jim to učení hnusi. - nabyté vědomosti v takové mire jsou totiž cloveku strašně nepřirozeně. Kolik takové nepřirozenosti člověk může pojmout, aby se ještě dál považovat za normálního? V našem oboru jsou nejlepší ti, co mají nějaký mentální disorder.

242
Odkladiště / Jak zdrhnout z IT?
« kdy: 26. 08. 2019, 22:59:10 »
Máte někdo nějaké tipy, čím jiným se může živit sw inzenyr? Kam by se tak dalo zdrhnout? Měl bych zájem do budoucna o něco méně intelektuálně náročného, jenže jak se tím v ČR uživit?

243
Nicmene to bude aplikace kde budou tak max 3 useri najednou na intranetu, takze me to staci jednoduse:
Kód: [Vybrat]

<script>
    (function poll() {
        setTimeout(function() {
            $.ajax({
                url: "/events?timeout=5000",
                type: "GET",
                success: function(data) {
                    $("#table").html(data);
                },
                complete: poll
            })
        }, 0);
    })();
</script>


Kód: [Vybrat]
    @GetMapping("events")
    public String getEventsLongPoll(@RequestParam(name="timeout", required = false, defaultValue="0") Integer timeout, Model model) {
        if(timeout > 0) {
            events.changeListener(timeout);
        }
       
        model.addAttribute("events", events.getEventQueue());
       
        return "events";
    }

Template v Thymeleafu:
Kód: [Vybrat]
<!DOCTYPE HTML>
<html xmlns:th="http://www.thymeleaf.org">

<p th:text="${events}></p>

Pricemz na user si potencionalne muze tedy nastavit, jaky chce timeout, pripadne si muze dat timeout=0 aby dostal okamzitou odpoved.

244
Ja se na to jak to udelat pres Websocket dival:
https://spring.io/guides/gs/messaging-stomp-websocket/

neni to zbytecne slozite? Ten polling dokaze byt docela jednoduchy, jenom k tomu mit vhodnou knihovnu. Jakou pridanou hodnotu mi daji Websockety?
Přidaná hodnota je ta, že už to máte ve Springu implementované (včetně volitelného fallbacku na long-polling), je to vyzkoušené a funguje to. Včetně těch klientských knihoven.

Když si to budete implementovat sám, po nasazení do produkce zjistíte, že v reálném světě jde komunikace často přes nějaký NAT nebo proxyserver, které mají nějaké timeouty na dobu neaktivního spojení. Takže vám po nějakém čase spojení tiše uzavřou, a vy se to dozvíte až v okamžiku, když budete chtít ze serveru odeslat nějakou zprávu. Jenže to spojení potřebujete znovu navázat z klienta. Takže tu svou implementaci rozšíříte o nějaký mechanismus keep-alive.

Pak zjistíte, že mít na serveru jedno uspané vlákno pro každého připojeného klienta také není nejlepší nápad.

A takhle se vám ta docela jednoduchá implementace bude postupně komplikovat, a za chvíli budete litovat toho, že jste nepoužil to, co máte k dispozici „na pár kliknutí“. Zvlášť, když už teď máte aplikaci postavou na Spring MVC, takže nepotřebujete nic nového, stačí to nakonfigurovat a začít používat.

Chapu, nicmene myslim si, ze ten long pooling nebude tak obtizny.

1. Timeoutovani nejakym proxyserverem se vyresi uz v jQuery, kde se nastavi timeout 2000ms. Tim to bude vytimeoutovano drive, nez to vytimeoutuje cokoliv jineho.
2. Jedno uspane vlakno na jeden request se da snadno vyresit tak, ze se ve springu pouzije jako response DefferedResult<NejakaMessage>. Chova se to jako Future. Takto i kdybych tam mel 100000 requestu na long pollingu, tak mi je dokaze vsechny obsluzit jedno jedine vlakno. Kdyz vznikne potrebna eventy, tak to jedno vlakno nastavi vsem DefferedResult status na completed.

Potrebuju opravdu jenom jednu jedinou vec: knihovnu v javascriptu, abych si to nemusel zbytecne psat sam.

Ta knihovna bude postavena rekneme nad jQuery a postara se mi o chytre redundantni naslouchani na Serveru. To je opravdu vsechno co potrebuju.

245
To je long polling, a to presne dela moje implementace.

tak proč tam máš ten timeout? Smysl long pollingu je, že pošleš nový request okamžitě, server stále drží jeden request.

To je ted uplne jedno ze to tam je, a to tvoje "okamzite" predstavuje taky jisty timeout. Tak si predstav ze ten timeout je ten tvuj "okamzite"-timeout a budes spokojeny.

Ja tady v Jave ted nedokazu udelat neblokujici server, na kazdy request se vyrobi 1 thread, takovy je design frameworku ktery pouzivam. Long Polling -> musim waitovat thready.

246

Na long polling nepotrebuju neblokujici server, na long polling potrebuju, aby server vratil response az v momente, kdy je k dispozici nova informace. To je long polling, a to presne dela moje implementace.

https://stackoverflow.com/questions/11077857/what-are-long-polling-websockets-server-sent-events-sse-and-comet
Citace
Ajax Long-Polling:
A client requests a webpage from a server using regular HTTP (see HTTP above).
The client receives the requested webpage and executes the JavaScript on the page which requests a file from the server.
The server does not immediately respond with the requested information but waits until there's new information available.
When there's new information available, the server responds with the new information.
The client receives the new information and immediately sends another request to the server, re-starting the process.




Ty proste jenom nevis, co dela ten blok "synchronized(lock)", protoze ses javascriptar nebo pythonak...

247
Zkousim na to jit cestou long pollingu:

to není long polling, pouze polling. Long polling je zdržení odpovědi na backendu. To co děláš, je nejhorší možný způsob, jak z uživatelského hlediska, tak z hlediska zatížení serveru.

Ale hovno, je to presne long polling.

248
WebSockety. Ve Springu pro to máte podporu: Web on Servlet Stack – WebSockets nebo Web on Reactive Stack – WebSockets.

Ja se na to jak to udelat pres Websocket dival:
https://spring.io/guides/gs/messaging-stomp-websocket/

neni to zbytecne slozite? Ten polling dokaze byt docela jednoduchy, jenom k tomu mit vhodnou knihovnu. Jakou pridanou hodnotu mi daji Websockety?

249
Potrebuju mit takovy life-reload <div> elementu na frontendu. Jamile se mi na backendu neco zmeni, melo by se to okamzite promitnout do toho <div>. A nechci to refreshovat nejakym timerem.

Zkousim na to jit cestou long pollingu:

Kód: [Vybrat]
<script>
    (function poll() {
        setTimeout(function() {
            $.ajax({
                url: "/events",
                type: "GET",
                success: function(data) {
                    $("#table").html(data);
                },
                complete: poll,
                timeout: 10000
            })
        }, 1000);
    })();
</script>

Na backendu na prichozim requestu potom zavolam wait(timeout) a tim zablokuju thread requestu:

Kód: [Vybrat]
        synchronized (lock) {
                lock.wait(waitMs);
        }

A kdyz se mi ve worker threadu vyvola patricna udalost, tak v nem zavolam:

Kód: [Vybrat]
        synchronized (lock) {
            lock.notifyAll();
        }

Tim dojde k tomu, ze se thread requestu probudi a na frontend se okamzite vrati vystup s aktualnimi daty, updatuje se <div> a pak se znovu udela z jquery request.


Tento pristup je docela jednoduchy, ma vsak jisty design leak:

Mezi 2 po sobe jdoucimi http requesty je slepe misto, kdy na udalost neceka zadny request - pokud by se zde vyvolala udalost, tak ji nic nezachyti. To je problem.

Potreboval bych nejakou javascriptovou knihovnu k tomuto urcenou, ktera se mi sama postara o to, aby na backendu vzdy naslouchal alespon 1 request.

Nicmene necham si poradit, jak to udelat vsechno nejak lip. Na backendu mam Javu a Spring MVC.

250
Vývoj / Re:Váš názor na kombinaci několika technologií
« kdy: 03. 08. 2019, 08:35:30 »
Překvapuje mne vlažné rozšíření Groovy. IMHO jakýkoli javista může začít psát v Groovy a postupně adoptovat jeho vylepšení oproti javě. A přitom je to jvm jazyk.

Zbytecne, naco, proc by to nekdo mel chtit delat? to uz mi prijde lepsi nez Groovy Typescript. To uz bych se radeji naucil Python nez Groovy.

251
Vývoj / Re:Váš názor na kombinaci několika technologií
« kdy: 02. 08. 2019, 21:22:26 »
Kdyz delas architekturu plochou s dependency injection, tak prirozene potrebujes udelat domenove pojo tridy, a na tech pojo se skvele uplatnuje dedicnost.

Mimochodem kdyz se tu resily ty staticky a dynamicky typovane jazyky, tuhle jsem se setkal s nazorem, jaka ze to je rpuda, ze nemuzu v Jave pracovat primo s JSONem. Podle me je to blbost, v cem je problem udelat si tridu, ktera predstavuje ten json se kterym pracuju (a namapovat si JSON do te tridy). Neni v tom podle me vubec zadna prace navic u jakekoliv aplikace vetsi nez male a podle me to dokonce setri praci a dela poradek v kodu.

252
Vývoj / Re:Váš názor na kombinaci několika technologií
« kdy: 02. 08. 2019, 11:29:32 »
Hosi jde videt ze jste fakt amateri a nevite ktera bije. Takovihle amaetori to jsou takovi ti lidi, kteri kdyby v Jave programovali, tak spatne  8) Java je nejvetsi nigga ze vsech otevrenych platforem, v tom co dela je nejlepsi, je to nejstandardnejsi a nejfunknejsi vec. Za to, ze programatori udelali memory leaky nemuze Java, zpusobi to predevsim debilni management, ktery nedava dostatek casu na vyvoj a na udrzbu a do tymu nedaji alespon jednoho skveleho seniora. Java v soucasnosti stale nema zadnou konkurenceschopnou alternativu pro enterpsise backend.

Amatér si možno ty, v ostatných jazykoch než Java. Bastlíš si tam nezmysli. Na kilo kódu máš 2 kilá OOP balastu, 1 kilo setterov, getterov, a nevím čo ešte. OOP samotné chyba nieje, ale tak jak je implementovaná v Jave je chyba najväčšia. Popravde, pred nedávnnom na roote bol článok k tomu, kde v podstate odslova doslova vysvetlili čo vše je v Jave nezmysel. Viď odkazy:

https://sw-samuraj.cz/2019/02/remcani-proti-jave/
https://medium.com/better-programming/object-oriented-programming-the-trillion-dollar-disaster-92a4b666c7c7
https://medium.com/@cscalfani/goodbye-object-oriented-programming-a59cda4c0e53

(práve ten druhý a tretí link, to je jak kdyby autor prečítal môj mozog, a všetko čo si myslím o Jave napísal v článku, sám když som to čítal bol som v šoku jak presne zhodný názor na to autor má, snaď až na výnimku že funkcionálne programovanie si nezmyslím že je jediná správna cesta, ale inak...).

Ak už inak autor OOP konceptu nadáva na najviac "moderný OOP" jazyk, tak asi neco na tom bude.

Jo? A co sis teda nasel za alternativu k Jave, pochlub se, treba mate na Slovensku neco, co svet jeste neobjevil 8) Jestli je alternativa kombinace nekolika ruznych jazyku, tak navstiv doktora  8)

A co se tyce OOP, tak jde videt, ze neznas nejmodernejsi metodologie organizace zdrojoveho kodu, ktere se vyvinuly v Jave za poslednich 20 let, a delali to vetsi bedny nez si ty 8) Ty v tom proste hochu neumis  8) To, ze se na vsechno nehodi ultra OOP, to my experti co delame v Jave davno vime, ty ale jeste zrejme ne  8) Dneska je nejpopularnejsi plocha architektura, s rozdelenim na stateless tridy spojovanymi dependency injection, pojo objeky, se stridmym uzivanim typove hierarchie  8) A my experti v Jave, kdyz se nam to hodi, dovedeme udelat i highperformance asynchronni aplikace treba s Vertex  8) A ti nejvetsi experti, kdyz se jim to hodi, si muzou udelat i ultra OOP knihovnu  8)

Mas se synku jeste hodne co ucit 8)

253
Vývoj / Re:Váš názor na kombinaci několika technologií
« kdy: 02. 08. 2019, 08:07:49 »
Hosi jde videt ze jste fakt amateri a nevite ktera bije. Takovihle amaetori to jsou takovi ti lidi, kteri kdyby v Jave programovali, tak spatne  8) Java je nejvetsi nigga ze vsech otevrenych platforem, v tom co dela je nejlepsi, je to nejstandardnejsi a nejfunknejsi vec. Za to, ze programatori udelali memory leaky nemuze Java, zpusobi to predevsim debilni management, ktery nedava dostatek casu na vyvoj a na udrzbu a do tymu nedaji alespon jednoho skveleho seniora. Java v soucasnosti stale nema zadnou konkurenceschopnou alternativu pro enterpsise backend.

254
Vývoj / Re:Váš názor na kombinaci nekolik technologii.
« kdy: 28. 07. 2019, 12:21:47 »
Tento pristup naprosto schvaluju, cim vice takovychto bastliru, tim vic roste cena nas dobrych hochu co delame vonavoucke standardni aplikace v Jave jiz nekolik dekad 8) Takze jen do toho.

Jojo hosi, ne nadarmo jsou Java a jeji plagiat od Microsoftu nejpouzivanejsi platformy jiz nekolik desetileti  8)

255
Bazar / Re:Sháním funkční osciloskop a stabilizovaný zdroj
« kdy: 19. 07. 2019, 19:59:43 »
Môžem poskytnúť Teslácky 100 MHz dvojkanál osci BM566A za 150 Eur.
Ak zoberieš hneď 2ks, tak je cena 250 Eur za 2ks.
K tomu môžeš mať zdarma 100 MHz Teslácky čítač BM526, multimeter BM518, RC generátor BM344.
Osobný odber nutný. Stihnúť je to potrebné max do 2 týždňov.

A kdyz si odvezes vsechny 4 Tesly co ma, tak to mas prosim zcela zadarmo  ;D

Stran: 1 ... 15 16 [17] 18 19 ... 31