Use qualquer coisa, menos ElasticSearch. Sério. 2012/3/14 Marcio Ferreira <marciodesouzaferre...@gmail.com>
> Só dando um pitaco, ao contrário do mongoDB, experimente o ElasticSearch - > performance incrível. E se atente na forma de como será feita a consulta na > API das redes, as vezes consultar uma vez ao dia já resolva seu problema, e > evite os horários de pico prq rodar seu scraper =S > On Mar 14, 2012 8:03 AM, "Tiago Peczenyj" <tiago.pecze...@gmail.com> > wrote: > >> Oi >> >> é possivel criar uma fila usando um feed rss ou criando arquivos em um >> diretorio. basta ver o que é mais interessante para o teu projeto. Por >> exemplo, se vc publicar um feed e tiver do outro lado um consumidor >> fazendo pooling vai ser tão bom quanto um ActiveMQ se vc não estiver >> com um volume muito grande de dados E se puder esperar uns segundos. >> Isso pode simplificar a tua infra num primeiro momento. >> >> On Tue, Mar 13, 2012 at 11:33 PM, Daniel de Oliveira Mantovani >> <daniel.oliveira.mantov...@gmail.com> wrote: >> > Shonorio, o Gearman não é um sistema de fila, ele funciona como um >> > distribuid system. >> > >> > Você deva usar o AMPQ[1] ou o Apache ActiveMQ[2] para criar a fila e o >> > Gearman para processar a informação. O Worker não sabe da existência >> > do Client, quem faz esse intermédio é o Gearman Server[3]. >> > >> > "A Gearman powered application consists of three parts: a client, a >> > worker, and a job server. The client is responsible for creating a job >> > to be run and sending it to a job server. The job server will find a >> > suitable worker that can run the job and forwards the job on. The >> > worker performs the work requested by the client and sends a response >> > to the client through the job server. Gearman provides client and >> > worker APIs that your applications call to talk with the Gearman job >> > server (also known as gearmand) so you don't need to deal with >> > networking or mapping of jobs. Internally, the gearman client and >> > worker APIs communicate with the job server using TCP sockets. To >> > explain how Gearman works in more detail, lets look at a simple >> > application that will reverse the order of characters in a string. " >> > >> > [User Interface] <===>[RDBMS]<===> [Queue System] >> > /\ >> > || >> > || >> > [Distribuid >> > System] <===> [Document-oriented database] >> > >> > >> > Se baseando nesse arquitetura o Queue System vai mandando "jobs" de >> > acordo com número de workers que você tem disponível, evitando um >> > overhead e criando um sistema "auto scalability". >> > >> > Se eu fosse você eu me preocuparia com a forma de armazenamento dos >> > dados, as redes sociais já garantem a integridade dos dados, sendo >> > assim uma solução Document-oriented database te pouparia muito >> > processamento e trabalho. Existem várias opções, eu recomendo o >> > MongoDB[4] mesmo com o Eden Cardim me crucificando por isso. >> > >> > Guarde os dados dos usuários e do site num RDBMS, se você estiver >> > pensando num RDBMS open source eu te recomendo o PostgreSQL, ele tem >> > um ótimo suporte ao paradigma temporal. >> > Se você usar o PostgreSQL, eu te recomendo usar o Pgpool[5] para >> > replication, clustering, load balance etc. >> > >> > [1] - http://www.amqp.org/about/what >> > [2] - http://activemq.apache.org/ >> > [3] - http://gearman.org/ >> > [4] - http://www.mongodb.org/display/DOCS/Sharding+Introduction >> > [5] - http://www.pgpool.net/mediawiki/index.php/Main_Page >> > >> > Grande Abraço. >> > >> > 2012/3/13 Solli Honorio <shono...@gmail.com>: >> >> Pessoal, >> >> >> >> Estou iniciando um projeto de monitoramento de mídias sociais e fazer >> algum >> >> processamento com estas informações, e acredito que utilizar esquemas >> de >> >> fila serviria muito bem para este ambiente. >> >> >> >> Basicamente o esquema que estou imaginando para o ambiente é : >> >> >> >> [ Interface com o usuário ] <===> [Banco de Dados] <====> [Sistema de >> Fila] >> >> >> >> || || >> >> >> >> || +- [Executa a pesquisa] >> >> >> >> || >> >> >> >> +-- [ Processa o resultado da pesquisa] >> >> >> >> As ações que eu imagino nisto são : >> >> >> >> * interface com o usuário não é meu problema, tem um webdeveloper >> >> trabalhando nisto; >> >> * não quero de maneira alguma fazer os 'agentes' interagir diretamente >> com o >> >> banco de dados, por isto penso em criar um cliente que leia o banco de >> dados >> >> e coloque os dados formatados para o agente na fila do agente. O >> caminho >> >> contrário também, ler o resultado do agente e gravar no banco de dados; >> >> >> >> Estou avaliando a possibilidade de utilizar o Gearman (na verdade não >> tenho >> >> certeza se esta é a melhor alternativa mesmo), na verdade o >> >> AnyEvent::Gearman. Mas algumas coisas me chamaram no Gearman do qual >> eu >> >> acho meio estranho para o ambiente sistema de fila que eu tenho na >> minha >> >> cabeça. >> >> >> >> 1. o worker (aparentemente o cara que executará o serviço) não fica em >> loop >> >> lendo uma fila, parece que ele está sendo acionado pelo cliente; >> >> 2. o parece que o cliente fica 'preso' aguardando o final da execução >> do >> >> worker. >> >> >> >> Ainda não tenho código (que o meu cliente não leia isto, pois estou >> muito >> >> atrasado), mas eu gostaria de obter recomendações de vocês sobre a >> >> arquitetura que estou imaginando. >> >> >> >> Obrigado, >> >> >> >> Solli Honorio >> >> >> >> >> >> -- >> >> "o animal satisfeito dorme". - Guimarães Rosa >> >> >> >> =begin disclaimer >> >> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >> >> SaoPaulo-pm mailing list: SaoPaulo-pm@pm.org >> >> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >> >> =end disclaimer >> >> >> > >> > >> > >> > -- >> > "If you’ve never written anything thoughtful, then you’ve never had >> > any difficult, important, or interesting thoughts. That’s the secret: >> > people who don’t write, are people who don’t think." >> > =begin disclaimer >> > Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >> > SaoPaulo-pm mailing list: SaoPaulo-pm@pm.org >> > L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >> > =end disclaimer >> >> >> >> -- >> Tiago B. Peczenyj >> Linux User #405772 >> >> http://pacman.blog.br >> =begin disclaimer >> Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ >> SaoPaulo-pm mailing list: SaoPaulo-pm@pm.org >> L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> >> =end disclaimer >> > > =begin disclaimer > Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ > SaoPaulo-pm mailing list: SaoPaulo-pm@pm.org > L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> > =end disclaimer > >
=begin disclaimer Sao Paulo Perl Mongers: http://sao-paulo.pm.org/ SaoPaulo-pm mailing list: SaoPaulo-pm@pm.org L<http://mail.pm.org/mailman/listinfo/saopaulo-pm> =end disclaimer