Skip to content

perfcached 0.5.8

Choose a tag to compare

@Lt-Flash Lt-Flash released this 11 Oct 13:01
· 1 commit to master since this release

perfcached - found fast, kept safe

A multithreaded, self-clustering cache for Linux, with its own encrypted protocols and a Redis-compatible door. New here? Start with the README.

Superseded by 0.6.0. This page was added afterwards for the record: no packages are attached - install the latest release. The source archives below are this tag's tree.

This page covers 0.5.8. The ChangeLog has the detail.

A rolling restart. From 0.4.5, 0.5.8 joins a fleet one node at a time; use SET IFEQ/IFNE and DELEX once every node runs 0.5.0 or later.

libperfd 0.5.0: a shared library

  • libperfd.so.0 beside the static archive: an update with the same SONAME replaces it in place. The ABI carries what that needs - perfd_opts starts with its size (PERFD_OPTS_INIT, perfd_opts_init()), errors carry a kind (perfd_error_kind()), values are released with perfd_free_value(), the library logs through perfd_set_log(), and only perfd_* is exported. A pkg-config file, libperfd.pc; make install-lib.
  • The archive is position-independent, so it links into shared objects such as plugins and modules.
  • test/abitest.sh holds the library to its SONAME: a caller built against the frozen 0.5.0 header runs against the new library, and no exported symbol disappears.

Packages and the licence boundary

  • libperfd0 and libperfd-dev .deb; libperfd and libperfd-dev .apk for Alpine, signed with the release key.
  • libperfd's archive no longer carries a GPL object from the daemon: its MIT boundary is now the set of files the compiler reads to build it, checked on every push.

Asterisk

  • func_perfd links the installed libperfd (found through pkg-config, or --with-perfd=DIR) instead of compiling a copy: the patch goes from 22 files to 8, and the module compiles under developer mode.