1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
|
Source: libcache-fastmmap-perl
Maintainer: Debian Perl Group <pkg-perl-maintainers@lists.alioth.debian.org>
Uploaders: gregor herrmann <gregoa@debian.org>,
Ansgar Burchardt <ansgar@debian.org>,
Harlan Lieberman-Berg <hlieberman@setec.io>
Section: perl
Testsuite: autopkgtest-pkg-perl
Priority: optional
Build-Depends: debhelper-compat (= 13),
libcompress-lz4-perl <!nocheck>,
libcompress-snappy-perl <!nocheck>,
libtest-deep-perl <!nocheck>,
perl-xs-dev,
perl:native
Standards-Version: 4.5.1
Vcs-Browser: https://salsa.debian.org/perl-team/modules/packages/libcache-fastmmap-perl
Vcs-Git: https://salsa.debian.org/perl-team/modules/packages/libcache-fastmmap-perl.git
Homepage: https://metacpan.org/release/Cache-FastMmap
Rules-Requires-Root: no
Package: libcache-fastmmap-perl
Architecture: any
Depends: ${misc:Depends},
${perl:Depends},
${shlibs:Depends},
libcompress-lz4-perl,
libcompress-snappy-perl
Description: Perl module providing a mmap'ed cache
Cache::FastMmap uses the mmap system call to establish an interprocess shared
memory cache. Its core code is written in C, which can provide significant
performance compared to a Pure Perl implementation such as Cache::Mmap. It can
handle rather large pages without the socket connection and latency of using
full-fledged databases where long-term persistence is unnecessary.
.
Since the algorithm uses a dual-level hashing system (a hash is used to find
a page, then another hash within each page to find a given slot), most get
calls can execute in constant O(1) time. The system uses fcntl to handle
concurrent access, but only locks individual pages to reduce contention. The
oldest (least recently used) data is evicted from the cache first, making
this cache implementation most suitable for cases when old data is unlikely
to be searched.
|