piterRRR
#programowanie #java

mirki mam dajmy na to program który wyswietla w konsoli w pętli jakieś liczby, chciałbym te liczby wyświetlać na żywo na stronie internetowej, czym i jak to najprościej zrobić? wiem ze websockety tylko nie mam pojęcia jak to na frontendzie ma być zrobione
  • Najlepsze
  • Wszystkie komentarze
witajswiecie
@piterRRR: @xenonso:
cała filozofia
YogiYogi
YogiYogi
@piterRRR: olej websockety, użyj server sent events.
piterRRR
piterRRR Autor
2
@xenonso @YogiYogi @witajswiecie
dzięki wszystki, chyba zainteresuje sie tym sse. Czyli jeśli dobrze zrozumiałem websockety do intensywnej komunikacji 2-kierunkowej, a sse bardziej do komunikacji 1-kierunkowej typu wlasnie wyswietlanie jakiś danych na stronce
witajswiecie
@piterRRR co do zasady to SSE również mogą posłużyć do komunikacji, wszystko jest kwestią potrzeb, dajmy na to api Twittera pozwala pobierać dane w formie strumienia eventów twk by można je w tej formie łatwiej przetwarzać, za to w projekcie gdzie aktualnie jestem SSE używamy do obsługi notyfikacji

Dodam że nic nie stoi za przeszkodzie by przy komunikacji przez SSE odpowiedź na event do serwera wysłać po prostu zwykłym Postem, aż
witajswiecie
@piterRRR nie ukrywam że jestem zwolennikiem opierania całej asynchroniczniej komunikacji na SSE, nie dość że prostsze w implementacji, to na dodatek łatwiejsze w debuggowaniu bo wystarczy podać URL w przeglądarce
xenonso
xenonso
@piterRRR: Wystawiasz websocket na backendzie. Najprościej na frontendzie jest użyć tego https://developer.mozilla.org/en-US/docs/Web/API/WebSocket . Podajesz adres websocketu z backendu i łapiesz wiadomości metodą onmessage
YogiYogi
YogiYogi
@xenonso: Web sockety potrafią być mocno niestabilne - powodzenia w poprawnym ich konfigurowaniu w środowisku z Kubem :)
@scriptkitty: nie ma problemu :) OP chce wyświetlać numery a nawet jeśli miałby w druga stronę coś wypychać to też nie ma prawy (ubija strumien, odpala nowy itp.).
xenonso
xenonso
@YogiYogi: Powiedz, że trollujesz. Mój wpis to była ironia. OP chciał coś najprościej zrobić znaczy, że chce najprostsze rozwiązania i dałem mu takowego przykład (wątpie czy użyje Kubernetesa skoro o coś takiego się pyta). Ale nieee, lepiej wzorem z Elektrody przekombinować wszystko a także dodać trochę pasywnej agresywności i jeszcze pokazać jakim to nie jest się "znafcom". Może idź na 4p, tam tacy się odnajdą
xenonso
xenonso
@YogiYogi: Najprostszy znaczy najprostszy w zaimplementowaniu. OP jest raczej początkujący chce tylko wyświetlać kilka cyferek a ty cuda na kiju mu proponujesz. SSE jest lepsze ale trochę trudniejsze w zaimplementowaniu a myśle, że nie o to chodziło autorowi
witajswiecie
@xenonso: akurat implementacja SSE z użyciem przykładowo webfluxa jest trywialnie prosta, da się to zaimplementować jedną metodą
scriptkitty
@YogiYogi: Problem zaczyna się robić jak komunikacja jest dwukierunkowa.
filozof900
@scriptkitty: problem sie zaczyna od samego poczatku, IE tego nie wspiera ;]
scriptkitty
@filozof900: Sorry, ja już nie żyję w świecie gdzie IE jest używane ( ͡° ͜ʖ ͡°)
Jednorybek
@piterRRR: co to ma do Javy?
xenonso
xenonso
@YogiYogi: " ...czym i jak to najprościej zrobić...". Można też tam włożyć Kafke, dane zbierać Flinkiem tylko patrząc na ten problem to websocket wystarczy
YogiYogi
YogiYogi
@xenonso: > Można też tam włożyć Kafke, dane zbierać Flinkiem tylko patrząc na ten problem to websocket wystarczy

Serio?
Z dwóch prostych do developmentu rozwiązań jakim są WS i SSE to jest dużo mniejsze ryzyko, że te drugie zrobią psikusa przy bardziej wymagającej konfiguracji sieciowej. Ale to trzeba wiedzieć z praktyki lub doświadczenia kolegów bo na kursach Udemy tego nie nauczą :)

YogiYogi
YogiYogi
@xenonso: Podaj swoją defnicję "najprostsze" bo dla mnie oznacza coś, co w szybki, prosty i możliwie bezproblemowy (w którtkiej i dłuższej przyszłości) można szybko zaaplikować. I dlatego polecam SSE do tego przypadku, o który OP konkretnie zapytał (jednokierunkowy strumien informacji do klienta). Polecanie komuś Websocketów w tej sytuacji jest wpieprzaniem kogoś na minę i mówię to z praktyki - OP nie musi Kube'a używać żeby zderzyć się z problemami, których
D.....x
D.....x
@witajswiecie: no i +1