MLDBM :: Sync.

Acesso simultâneo seguro aos bancos de dados MLDBM
Baixe Agora

MLDBM :: Sync. Classificação e resumo

Propaganda

  • Rating:
  • Licença:
  • Perl Artistic License
  • Preço:
  • FREE
  • Nome do editor:
  • Joshua Chamas
  • Site do editor:
  • http://search.cpan.org/~chamas/

MLDBM :: Sync. Tag


MLDBM :: Sync. Descrição

Acesso simultâneo seguro a bancos de dados MLDBM MLDBM :: Sync é um módulo Perl envolve a interface MLDBM, lidando com acesso simultâneo a bancos de dados MLDBM com bloqueio de arquivos e descarga explicidade de E / S por bloqueio / desbloqueio. A nova API LOCK () / desbloqueio () pode ser usada para serializar solicitações logicamente e melhorar o desempenho para leituras e gravações marcadas. Meu $ Sync_DBM_OBJ = Tie Che, 'MLDBM :: Sync', '/ TMP / SYNCDBM', O_CREAT | O_RDWR, 0640; # Escreva seção crítica bloqueada $ sync_dbm_obj-> bloqueio; ... Todos os acessos para o DBM Lock_ex protegidos e vá para o mesmo arquivo amarrado $ cache {'key'} = 'valor'; $ sync_dbm_obj-> desbloqueio; # Leia seção crítica bloqueada $ sync_dbm_obj-> Readlock; ... Todos os acessos de leitura para o DBM Lock_SH protegidos e vá para os mesmos arquivos amarrados ... ADVERTÊNCIA, não é possível gravar na seção DBM na Readlock (), vai morrer () ... Aviso, minha chave $ v = $ cache {'tecla '} {' Subchave '} irá desencadear uma gravação, então não é segura ... para usar na seção Readlock () Meu valor $ valor = $ cache {' key '}; $ sync_dbm_obj-> desbloqueio; # Acesso normal OK também, sem explicação de explicação $ cache {'key'} = 'valor'; Meu valor $ = $ cache {'key'}; a MLDBM continua a servir como a camada OO subjacente que serializa estruturas de dados complexas a serem armazenadas nos bancos de dados. Consulte a seção Bugs MLDBM para limitações importantes.mldbm :: O Sync também fornece armazenamento em cache construído em RAM com gravata :: Cache MD5 Key Checksum Funcionalidade.Synopsis Use MLDBM :: Sync; # Isso obtém o padrão, SDBM_File Use MLDBM QW (DB_File Storable); # Use armazenável para serializante Use MLDBM QW (MLDBM :: Sync :: sdbm_file); # Use o SDBM_File estendido, os valores> 1024 bytes usam fcntl qw (: padrão); # Importar símbolos O_criat e O_rdwr para uso com DBMS # Normal Protected Read / Write com bloqueios implícitos por E / S Solicitar Meu $ Sync_DBM_OBJ = Tie Che, 'MLDBM :: Sync' ou morrer $! ; $ cache {"AAAA"} = "bbbb"; Meu valor de $ = $ cache {"AAAA"}; # Serialized Protected Read / Write com bloqueio explícito para ambas as solicitações de E / S Meu $ Sync_DBM_OBJ = Tie Che, 'MLDBM :: Sync', '/ TMP / SYNCDBM', O_RDWR, 0640; $ sync_dbm_obj-> trava; $ cache {"AAAA"} = "bbbb"; Meu valor de $ = $ cache {"AAAA"}; $ sync_dbm_obj-> desbloqueio; # Acesso de leitura protegido serializado com bloqueio explícito de leitura para ambas as leituras $ sync_dbm_obj-> Readlock; minhas @keys = keys che; meu valor de $ = $ cache {'aaaa'}; $ sync_dbm_obj-> desbloqueio; # Camada de cache de memória com empate :: cache $ sync_dbm_obj-> Synccachesize ('100k'); # Key Checksums, para pesquisas no MD5 Checksums em chaves grandes My $ sync_dbm_obj = Tie Che, 'MLDBM :: Sync', '/ TMP / SYNCDBM', O_CREAT | O_RDWR, 0640; $ sync_dbm_obj-> SyncKeysCheckSum (1); meu $i_key = "chave" x 10000; $ sync {$ big_key} = "grande"; Meu valor $ = $ sync {$ big_key}; Requisitos: · Perl.


MLDBM :: Sync. Software Relacionado