Repository navigation
perfcached 0.5.9
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.9. The ChangeLog has the detail.
A rolling restart. From 0.4.5, 0.5.9 joins a fleet one node at a time; use SET IFEQ/IFNE and DELEX once every node runs 0.5.0 or later. A config that uses [mail] is refused by an older release: to roll back, put the old config back with the old binary.
A node raises its own alerts, and mails them
- Failed or healing, records the WAL lost, a slow fsync, writes refused for want of memory, an arena near its ceiling, a read-through upstream unreachable or its tracking off, its own start (critical after an unclean stop). Each is logged, kept - the last 100 in
/stats alertsand on the status page's alerts card - and counted on/metrics. - With
[mail]and a build with an SMTP client (PC_MAIL=libcurl; the release packages have one), alerts are mailed: STARTTLS or TLS, AUTH with the password in[secrets] mail, the same alert at most once permin_interval_sunless it got worse, everything withindigest_sin one mail, and the clear when it recovers.perfcli -E ... mailtestsends a test mail and prints the server's answer.tls_verify = nokeeps TLS for a relay whose certificate cannot be verified, with a warning at every config check. - In a fleet,
[mail]on one node is enough: the nodes elect the lowest-numbered one that can mail and relay their alerts to it, and what happens to the fleet itself - a member silent, failed, gone or missing, the fleet below a majority - is mailed once, by that node.
libperfd 0.6.0
perfd_get_buf,perfd_jget_bufandperfd_hget_bufread into the caller's buffer and allocate nothing. The SONAME stayslibperfd.so.0.
Build flavors
make menuconfigchooses release, debug or asan (sanitizers linked statically); a non-release build says so in-V,/statsand the page header.contrib/systemd/cores.confkeeps a crashed node's core;asan.confroutes a sanitizer's report beside it.- The perfcached packages depend on libcurl (the alert mail).