Re: Værktøjer som virker med Perl
[email protected] (Niels Jakob Darger) Sun, 11 Dec 2011 18:05:01 +0100
| Newsgroups | perl.copenhagen |
|---|---|
| Message-ID | <[email protected]> |
Distribueret processering: Beanstalkd, ah, ja - den kiggede jeg på tidligere og TheSchwartz. Det endte dog med at vi valgte Gearman. Det virkede (og virker) fint. Messaging: Stomp, ah okay. Det må jeg kigge på. ZeroMQ/zmq/0mq/ømq/RabbitMQ / REST: Tak - REST er simpelt og vil virke glimrende i den aktuelle brugssituation, det ender det muligvis med. Og Redis vil jeg også kigge mere på. Mange tak for de inputs! Hilsen Jakob On 2011-12-11 13:13, michael! wrote: > Hej - > jeg kan anbefale RabbitMQ m. fx Net::RabbitMQ. > Simpelt og effektivt i brug. > > vh > Michael. > > 2011/12/11 Niels Jakob Darger<[email protected]>: >> Hej, >> >> Jeg er på et projekt hos en større broadcaster. Projektet involverer >> real-tidsanalyse af data, det er specielt kritisk under "broadcast events", >> f.eks. VM 2010, OL 2012 eller ikke-programsatte (nyheds)begivenheder. Nok om >> det. >> >> Spørgsmålet er hvilke værktøjer man kunne benytte til de generelle problemer >> der skal tackles - distribueret processering, distribueret >> låsning/synkronisering, distribueret lagring, messaging etc., etc.? >> >> Vi har et heterogent miljø med Perl og Java. Der er mange kølige teknologier >> i Java: Hadoop (som jeg har vældig gode erfaringer med, både i Java og Perl >> - via "Streaming mode"), Lucene (vældig køligt), ActiveMQ, Cassandra etc., >> men det er nu tit hurtigere - og sjovere - at udvikle i Perl. >> >> Hvad er godt til de forskellige klasser af problemer: >> >> Messaging: ActiveMQ (eller WebSphere MQ) virker fint med Java, men hvad med >> Perl? Har folk erfaringer med at snakke Thrift - eller med andre >> messaging-teknologier? >> >> Kommunikation: ICE (http://www.zeroc.com/) - er mange ting - det virker fint >> med C++ (og sikkert med Java, har ikke prøvet), men ikke med Perl. Gode >> alternativer? XML-RPC og SOAP virker, meeen, det er snart 2012 og desuden er >> serialisering og deserialisering af XML ikke det mest effektive. >> >> Distribueret processering: Hadoop fungerer naturligvis bedst med Java men >> det virker med C++ (Pipes) og fungerer fortrinligt med Perl (Streaming). >> Storm (https://github.com/nathanmarz/storm) kender jeg endnu ikke - der skal >> kigges på det snarest. Storm *kunne* være en kandidat til at blive inddraget >> i ovenstående projekt men deadlines og (potentielt manglende) modenhed i >> Storm trækker i den anden retning. >> >> Distribueret lagring/caching: Memcached virker fint med Perl. >> Protokolkompatible - Membase, MemcacheDB etc. - må antages også at virke. >> HDFS virker vist med Perl via Thrift, jeg har dog ikke prøvet - vi bruger >> (de Java-baserede) Hadoop/HDFS kommandoer med Perl hvilket naturligvis ikke >> er super-effektivt da det medfører fork/exec, men det virker. >> >> Redis skulle virke. Har nogen erfaringer? >> >> CouchDB virker. Jeg har dog ikke produktionserfaringer med det da en anden >> teknologi blev valgt efter at vi havde lavet en prototype i CouchDB (det var >> nu ikke et decideret fravalg af CouchCB). MongoDB eller andet? >> >> Distributed låsning: Jeg skal have kigget på Zookeeper. Jeg skal i det hele >> taget se få kigget på de andre teknologier i Hadoop-sfæren: HBase, Hive, >> Pig, Mahout etc. Disse værktøjer er (måske med undtagelse af Zookeeper) ikke >> specielt realtidsvenlige men er interessante i andre sammenhænge. >> >> Swig (http://www.swig.org/) er aldeles brugbart og rimeligt let >> tilgængeligt. Muligvis lettere end XS som jag aldrig rigtigt har kigget på. >> Swig er nyttig til implementering af koderegioner hvor der bare kræves rå >> hastighed. >> >> Der er andre klasser af problemer - hvilke teknologier har folk (gode) >> erfaringer med, helst med Perl, alternativt med C++ eller Java (man kan jo >> som regel med hiv og skub få interfacet det med Perl)? >> >> Hilsen >> Jakob