Mimochodom, čo je zlé na vláknach?

Ja som pred pár rokmi použil niečo takéto...

abstract class ServerSide implements Runnable {

        ServerSide(...)

        single getStatusPercentage()
        String getCurrentInfo()
        Date getStarted()
        Date getEstimatedTime()
        Throwable getLastError()
        short getStatus()
        boolean isActive()
        int getRetryCount()
}

Abstraktná trieda definuje, čo očakávame od monitoringu samotného vlákna...
Konkrétne implementácie (SendMail, ConvertVideo) potom len naplnia metodu
run() (z Runnable) a popri tom budú notifikovať príslušné statusové
informácie nadradenej triedy...
Dá sa to celkom ľahko spojiť s Pool/Queue princípmi.

Používali sme to pri spúšťaní dátových analýz (1 report=od pár sekúnd do
niekoľko desiatok minút). Useri si cez intranet naklikali report (druh,
výbery, fulltext), ktorý sa zaradil do fronty a po spracovaní poslal
výsledok e-mailom. Podľa sily HW sa potom na serveri konfiguroval maximálny
počet paralelne bežiacich úloh.

Je to dosť simplexné na to, aby som sa trápil s nejakým frameworkom.

GG
-----Original Message-----
From: [email protected] [mailto:[email protected]] On
Behalf Of Tomáš Procházka
Sent: Thursday, July 16, 2009 10:47 AM
To: [email protected]
Subject: fronta pro zpracování dlouhých udílosti ve webovém kontejneru

Zdravím.

Potřeboval  bych  jen  nasměrovat,  jak se ve webovém kontejneru (jako
Tomcat)  řeší  zpracování  dlouhotrvajících  úloh.  Typicky  odesílání
emailů   nebo  konverze  videa.  POtřebuji  z  webové  aplikace  zadat
požadavek  a  mít  pak přístup ke stavu zpracování. Pracovat ve webové
aplikaci  přímo  s  vlákny  určitě není dobrý nápad. Určitě pro to už
bude  hotové  řešení,  či  podpora. Kdyby bylo něco přímo speciálně na
emaily, bylo by to taky super.

Datum: 10:44:35    16. července 2009
-- 
---------------------------------------------------------------------
 Tomáš Procházka


 E-mail: [email protected]
    WWW: http://www.atomsoft.cz
    ICQ: 87147320
---------------------------------------------------------------------

Attachment: smime.p7s
Description: S/MIME cryptographic signature

Odpovedet emailem