abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 01:00 | Nová verze

    Byla vydána (𝕏) květnová aktualizace aneb nová verze 1.90 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a animovanými gify v poznámkách k vydání. Ve verzi 1.90 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 0
    dnes 00:44 | Nová verze

    Byla vydána (Mastodon, 𝕏) nová verze 2024.2 linuxové distribuce navržené pro digitální forenzní analýzu a penetrační testování Kali Linux (Wikipedie). Přehled novinek se seznamem nových nástrojů v oficiálním oznámení.

    Ladislav Hagara | Komentářů: 0
    včera 16:44 | IT novinky

    Počítačová hra Tetris slaví 40 let. Alexej Pažitnov dokončil první hratelnou verzi 6. června 1984. Mezitím vznikla celá řada variant. Například Peklo nebo Nebe. Loni měl premiéru film Tetris.

    Ladislav Hagara | Komentářů: 9
    včera 10:44 | Nová verze

    MicroPython (Wikipedie), tj. implementace Pythonu 3 optimalizovaná pro jednočipové počítače, byl vydán ve verzi 1.23.0. V přehledu novinek je vypíchnuta podpora dynamických USB zařízení nebo nové moduly openamp, tls a vfs.

    Ladislav Hagara | Komentářů: 0
    včera 10:22 | Nová verze

    Canonical vydal Ubuntu Core 24. Představení na YouTube. Nová verze Ubuntu Core vychází z Ubuntu 24.04 LTS a podporována bude 12 let. Ubuntu Core je určeno pro IoT (internet věcí) a vestavěné systémy.

    Ladislav Hagara | Komentářů: 2
    včera 01:00 | Nová verze Ladislav Hagara | Komentářů: 0
    4.6. 19:55 | IT novinky

    Intel na veletrhu Computex 2024 představil (YouTube) mimo jiné procesory Lunar Lake a Xeon 6.

    Ladislav Hagara | Komentářů: 0
    4.6. 13:44 | IT novinky

    Na blogu Raspberry Pi byl představen Raspberry Pi AI Kit určený vlastníkům Raspberry Pi 5, kteří na něm chtějí experimentovat se světem neuronových sítí, umělé inteligence a strojového učení. Jedná se o spolupráci se společností Hailo. Cena AI Kitu je 70 dolarů.

    Ladislav Hagara | Komentářů: 0
    4.6. 13:22 | Nová verze

    Byla vydána nová verze 14.1 svobodného unixového operačního systému FreeBSD. Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    4.6. 12:55 | Zajímavý software

    Společnost Kaspersky vydala svůj bezplatný Virus Removal Tool (KVRT) také pro Linux.

    Ladislav Hagara | Komentářů: 11
    Rozcestník

    Dotaz: TCP spojeni klienta se serverem

    12.6.2014 14:42 petrfm
    TCP spojeni klienta se serverem
    Přečteno: 480×

    Ahoj, experimentuju s pripojenim embedded desky k serveru s linuxem. Potreboval bych navazat spojeni s linuxovym serverem - zrejme TCP s dlouhym timeoutem - aby to viselo na lince a jednou za cas spolu zakomunikovalo. V pripade vypadku spojeni by ta se ta deska znovu pokousela spojit a odeslat data z bufferu.

    Na serveru s linuxem bych potreboval prichozi data zpracovat skriptem a ukladat do databaze no a naopak, data z databaze zase odesilat na to zarizeni. Jake reseni doporucujete na serverove strane?

    1) Neni nekde nejaky tutorial na tohle tema? S Cckem si moc netykam, existuje neco hotoveho, co by dokazalo treba pracovat se souborem, ktery si budu pomoci PHP skriptu vybirat, parsovat a ukladat do databaze / vkladat do nej data k odeslani?

    2) Da se to TCP spojeni smerovat primo na php script, nebo na tohle neni PHPcko vhodne?

    3) Tech zarizeni by melo byt na jeden port pripojenych nekolik - to by ale TCP melo osetrovat samo a vytvaret pro kazde spojeni extra socket, ze ? Cili kazde zarizeni by komunikovalo "se svoji instanci" i kdyz to bude na jednom portu toho serveru, je to tak?

    Odpovědi

    12.6.2014 14:53 petrfm
    Rozbalit Rozbalit vše Re: TCP spojeni klienta se serverem

    Jinak bylo mi tady uz porazeno pouzit netcat. Koukam na nej a mozna by se pro ten ucel vyborne hodil. Mohl by prijimat spojeni a vytvaret soubory, s cislem klienta a id zpravy, ktere by pak mohlo PHP vyzvedavat a parsovat.

    1) Zajimalo by mne ale, jak to funguje, kdyz pouziju netcat v modu listen, na urcitem portu a pripoji se vice zarizeni na ten dany port. Musim mit pro kazde spustenou jednu instanci netcatu, nebo jak to funguje?

    2) jak nastavit timout toho spojeni? Abych se mohl pripojit, poslat AHOJ a cekat na data od netcatu treba 5 minut? Ta zarizeni jsou totiz za neverejnou IP a casto za NATem a tak potrebuju, aby to spojeni iniciovalo dane zarizeni, ale pritom aby trvale ocekavalo zpravu od serveru a bylo schopne ihned odpovedet - ohlasit svuj aktualni stav.

    12.6.2014 16:13 NN
    Rozbalit Rozbalit vše Re: TCP spojeni klienta se serverem
    Asi by bylo vhodnejsi napsat si vlastni server, napriklad v Pythonu.
    12.6.2014 17:27 petrfm
    Rozbalit Rozbalit vše Re: TCP spojeni klienta se serverem

    Aha, tzn. ze bude bezet jako daemon a muze naslouchat na tcp portu a primo obsluhovat to spojeni i databazi, ze? Tzn. primo jak mu to bude prichazet, muze ladovat data do databaze a naopak, jakmile najde polozku v BD k odeslani, tak odpovi.

    Predpokladam, ze na netu budou nejake tutorialy.

    Jinak s tim PHP by se to dalo udelat taky? Jde mi o to, to nejak zatim rozhybat a pak teprve vylepsit. A php je mi prece jen blizsi, nez python. I kdyz, byla by to aspon sance se jej naucit :-)

    12.6.2014 18:04 GeorgeWH | skóre: 42
    Rozbalit Rozbalit vše Re: TCP spojeni klienta se serverem
    este tu chyba jedna podstatne vec - co je to za klienta? ak to vie http, nestacil by obycajny php skript? nebol by problem s identifikaciou klienta, prijimanim a posielanim dat...
    12.6.2014 21:53 petrfm
    Rozbalit Rozbalit vše Re: TCP spojeni klienta se serverem

    Prave, ze to HTTP i GET a POST docela dobre umi. Puvodne jsem zamyslel, postavit to tak, ze by se kazdych x sekund delal get na PHP script a ten by generoval odpovedi. Libi se mi to i co se tyka osetreni chybovych stavu, moznosti jednoduse presmerovat server jinam, v pripade vypadku / udrzby, apod. no a v neposledni rade taky proto, ze 80tku port maji povolenou temer vsude, cili by odpadaly problemy s firewally na nejake exoticke porty.

    Vsechno by to bylo krasne, kdyby to zarizeni komunikovalo jen smerem KLIENT - SERVER. Jenomze ja potrebuju co nejrychlejsi reakci v pripade, ze server potrebuje klientovi neco rict. A tady jsem si rekl, ze to je pekna prasarna, mit v siti zarizeni, ktere kazde 3 sekundy delat GET na nejaky webserver, ze mnohem cistejsi reseni bude, mit otevreny socket a cekat na data - defakto nulovy traffic, kdyz se nic nekomunikuje.

    Co si o tom myslite vy? Je to prasarna, delat kazde 3 sekundy GET, nebo resim blbosti? Resili byste to TCP spojenim, nebo se na to vykaslali a usnadnili si praci? Jde mi proste o to, ze to bude generovat neustaly traffic - sice maly, ale trvale a router bude blikat jak divy a ten server, pokud tech zarizeni bude hodne, se z toho taky pose-e.

    Jendа avatar 13.6.2014 01:02 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: TCP spojeni klienta se serverem
    Na serveru může běžet po každém požadavku třeba minutu něco jako sleep(1); nějaký_refresh(); flush();
    13.6.2014 02:24 petrfm
    Rozbalit Rozbalit vše Re: TCP spojeni klienta se serverem

    To jako pri tom http spojeni? Tzn. ze by se nastavil apachi veeeeliky timeout a ten php script by to zdrzoval? Treba bezel v nejake smycce a kdyby prisla akce, ktera by se mela prenest na toho klienta, tak by se smycka ukoncila?

    Je to ciste reseni? A nebudou to spojeni prerusovat treba routery?minuta je takova idealni doba... 60 dotazu behem hodiny se da prezit a pritom minutovy timeout neni nic tak strasneho, ze? Zvladne treba apache/nginx s php najednou takhle pridrzet stovky klientu? Kazdy http dotaz je defakto takove otevrene TCP spojeni, ze ? Jen to neobsluhuje muj server v pythonu, ale treba apache...

    12.6.2014 23:40 Delaunay | skóre: 17 | blog:
    Rozbalit Rozbalit vše Re: TCP spojeni klienta se serverem
    Pro obousměrnou komunikaci je možné použít protokol WebSocket, který využívá HTTP pro sestavení obousměrného komunikačního kanálu.

    Pro PHP by se dal snad s úspěchem použít php-websocket. Jak na straně serveru, tak i na klientské straně používá PHP. Serverová strana dokáže obsluhovat více klientů zároveň.
    12.6.2014 23:48 petrfm
    Rozbalit Rozbalit vše Re: TCP spojeni klienta se serverem
    Klient bohuzel PHPcko nezvladne, tam mame jen TCPIP stack, ktery umi jen TCP spojeni klient / server a HTTP. Na klientske strane to musi byt tedy co nejjednodussi, ty vsechny ostatni ficury se budou dit na serveru, kde bude linux.
    13.6.2014 08:34 Jary | skóre: 30 | blog: Jary má blog | Dům
    Rozbalit Rozbalit vše Re: TCP spojeni klienta se serverem
    mužeš použít/udělat websocket-INETsocket proxy. v openstacku se např používá novncproxy co balí vnc do websocketů. Zdroj je asi https://github.com/kanaka/noVNC. I když, je tam bug způsobující zombies https://bugs.launchpad.net/nova/+bug/1048703
    .sig virus 3.2_cz: Prosím, okopírujte tento text do vaší patičky. GitHub
    13.6.2014 14:29 Milan Uhrák | skóre: 31 | blog: milan_at_ABC
    Rozbalit Rozbalit vše Re: TCP spojeni klienta se serverem
    udělal bych to přes ssh, to má vlastnost (nebo rozšíření) heartbeat, který udržuje spojeni živé. :-D
    13.6.2014 14:51 Michal Kubeček | skóre: 72 | Luštěnice
    Rozbalit Rozbalit vše Re: TCP spojeni klienta se serverem
    …a někdy toho umí i víc. :-)
    13.6.2014 15:59 petrfm
    Rozbalit Rozbalit vše Re: TCP spojeni klienta se serverem
    Srandicky, srandicky :-)

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.