Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
bsdcafe-technical-details [2025/10/13 10:24] stefanobsdcafe-technical-details [2025/10/17 12:35] (current) stefano
Line 10: Line 10:
 The [[https://mastodon.bsd.cafe|https://mastodon.bsd.cafe]] instance is structured as follows: The [[https://mastodon.bsd.cafe|https://mastodon.bsd.cafe]] instance is structured as follows:
  
-  * A jail holds KeyDB, essential for communication among Mastodon services - the nervous system of BSD Cafe. +  * A jail holds Valkey, essential for communication among Mastodon services - the nervous system of BSD Cafe. 
-  * Another jail runs KeyDB for the Mastodon cache+  * Another jail runs Valkey for the Mastodon cache
   * Another jail runs PostgreSQL, serving as the database - the memory of BSD Cafe.   * Another jail runs PostgreSQL, serving as the database - the memory of BSD Cafe.
   * There's a separate jail designated for media storage, acting as the 'multimedia memory' of BSD Cafe. This jail resides on an external server with rotating disks <del>behind Cloudflare</del>. There are [[:bsdcafemedia-reverse-proxies|reverse proxies]] located in various parts of the world that receive and cache requests, serving them from the nearest server. The goal is to use georeplicated caching of multimedia data to reduce bandwidth consumption. The selection of reverse proxies is handled at the DNS level through a PowerDNS LUA script. More details have been documented here: [[https://it-notes.dragas.net/2024/08/26/building-a-self-hosted-cdn-for-bsd-cafe-media/|Building a Self-Hosted CDN for BSD Cafe Media]]   * There's a separate jail designated for media storage, acting as the 'multimedia memory' of BSD Cafe. This jail resides on an external server with rotating disks <del>behind Cloudflare</del>. There are [[:bsdcafemedia-reverse-proxies|reverse proxies]] located in various parts of the world that receive and cache requests, serving them from the nearest server. The goal is to use georeplicated caching of multimedia data to reduce bandwidth consumption. The selection of reverse proxies is handled at the DNS level through a PowerDNS LUA script. More details have been documented here: [[https://it-notes.dragas.net/2024/08/26/building-a-self-hosted-cdn-for-bsd-cafe-media/|Building a Self-Hosted CDN for BSD Cafe Media]]
Line 34: Line 34:
 [[https://snac.bsd.cafe|https://snac.bsd.cafe]] is a FreeBSD jail running [[https://codeberg.org/grunfink/snac2|Snac2]]. Only a few strict Snac2 dependencies have been installed. [[https://snac.bsd.cafe|https://snac.bsd.cafe]] is a FreeBSD jail running [[https://codeberg.org/grunfink/snac2|Snac2]]. Only a few strict Snac2 dependencies have been installed.
  
-[[https://ntfy.bsd.cafe|https://ntfy.bsd.cafe]] is a FreeBSD jail running [[https://ntfy.sh|ntfy]]compiled for FreeBSD+[[https://ntfy.bsd.cafe|https://ntfy.bsd.cafe]] is a FreeBSD jail running [[https://ntfy.sh|ntfy]]compiled for FreeBSD
  
 [[https://status.bsd.cafe|https://status.bsd.cafe]] is a FreeBSD jail running [[https://uptime.kuma.pet/|Uptime Kuma]]. This will monitor the other services' reachability and lives in an external VPS. [[https://status.bsd.cafe|https://status.bsd.cafe]] is a FreeBSD jail running [[https://uptime.kuma.pet/|Uptime Kuma]]. This will monitor the other services' reachability and lives in an external VPS.