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 14:33 | Nová verze

    Desktopové prostředí KDE Plasma bylo vydáno ve verzi 6.5 (Mastodon). Přehled novinek i s videi a se snímky obrazovek v oficiálním oznámení. Podrobný přehled v seznamu změn.

    Ladislav Hagara | Komentářů: 0
    dnes 13:55 | IT novinky

    Rodina jednodeskových počítačů Orange Pi se rozrostla (𝕏) o Orange Pi 6 Plus.

    Ladislav Hagara | Komentářů: 0
    dnes 13:33 | IT novinky

    Na Humble Bundle běží akce Humble Tech Book Bundle: All Things Raspberry Pi by Raspberry Pi Press. Se slevou lze koupit elektronické knihy od nakladatelství Raspberry Pi Press a podpořit Raspberry Pi Press, Raspberry Pi Foundation North America nebo Humble.

    Ladislav Hagara | Komentářů: 0
    dnes 11:44 | Humor

    Přidaný režim autonomního řízení vozidel Tesla Mad Max je dostupný pro vybrané zákazníky v programu EAP (Early Access Program). Nový režim je na silnici agresivnější, častěji mění pruhy a ne vždy dodržuje rychlostní limity. Agentura JPP spekuluje, že v Česku by se mohl nový režim namísto Mad Max jmenovat Mad Turek...

    karkar | Komentářů: 12
    dnes 04:00 | Nová verze

    Byla vydána nová verze 9.18 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Nově také pro NanoPi R3S, R3S LTS, R76S a M5. Přehled novinek v poznámkách k vydání.

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

    bat, tj. vylepšený cat se zvýrazňováním syntaxe a integrací s gitem, byl vydán ve verzi 0.26.0.

    Ladislav Hagara | Komentářů: 1
    včera 19:33 | Nová verze

    Byla vydána první verze 0.0.1 [Mastodon] multipatformního renderovacího jádra webového prohlížeče Servo (Wikipedie). Vývoj Serva započal v roce 2012 v Mozilla Corporation. V roce 2020 bylo Servo předáno nadaci Linux Foundation. Servo je napsané v programovacím jazyce Rust.

    Ladislav Hagara | Komentářů: 2
    včera 15:11 | IT novinky

    Cloudovou službu Amazon Web Services (AWS) americké firmy Amazon dnes postihl globální výpadek. Omezil dostupnost řady aplikací a webů, například populární platformu Snapchat nebo aplikaci s prvky umělé inteligence (AI) Perplexity. Podle webu Downdetector hlásily problémy také uživatelé obchodu Amazon, streamovací platformy PrimeVideo nebo platební služby PayPal.

    Ladislav Hagara | Komentářů: 7
    včera 13:33 | Zajímavý software Ladislav Hagara | Komentářů: 0
    včera 12:44 | Pozvánky

    Od 3. do 16. listopadu proběhnou Dny AI 2025. V úterý 11. listopadu proběhne Open source AI day v Red Hatu v Brně.

    Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (37%)
     (47%)
     (20%)
     (20%)
     (23%)
     (18%)
     (21%)
     (18%)
     (18%)
    Celkem 249 hlasů
     Komentářů: 14, poslední 14.10. 09:04
    Rozcestník

    Dotaz: Implementace Jabber serveru

    9.3.2011 10:51 faha
    Implementace Jabber serveru
    Přečteno: 365×

    Zdravim,

    pracuji na uzavrenem projektu, kde si nekolik ruznych casti celeho systemu, ktere bezi na fyzciky oddelenych zarizenich a komunikuji skrze LAN, musi vymenovat kratke textove informace.

    Napadlo me pouzit k vymene techto informace jako transportni kanal interni jabber server (jednu z vyhod vidim rychlost, transparentni moznost sifrovani, otevrene reseni, dostupnost implementace jabber klienta pro velkou skalu jazyku a budouci moznost jednoducheho rozsireni pristupnosti pro mobilni platformy), v pripade potreby ho obohatit o nejake perl bota, ktery dokaze zaridit nektere udalosti.

    Otazkou zustava zda-li nema tento navrh nejake fatalni uskali, ktere momentalne nevidim, pustim se samozdrejme do referencni implementace, na ktere se pokusim demonstrovat moznosti systemu ostatnim vyvojarum, ale presto lecos mi mohlo uniknout, sazim, ze testovaci implementace toto dokaze brzy odhalit.

    Jedna z klicovych otazek je jaky jabber server nasadit?

    - ejabber (Erlang - nemam zadne zkusenosti, zrejme implementace pro vytizene servery, "kanon na vrabce"?)

    - jabberd ( vypada zajimave, otazka jakou verzi 1.4 x 2.0 )

    - openfire a jine implementace  v jave ( nelze, java neni dostupna na cilovem system )

    - prosody (celkem zajimava implementace v jazyce Lua, ktery trochu ovladam, bojim se o stabilitu)

    - jiny? (tibase? apache vyper? )

    Jabber server by mel byt schopen bezet i na rekneme relativne slabem HW ci mit moznost ho kompilovat i pro jinou architektu nez je x86.

    Jabber server nebude verejny, tedy neumozni registraci, presto bych chtel mit moznosti nejakym zpusovat spravovat uzivatele (at uz jsou napr. v obycenem souboru ci db), nepotrebuji podporu pro transporty, hodila by se mi moznost specifikovat v samotnem jabber omezeni komunikace (tedy ze klient xyz muze komunikovat jen abc klientem), zda-li je to mozne, potrebuji v takovem pripade napr. roster module?

    Otazek je pomerne mnoho, nechavam prostor pro komentare ... diky za vas nazor. F.

    Odpovědi

    9.3.2011 11:24 Messa | skóre: 39 | blog: Messa
    Rozbalit Rozbalit vše Re: Implementace Jabber serveru
    Co třeba RabbitMQ a podobné? V podstatě chcete messaging nebo message bus nebo tak něco, což se celkem běžně používá, ale ne nad Jabberem :)
    9.3.2011 13:25 faha
    Rozbalit Rozbalit vše Re: Implementace Jabber serveru

    Diky, to vypada zajimave a koukam, ze take napsane v Erlangu.

    Seznam dalsich MQ

    http://en.wikipedia.org/wiki/Message_broker

    9.3.2011 13:56 Sten
    Rozbalit Rozbalit vše Re: Implementace Jabber serveru
    Pro messaging různých komponent bych preferoval jiné technologie:
    • IRC: jednoduchý protokol, dodnes číslo jedna pro takové systémy, omezení komunikace mezi uživateli jsem tam ale neviděl
    • D-Bus: klasický linuxový message server, umí pracovat i přes síť, detailní (ale složité) nastavení oprávnění
    • Avahi: zeroconf technologie, decentralizované, používá multicast a broadcast, složité zprovoznění na více logických sítích, práva musí hlídat příjemce zpráv
    Jinak co se týče Jabberu, tak jabberd bych nebral (rozhodně ne 1.4), strašně to leakuje, špatně se to konfiguruje, 1.4 neumí IPv6, je to pomalé a vůbec je to takový moloch spíše na testování XMPP než reálné nasazení.

    ejabberd je hodně dobrý (rychlý, paměťově nenáročný), dá se snadno rozšiřovat nebo i clusterovat, ale psát něco v Erlangu pro mě bylo utrpení.

    Pokud máte rád Perl, tak by se vám mohl líbil DJabberd :-)

    Ještě je zajímavý Psyced, umí totiž komunikovat mnoha různými protokoly a mezi nimi překládat a snadno se clusteruje.
    9.3.2011 15:48 faha
    Rozbalit Rozbalit vše Re: Implementace Jabber serveru

    Diky za reakci

    - IRC me napadlo na zacatku jako prvni, ale zavrnul jsem to a zacal uvazovat spise o necem s XMPP

    - D-Bus znam ale z nejakeho duvodu mi to neprijde sympaticke

    - Avahi neznam, ale podivam se

    Procetl jsem letmo dokumentace k ejabberd a taky feature list a nusim uznat, ze to co tam pisou je jak balada a moc dobre se to posloucha co vsechno to umi (Cross-platform, Distributed, Fault-tolerant ... holt s tim Erlangem vsadili na dobreho kone)

    A taky jsem objevil toto http://www.zeromq.org a libi se mi to moc, tak musi premyslet, zda-li smysl o tomto uvazovat nebo zkusit reseni s tim ejabberd.

    Josef Kufner avatar 9.3.2011 22:19 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: Implementace Jabber serveru
    Od jaberd jsem přešel k ejabberd a jsem celkem spokojen. Být tebou, tak vemu ejabberd a neřeším to – je celkem nenáročný a spolehlivý.

    Co se protokolu týče, XMPP je dost pěkné, jednoduché a hlavně rozšiřitelné na to, aby se to dalo lehce použít. Taky tam je RPC a podobné věci, které by se mohly hodit. Zvážil bych využití MUC (hlášení chyb a jednoduchý přehled všech online serverů i pro více lidí).

    IRC nebrat, brzy narazíš a navíc je už deprecated (dá-li se to tak říct – koukni na silc, ale stejnak v tom vedle XMPP moc nevidím budoucnost). Jednoduchostí protokolu si s IRC nijak nepomůžeš, protože u XMPP ti stačí jen poslouchat výstup xml parseru a knihovny na to už existují.
    Hello world ! Segmentation fault (core dumped)
    10.3.2011 13:40 Sten
    Rozbalit Rozbalit vše Re: Implementace Jabber serveru
    Na druhou stranu parsování XML je poměrně náročné na výkon a paměť, proto se na vysoce zatížené spoje používají alternativy.

    Btw. já preferuji SCGI, protože je to extrémně rychlé a snadno se dá použít s HTTP proxy, ale není to centralizované, musel by si napsat i nějaký SCGI hub.
    10.3.2011 14:47 faha
    Rozbalit Rozbalit vše Re: Implementace Jabber serveru

    Jak moc narocne je parsovani XML? Dokazal by jste to specifikovat pripadne rozvect ty mozne alternativy? Diky F.

    10.3.2011 15:18 Sten
    Rozbalit Rozbalit vše Re: Implementace Jabber serveru
    XML parsování (pokud se má dělat dobře) je náročné hlavně kvůli ukecanosti XML. Je potřeba ukládat si jména tagů, aby se mohly kontrolovat vůči zavíracím tagům. Také je dost obtížné rozpoznat, co je nezajímavý bílý znak (třeba odsazení) a co text, který aplikaci zajímá (nejsou syntakticky nijak oddělené), proto parser musí předávat aplikaci i bílé znaky, i když by je mohl zahazovat. Stejně tak escapování je dost složité na zpracování, protože entity mohou být nadefinované v DTD. Validace vůči DTD je také hodně náročná. A jak se má parser zachovat, když to bude rozbité? Celé XML je velmi robustní, ale také velmi náročné na zpracování podle specifikace. Hodí se IMHO na data, když potřebujete zajistit spolehlivost přenosu mezi heterogenními prostředími a rychlost není důležitá.

    Jako alternativy mohou být třeba JSON (resp. JSON-RPC), D-Bus, seznamovské FastRPC, Google Protobuffers, ZeroC Ice nebo EBML (používá Matroska).

    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.