abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 01:44 | Zajímavý článek

    CSIRT.CZ, český národní CERT provozovaný na základě veřejnoprávní správní smlouvy společností CZ.NIC, shrnuje patnáct let svého fungování pod tímto sdružením: CSIRT.CZ – 15 let ve sdružení CZ.NIC.

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

    Commodore OS Vision (Wikipedie) byl vydán v nové verzi 3.0. Jedná se o linuxovou distribuci určenou pro fanoušky značky Commodore. Předinstalována je na počítačích Commodore 64x.

    Ladislav Hagara | Komentářů: 1
    včera 16:22 | Pozvánky

    Spolek OpenAlt zve příznivce otevřených řešení a přístupu na 208. brněnský sraz, který proběhne v pátek 25. dubna od 18:00 ve studentském klubu U Kachničky na Fakultě informačních technologií Vysokého učení technického na adrese Božetěchova 2/1.

    Ladislav Hagara | Komentářů: 0
    včera 12:44 | Zajímavý článek

    Ve svém článku Getting Forked by Microsoft popisuje autor programu Spegel svoji nepříjemnou zkušenost s firmou Microsoft. Firma ho kontaktovala a zpočátku to vypadalo, že by mohlo jít o oboustranně prospěšnou spolupráci, autor tedy ochotně odpovídal na jejich otázky ohledně architektury programu a pomáhal jim ho zprovoznit. Následně komunikace ze strany Microsoftu utichla. Autor předpokládal, že zřejmě došlo ke změně priorit a firma

    … více »
    xkucf03 | Komentářů: 11
    včera 01:33 | IT novinky

    Společnost Notion Labs stojící za softwarovou platformou pro spolupráci Notion (Wikipedia) oficiálně představila (YouTube) poštovního klienta Notion Mail. Aktuálně funguje pouze nad Gmailem.

    Ladislav Hagara | Komentářů: 3
    21.4. 12:44 | Nová verze

    Byla vydána nová verze 9.12 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    20.4. 03:55 | Nová verze

    Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma.

    Ladislav Hagara | Komentářů: 0
    19.4. 19:44 | Komunita

    Ubuntu 25.10 bude (𝕏) Questing Quokka (pátrající klokan quokka).

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

    Ubisoft uvolnil zdrojové kódy softwaru Chroma pro simulaci barvosleposti pro vývojáře počítačových her. K dispozici jsou na GitHubu pod licencí Apache 2.0.

    Ladislav Hagara | Komentářů: 0
    19.4. 02:00 | Nová verze

    Defold (Wikipedie) je multiplatformní herní engine. Nejnovější verze je 1.10.0. Zdrojové kódy jsou k dispozici na GitHubu. Licence vychází z licence Apache 2.0.

    Ladislav Hagara | Komentářů: 0
    Jaký filesystém primárně používáte?
     (58%)
     (1%)
     (10%)
     (21%)
     (4%)
     (1%)
     (2%)
     (0%)
     (1%)
     (2%)
    Celkem 420 hlasů
     Komentářů: 18, poslední 17.4. 12:41
    Rozcestník

    Dotaz: TCP spojeni klienta se serverem

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

    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.