IPC :: Pubsub.

IPC :: Pubsub é o módulo Perl para os canais de publicação / subscrição.
Baixe Agora

IPC :: Pubsub. Classificação e resumo

Propaganda

  • Rating:
  • Licença:
  • MIT/X Consortium Lic...
  • Preço:
  • FREE
  • Nome do editor:
  • Audrey Tang
  • Site do editor:
  • http://search.cpan.org/~adamk/Module-Install-0.68/lib/Module/Install/PAR.pm

IPC :: Pubsub. Tag


IPC :: Pubsub. Descrição

IPC :: Pubsub é o módulo Perl para os canais de publicação / subscrição. IPC :: Pubsub é o módulo Perl para os canais de publicação / subscrição.synopsis # um novo ônibus de mensagem com o dbm :: profundo backend # (outros backends possíveis incluem memcached e planthash) My $ Bus = IPC :: Pubsub-> Novo (DBM_DEEP => '/tmp/pubsub.db'); # Um canal é qualquer corda arbitrária Meu $ canal = '# perl6'; # Registre um novo editor (você pode publicar em vários canais) Meu $ pub = $ bus-> new_publisher ("perl6", "#moose"); # Publicar uma mensagem (pode ser um objeto complexo) para esses canais $ pub-> msg ("esta é uma mensagem"); # Cadastre-se um novo assinante (você pode se inscrever em vários canais) Meu $ Sub = $ Bus-> new_subscriber ("moose"); # Publique um objeto para canais $ pub-> msg ("esta é outra mensagem"); # Defina todas as mensagens subseqüentes deste editor para expirar em 30 segundos $ pub-> expiração (30); $ pub-> msg ("esta mensagem vai embora em 30 segundos"); # Simples Get: Retorna as mensagens enviadas desde o anterior Get, # mas apenas para o primeiro canal. meu @msgs = $ sub-> get; # Simples obter, com uma chave de canal explícito (deve estar entre os que # inicialmente se inscreveu) my @moose_msgs = $ sub-> obter ("# alce"); # Complexo get: retorna uma referência hash de canais para matriz # referências de . meu $ hash_ref = $ sub-> get_all; # Alterando a lista de canais que assinamos a $ Sub-> Subscrever ('Alguns outros canais'); $ sub-> cancelar a assinatura ('alguns outros canais'); # Alterando a lista de canais que publicamos para $ pub-> publicar ('alguns outros canais'); $ pub-> não publicada ('alguns outros canais'); # Listando e verificando se estamos em um canal my @sub_channels = $ sub-> canais; minhas @pub_channels = $ pub-> canais; Imprimir "Sub está em #Moose" se $ sub-> canais -> {'# alce'}; Imprimir "Pub está em #moose" se $ pub-> canais -> {'# alce'}; # APIs de manipulação de cache bruto (não aconselhada; uso -> modificar em vez disso) $ bus-> bloqueio ('canal'); $ bus-> desbloqueio ('canal'); meu @timed_msgs = $ bus-> buscar ('key1', 'key2', 'key3'); $ Bus-> Loja ('Key', 'Valor', Time, 30); # Atualização atômica de conteúdo de cache; $ _ é armazenado de volta no final # do retorno de chamada. Meu $ RV = $ Bus-> Modificar ('Key' => Sub {Excluir $ _-> {foo}}); # Taquigrafia para $ bus-> modificar ('key' => sub {$ _ = 'val'}); $ Bus-> Modificar ('Key' => 'Val'); # Taquigrafia para $ bus-> modificar ('key' => sub {$ _}); $ Bus-> Modificar ('Key'); Este módulo fornece uma API simples para publicar mensagens aos canais e assinando-os. Quando uma mensagem é publicada em um canal, todos os assinantes atualmente nesse canal irão obtê-lo em seu próximo get ou get_all call.currently, oferece três backends: dbm_deep para armazenamento no disco, memcached para armazenamento possivelmente multi-host e planalha para armazenamento de processo único.Por favor, veja os testes em t / para esta distribuição, bem como "Sinopse "Acima, para alguns exemplos de uso; A documentação detalhada ainda não está disponível. Requisitos: · Perl.


IPC :: Pubsub. Software Relacionado