<html>
<head>
<meta content="text/html; charset=iso-8859-2"
http-equiv="Content-Type">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<div class="moz-cite-prefix">S těmi thready to můžete udělat. Když
tak to v budoucnu přepíšete.<br>
Pokud byste se nebránil JavaScriptu a NodeJS, tak tam Vám mohu
pomoci i kódem.<br>
<br>
Oja<br>
<br>
On 04/22/2016 10:13, Martin Záruba wrote:<br>
</div>
<blockquote cite="mid:5719DD17.1010507@volny.cz" type="cite">No jo,
ale jak to jinak udělat, když naprostou většinu doby čekáte, až
přijde odpověď. V té době se řízení vrátí systému.
<br>
Druhou možností by bylo stále testovat, zda již nějaká data
nepřišla, ale to bude strašně dusit procesor. Proto mi ty thready,
které vlastně stále jen čekají, připadalo jako elegantní řešení.
<br>
<br>
Martin Záruba
<br>
<br>
Dne 22.4.2016 v 10:05 Ondřej Janovský napsal(a):
<br>
<blockquote type="cite">U nás jsme to doteď psali v Javě, teď jsme
zkusili Node.js pro menší projekty. Výhodou je, že je dostatek
frameworků (dokonce kvalitních).
<br>
<br>
S Delphi nevím. Ale pokud by to mělo mít 1000 aktivních
zařízení, pak bych šel jinou cestou než 1000 threadů.
<br>
<br>
Oja
<br>
<br>
<br>
On 04/22/2016 09:23, Martin Záruba wrote:
<br>
<blockquote type="cite">V podstatě spojení je jen "přes data".
<br>
<br>
1) Řídící jednotka se aktivně připojí k serveru, aby nemusela
mít veřejnou IP, ale pak čeká.
<br>
<br>
a) Server pošle dotaz, řídící jednotka odpoví, server uloží
data na disk. To se stále v intervalu cca 10 vteřin opakuje.
Jedná se tedy v tomto případě o prostý sběr dat.
<br>
b) Server pošle povel z fronty povelů (bod 2b dále), řídící
jednotka jej provede a odpoví jak jej provedla. Povel se z
fronty smaže. Povely jsou několik byte a jsou velmi řídké.
<br>
<br>
2) Klient se aktivně připojí k serveru, aby nemusel mít
veřejnou IP.
<br>
a) Pošle požadavek na data, server je najde v souboru a pošle
mu je.
<br>
b) Pošle povel. Server jej uloží do fronty čekajících povelů.
<br>
<br>
Chci to psát v Delphi. Asi existují vhodnější prostředí, ale
toto snad celkem slušně znám.
<br>
<br>
Martin Záruba
<br>
<br>
Dne 22.4.2016 v 9:06 Ondřej Janovský napsal(a):
<br>
<blockquote type="cite">Mohu to chápat, že klient je propojen
přímo s řídící jednotkou? Tedy, že server je v podstatě ICQ,
JABBER, WhatsUp pro komunikaci s řídícími jednotkami?
<br>
<br>
A v čem to chcete psát?
<br>
<br>
Oja
<br>
<br>
<br>
<br>
On 04/22/2016 08:58, Martin Záruba wrote:
<br>
<blockquote type="cite">Zpočátku cca 10, ale konečný stav by
mohl být okolo 1000.
<br>
V naprosté většině k jedné řídící jednotce bude připojen
jen jeden klient, ale může jich být i více (2 až 3),
naopak často nebude žádný, t.j. server bude jen zapisovat
přijatá data, řídící jednotky jsou zcela autonomní. Dat ja
ale poměrně málo, cca 100byte za vteřinu. Musí to
přijatelně chodit i s velmi pomalým připojením (přes
mobil, který dělá AP a často v místech kde funguje jen
GPRS). Zkoušel jsem přenos, kdy notebook byl připojen k
internetu přes mobil s EDGE a 5x přenos na normální PC a
zpět. Latence byla strašlivá, ale chodilo to bez chyb,
rychlost v mém případě je naprosto nevýznamná.
<br>
<br>
Martin Záruba
<br>
<br>
Dne 22.4.2016 v 8:41 Ondřej Janovský napsal(a):
<br>
<blockquote type="cite">Kolik očekáváte řídících jednotek
a kolik klientů? Jak masivní komunikaci?
<br>
A v čem to budete psát?
<br>
<br>
Existuje ještě cesta, kterou jde Node.js, Vert.x.
<br>
<br>
Oja
<br>
<br>
On 04/22/2016 06:15, Martin Záruba wrote:
<br>
<blockquote type="cite">Díky všem za rady. Udělám dva
porty, jeden pro řídící jednotky a jeden pro klienty.
<br>
Ještě bych se rád zeptal, zda myslíte, zda udělat
jednodušší variantu, t.j.:
<br>
1) Někdo se připojí, vytvoří se vlákno, v něm se
vytvoří socket, otevře se, udělá se co je třeba, zavře
se socket, zruší se socket, ukončí a odstraní se
vlákno.
<br>
nebo
<br>
2a) Někdo se připojí, vytvoří se vlákno, v něm se
vytvoří socket, otevře se, udělá se co je třeba, zavře
se socket,vlákno se uspí.
<br>
2b) Někdo se připojí, pokud existuje uspané vlákno
probudí se, otevře se socket,udělá se co je třeba,
zavře se socket,vlákno se uspí. Pokud neexistuje volné
vlákno, pak 2a)
<br>
<br>
Ve variantě 2) by se nemuselo stále vytvářet a rušit
vlákno, ale je to složitější. Nedovedu posoudit, jak
náročné je vytvořit a zrušit vlákno a zda se vyplatí
tento krok dělat co nejméně.
<br>
<br>
Martin Záruba
<br>
<br>
Dne 21.4.2016 v 15:20 Radek Benedikt napsal(a):
<br>
<blockquote type="cite">Z hlediska SW je asi jeden
port "hezci" ale ma to jedno velke ALE. Hodne
<br>
spatne se to filtruje, pokud to z hlediska site ma
mit ruzna opravneni.
<br>
Treba cidla ve vodni elektrarne se hlasi ke
"koncentratoru" a na ten se
<br>
hlasi sef z domu mimo objekt. Pokud jsou to dve
ruzne IP na koncentratoru na
<br>
dvou ruznych VLAN je to nuda. Kdyz je to na jedne IP
a v jedne VLAN urcene
<br>
pro "technologii" ale ma to aspon dva ruzne IP porty
na kterých to
<br>
komunikuje, tak se to da na nejakem blackboxu jeste
jednoduse omezit co kdo
<br>
a kam smi. A udelat to na jednom portu s ruznymi
opravnenimi, tak to znamena
<br>
lezt do paketu a filtrovat na vyssich vrstvách a to
je na odstrel toho kdo
<br>
to vymyslel. A navic si nedokazu predstavit
gramatiku pro vyhodnoceni, pokud
<br>
by mely byt pouzity dva na sobe nezavisle protokoly,
které postupne vyviji
<br>
dve rozdilne party. Takze tudu NEEEEEEEEEEEEEE.
<br>
<br>
Radek (benedikt2hw.cz)
<br>
<br>
-----Original Message-----
<br>
<br>
Nevidim dovod preco by to nemalo byt mozne. Na
jednom porte mozete otvorit
<br>
tolko spojeni kolko vam len pamat a operacny system
dovoli.
<br>
Ostatne je zalezitost komunikacneho protokolu a ten
mate pod kontrolou.
<br>
Ci je toto vhodne riesenei problemu si ale nedovolim
posudit.
<br>
<br>
_______________________________________________
<br>
HW-list mailing list - sponsored by <a class="moz-txt-link-abbreviated" href="http://www.HW.cz">www.HW.cz</a>
<br>
<a class="moz-txt-link-abbreviated" href="mailto:Hw-list@list.hw.cz">Hw-list@list.hw.cz</a>
<br>
<a class="moz-txt-link-freetext" href="http://list.hw.cz/mailman/listinfo/hw-list">http://list.hw.cz/mailman/listinfo/hw-list</a>
<br>
<br>
</blockquote>
<br>
<br>
---
<br>
Tato zpráva byla zkontrolována na viry programem Avast
Antivirus.
<br>
<a class="moz-txt-link-freetext" href="https://www.avast.com/antivirus">https://www.avast.com/antivirus</a>
<br>
<br>
_______________________________________________
<br>
HW-list mailing list - sponsored by <a class="moz-txt-link-abbreviated" href="http://www.HW.cz">www.HW.cz</a>
<br>
<a class="moz-txt-link-abbreviated" href="mailto:Hw-list@list.hw.cz">Hw-list@list.hw.cz</a>
<br>
<a class="moz-txt-link-freetext" href="http://list.hw.cz/mailman/listinfo/hw-list">http://list.hw.cz/mailman/listinfo/hw-list</a>
<br>
</blockquote>
<br>
<br>
-- <br>
*Ondřej Janovský
<br>
Alarex-Group s.r.o.
<br>
*
<br>
mobil: +420 723 616 751
<br>
em@il: <a class="moz-txt-link-abbreviated" href="mailto:ondrej.janovsky@alarex.cz">ondrej.janovsky@alarex.cz</a>
<br>
<br>
<a class="moz-txt-link-abbreviated" href="http://www.m2marchitect.cz">www.m2marchitect.cz</a> <a class="moz-txt-link-rfc2396E" href="http://www.m2marchitect.cz"><http://www.m2marchitect.cz></a>
<br>
<a class="moz-txt-link-abbreviated" href="http://www.alarex.cz">www.alarex.cz</a> <a class="moz-txt-link-rfc2396E" href="http://www.alarex.cz"><http://www.alarex.cz></a>
<br>
<br>
<br>
_______________________________________________
<br>
HW-list mailing list - sponsored by <a class="moz-txt-link-abbreviated" href="http://www.HW.cz">www.HW.cz</a>
<br>
<a class="moz-txt-link-abbreviated" href="mailto:Hw-list@list.hw.cz">Hw-list@list.hw.cz</a>
<br>
<a class="moz-txt-link-freetext" href="http://list.hw.cz/mailman/listinfo/hw-list">http://list.hw.cz/mailman/listinfo/hw-list</a>
<br>
</blockquote>
<br>
<br>
---
<br>
Tato zpráva byla zkontrolována na viry programem Avast
Antivirus.
<br>
<a class="moz-txt-link-freetext" href="https://www.avast.com/antivirus">https://www.avast.com/antivirus</a>
<br>
<br>
_______________________________________________
<br>
HW-list mailing list - sponsored by <a class="moz-txt-link-abbreviated" href="http://www.HW.cz">www.HW.cz</a>
<br>
<a class="moz-txt-link-abbreviated" href="mailto:Hw-list@list.hw.cz">Hw-list@list.hw.cz</a>
<br>
<a class="moz-txt-link-freetext" href="http://list.hw.cz/mailman/listinfo/hw-list">http://list.hw.cz/mailman/listinfo/hw-list</a>
<br>
</blockquote>
<br>
<br>
-- <br>
*Ondřej Janovský
<br>
Alarex-Group s.r.o.
<br>
*
<br>
mobil: +420 723 616 751
<br>
em@il: <a class="moz-txt-link-abbreviated" href="mailto:ondrej.janovsky@alarex.cz">ondrej.janovsky@alarex.cz</a>
<br>
<br>
<a class="moz-txt-link-abbreviated" href="http://www.m2marchitect.cz">www.m2marchitect.cz</a> <a class="moz-txt-link-rfc2396E" href="http://www.m2marchitect.cz"><http://www.m2marchitect.cz></a>
<br>
<a class="moz-txt-link-abbreviated" href="http://www.alarex.cz">www.alarex.cz</a> <a class="moz-txt-link-rfc2396E" href="http://www.alarex.cz"><http://www.alarex.cz></a>
<br>
<br>
<br>
_______________________________________________
<br>
HW-list mailing list - sponsored by <a class="moz-txt-link-abbreviated" href="http://www.HW.cz">www.HW.cz</a>
<br>
<a class="moz-txt-link-abbreviated" href="mailto:Hw-list@list.hw.cz">Hw-list@list.hw.cz</a>
<br>
<a class="moz-txt-link-freetext" href="http://list.hw.cz/mailman/listinfo/hw-list">http://list.hw.cz/mailman/listinfo/hw-list</a>
<br>
</blockquote>
<br>
<br>
---
<br>
Tato zpráva byla zkontrolována na viry programem Avast
Antivirus.
<br>
<a class="moz-txt-link-freetext" href="https://www.avast.com/antivirus">https://www.avast.com/antivirus</a>
<br>
<br>
_______________________________________________
<br>
HW-list mailing list - sponsored by <a class="moz-txt-link-abbreviated" href="http://www.HW.cz">www.HW.cz</a>
<br>
<a class="moz-txt-link-abbreviated" href="mailto:Hw-list@list.hw.cz">Hw-list@list.hw.cz</a>
<br>
<a class="moz-txt-link-freetext" href="http://list.hw.cz/mailman/listinfo/hw-list">http://list.hw.cz/mailman/listinfo/hw-list</a>
<br>
</blockquote>
<br>
<br>
-- <br>
*Ondřej Janovský
<br>
Alarex-Group s.r.o.
<br>
*
<br>
mobil: +420 723 616 751
<br>
em@il: <a class="moz-txt-link-abbreviated" href="mailto:ondrej.janovsky@alarex.cz">ondrej.janovsky@alarex.cz</a>
<br>
<br>
<a class="moz-txt-link-abbreviated" href="http://www.m2marchitect.cz">www.m2marchitect.cz</a> <a class="moz-txt-link-rfc2396E" href="http://www.m2marchitect.cz"><http://www.m2marchitect.cz></a>
<br>
<a class="moz-txt-link-abbreviated" href="http://www.alarex.cz">www.alarex.cz</a> <a class="moz-txt-link-rfc2396E" href="http://www.alarex.cz"><http://www.alarex.cz></a>
<br>
<br>
<br>
_______________________________________________
<br>
HW-list mailing list - sponsored by <a class="moz-txt-link-abbreviated" href="http://www.HW.cz">www.HW.cz</a>
<br>
<a class="moz-txt-link-abbreviated" href="mailto:Hw-list@list.hw.cz">Hw-list@list.hw.cz</a>
<br>
<a class="moz-txt-link-freetext" href="http://list.hw.cz/mailman/listinfo/hw-list">http://list.hw.cz/mailman/listinfo/hw-list</a>
<br>
</blockquote>
<br>
<br>
---
<br>
Tato zpráva byla zkontrolována na viry programem Avast Antivirus.
<br>
<a class="moz-txt-link-freetext" href="https://www.avast.com/antivirus">https://www.avast.com/antivirus</a>
<br>
<br>
_______________________________________________
<br>
HW-list mailing list - sponsored by <a class="moz-txt-link-abbreviated" href="http://www.HW.cz">www.HW.cz</a>
<br>
<a class="moz-txt-link-abbreviated" href="mailto:Hw-list@list.hw.cz">Hw-list@list.hw.cz</a>
<br>
<a class="moz-txt-link-freetext" href="http://list.hw.cz/mailman/listinfo/hw-list">http://list.hw.cz/mailman/listinfo/hw-list</a>
<br>
</blockquote>
<br>
<br>
<div class="moz-signature">-- <br>
<b>Ondřej Janovský<br>
Alarex-Group s.r.o.<br>
</b>
<br>
mobil: +420 723 616 751<br>
em@il: <a class="moz-txt-link-abbreviated" href="mailto:ondrej.janovsky@alarex.cz">ondrej.janovsky@alarex.cz</a>
<br>
<br>
<a href="http://www.m2marchitect.cz">www.m2marchitect.cz</a><br>
<a href="http://www.alarex.cz">www.alarex.cz</a></div>
</body>
</html>