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 05:55 | Nová verze

    Po více než 7 měsících vývoje od vydání verze 6.8 byla vydána nová verze 6.9 svobodného open source redakčního systému WordPress. Kódové jméno Gene bylo vybráno na počest amerického jazzového klavíristy Gene Harrise (Ray Brown Trio - Summertime).

    Ladislav Hagara | Komentářů: 2
    dnes 05:11 | Komunita

    Na čem pracují vývojáři webového prohlížeče Ladybird (GitHub)? Byl publikován přehled vývoje za listopad (YouTube).

    Ladislav Hagara | Komentářů: 0
    dnes 01:55 | Nová verze

    Google Chrome 143 byl prohlášen za stabilní. Nejnovější stabilní verze 143.0.7499.40 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 13 bezpečnostních chyb.

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

    Společnost Valve aktualizovala přehled o hardwarovém a softwarovém vybavení uživatelů služby Steam. Podíl uživatelů Linuxu dosáhl 3,2 %. Nejčastěji používané linuxové distribuce jsou Arch Linux, Linux Mint a Ubuntu. Při výběru jenom Linuxu vede SteamOS Holo s 26,42 %. Procesor AMD používá 66,72 % hráčů na Linuxu.

    Ladislav Hagara | Komentářů: 0
    včera 15:22 | IT novinky

    Canonical oznámil (YouTube), že nově nabízí svou podporu Ubuntu Pro také pro instance Ubuntu na WSL (Windows Subsystem for Linux).

    Ladislav Hagara | Komentářů: 0
    včera 13:11 | IT novinky

    Samsung představil svůj nejnovější chytrý telefon Galaxy Z TriFold (YouTube). Skládačka se nerozkládá jednou, ale hned dvakrát, a nabízí displej s úhlopříčkou 10 palců. V České republice nebude tento model dostupný.

    Ladislav Hagara | Komentářů: 2
    včera 12:33 | Nová verze

    Armbian, tj. linuxová distribuce založená na Debianu a Ubuntu optimalizovaná pro jednodeskové počítače na platformě ARM a RISC-V, ke stažení ale také pro Intel a AMD, byl vydán ve verzi 25.11.1. Přehled novinek v Changelogu.

    Ladislav Hagara | Komentářů: 1
    včera 04:00 | Nová verze

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

    Ladislav Hagara | Komentářů: 6
    včera 03:00 | Nová verze

    UBports, nadace a komunita kolem Ubuntu pro telefony a tablety Ubuntu Touch, vydala Ubuntu Touch 24.04 1.1 a 20.04 OTA-11. Vedle oprav chyb a drobných vylepšení je řešen také středně závažný bezpečnostní problém.

    Ladislav Hagara | Komentářů: 0
    včera 00:33 | IT novinky Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (34%)
     (47%)
     (19%)
     (18%)
     (23%)
     (15%)
     (25%)
     (16%)
     (18%)
    Celkem 426 hlasů
     Komentářů: 18, poslední včera 18:34
    Rozcestník

    Dotaz: Perl - pridani web rozhrani k aplikace

    27.2.2011 00:12 roman
    Perl - pridani web rozhrani k aplikace
    Přečteno: 323×

    Dobry den, mam aplikaci v perlu, ktera bezi jako demon a resi komunikaci s nekolika zarizenimi pres RS232(obdrzi/posle do linek data), prijata data ze seriovych linek vyhodnoti a uklada do vlastni db (sqlite), dle nastavenych parametru posila do linek nova data, potud nic sloziteho.

    Rad bych tento uzavrenych system propojil s cizim systemem, tedy aby si mohli vymenovat data, cizi system pozaduje predavaci rozhrani pres sadu webovych sluzeb (cas od casu si reknou o nejaka data, nebo naopak zaslou nejaky pozadavek).

    Premyslel jsem tedy jak toho dosahnout a v jednu chvili se mi pomerne zacala libit db couchdb od apache, ktera cely problem s HTTP zastresuje, tedy sypal bych do ni data a vytvoril pro cizi system sadu "view", ktery by jim v json vracel hodnoty a naopak by dokazali stejnym zpusobem mi data predavat, bohuzel zde jsem narazil ja jedem problem a tim je nutnost mit moznost "okamzite" akce na pozadavek zaslany z ciziho system (tedy necekat ve smyslu, ze ja budu z perlu v intervalech poolovat couch db na nova data a pak neco vykonam, ale resit neco hned). (navic noSQL neni uplne idealni pro me, ale to bych prekousnul, libilo se mi hlavne to vyreseni HTTP komunikace)

    Takze co s tim? Nechce se mi zrovna kvuli tomu pridani "web rozhrani" do aplikace instalovat na muj system apache nebo snad PHP a zpracovavat pozadavek, ten predat nejak do me aplikace, vratit zpet data apod silenosti.

    Napadlo me to nejak zkusit vyresit treba s nginx a fastcgi , ale nevim zda-li to lze udelat s perlem nejspise ano a zda-li je to prijatelne stabilni.

    Nejaky napad? Nelze obalit perl nejakym modulem co mi takoveto rozhrani poskytne?

    Diky za podnety. Roman

    Odpovědi

    27.2.2011 01:02 camel1cz | skóre: 25
    Rozbalit Rozbalit vše Re: Perl - pridani web rozhrani k aplikace
    Zdravím,

    nejsem si úplně jistý v čem je problém. To původní řešení s couchdb mi stejně příjde na to co potřebujete zbytečně složité (jedině jestli jste nechtěl migrovat to sqlite do couchdb).

    Tím, že to musí být synchronní webservice je dost omezený výběr...

    Vídím varianty: a) nainstalovat apache (popř. něco lehčího - boa atd.) a v perlu udělat alternativního klienta do vaší aplikace b) napsat přímo v perlu nového démona co bude implementovat HTTP server (knihoven, co to zvládnou na 5 řádků budou mraky) c) upravit stávajícího démona ve smysl u bodu b) - prostě že by nezpracovával jen data z sqlite, ale i z příchozích HTTP requestů asynchronně

    webservice/rest interface nebude v perlu určitě žádný problém.
    27.2.2011 09:48 roman
    Rozbalit Rozbalit vše Re: Perl - pridani web rozhrani k aplikace

    Diky za reakci, ano puvodne jsem uvazoval vymenit kompletne sqlite za couchdb, ale trochu me odrazuje prave fakt, ze couchdb jr ne bezschemova/dokumetova db, data mam jasne dana (zadny "chaos", jsou jasne organizovana do tabulek), velkou devizu vidit u couch db prave v tom HTTP rozrahni, ktere se mi opravdu libi a vymysleno je to velmi velmi dobre.

    Neexistuje takove rozhrani i k nejake jiz exsitujici SQL db (napr. mysql)?

    Body b/c si dovedu predstavit, jak je mysleno A (s tim klientem netusim)? Muzete to rozvect, prilis se mi nechce implementovat web server v perlu. R

    27.2.2011 19:38 camel1cz | skóre: 25
    Rozbalit Rozbalit vše Re: Perl - pridani web rozhrani k aplikace
    No úvodem - protože potřebujete synchronní webservice, tak vám přímé HTTP rozhraní do DB moc nepomůže - stejně nestačí ten požadavek zaspoolovat.

    Ze zadání mi vychází, že je nutné zavolat přes webservice přímo kód vaší existující aplikace a jeho výsledek ihned vrátit.

    Tedy mé závěry:

    1) změna DB nesouvisí s požadavkem na zřízení webservice a tedy bych jí pro teď dal stranou

    2) není dobré řešení dělat standalone démona jen na webservice (možné souběhy, tahání se o RS232 atd.)

    3) stejně tak není dobré komunikovat skrze SQL

    4) bude nutné rozšířit stávajícího démona o možnost poslat nový request - toto bude vyžadovat nějaký komunikační protokol, implementovaný v démonovi.

    Podle toho co vím, tak bych opravdu napsal přímo v tom perlu HTTP server (např. HTTP::Daemon) a případné požadavky řešil podobně jako ty interní - má to výhodu, že se nebudou dít souběhy, budete požadavky zpracovávat sériově a tak jak bude linka stíhat - navíc to rozhraní ke stávajícímu démonovi stejně bude nutné a tedy proč by nemohlo být rovnou přímo webservice?

    Jako alternativa mi příjde právě to, co se mi nelíbí v bodě 3) - komunikovat skrze SQL - webservice by pak vložila do SQL požadavek a pak aktivně čekala např. 30s, jestli se v DB objeví odpověď. Ale jak říkám, moc se mi to nelíbí...

    P.S. O webservice rozhraní k běžným databázím nevím

    P.S.2. Tím bodem a) sem myslel vytvoření aplikace přístupné přes HTTP, která by podstrčila démonovi data a počkala si na výsledek.
    27.2.2011 21:20 Ladicek | skóre: 28 | blog: variace | Havlíčkův brod
    Rozbalit Rozbalit vše Re: Perl - pridani web rozhrani k aplikace
    bohuzel zde jsem narazil ja jedem problem a tim je nutnost mit moznost "okamzite" akce na pozadavek zaslany z ciziho system (tedy necekat ve smyslu, ze ja budu z perlu v intervalech poolovat couch db na nova data a pak neco vykonam, ale resit neco hned)
    _changes?feed=continuous, totéž v The Definitive Guide
    Ještě na tom nejsem tak špatně, abych četl Viewegha.

    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.