This got me wondering, I created a Mastodon user @ defcon.social and my first couple of posts were images, just to test things out and get started with my chosen client - Ivory by Tapbots (the creators of Tweetdeck, RIP) after tptacek spoke glowingly of it here. Then I realised that by posting those I'm basically taking up space on a community service without paying for it, and I wasn't sure exactly what the etiquette was. On a commercial, monetised service like Twitter it's different as there are advertisers (or at least there were...) but afaik "defcon.social" is just a non-profit and I'd really like not to be a big cost sink.
Also I wondered if there's any overhead involved in following users across many different instances - if my @defcon.social user follows a bunch of users on various other instances does that place additional burden on their mastodon instance or just on my local client?
Might be time for me to read the defcon.social fine print and T&Cs (I only glanced over it) or even about Mastodon/ActivityPub generally...
So if 10,000 people on server A subscribe to someone on server B then server B will send 10,000 duplicate messages to server A.
I hope I’m wrong but that’s what I’ve heard.
Anyone with expertise here who can speak to the scaling of ActivityPub?
On each individual server they are ideally saved based on their unique identifier (which are RFC3987 IRIs) and I doubt that there is any software that will do it individually for each inbox instead of storing one copy to which each inbox links to.
To minimize even this, each server can store just the IRI(which is mandated to be de-referenceable) and load the payload when prompted by UI. I doubt that anyone does this also.
> This program posts news to thousands of machines throughout the entire civilized world. You message will cost the net hundreds if not thousands of dollars to send everywhere. Please be sure you know what you are doing.
From the rn usenet client, back in the day.
This is why we can't have nice things: https://en.wikipedia.org/wiki/Laurence_Canter_and_Martha_Sie...
[0] https://www.w3.org/TR/activitypub/#x7-1-3-shared-inbox-deliv...
[1] https://github.com/mastodon/mastodon/blob/a5a00d7f7adff5e0af...
It caches all media that you view, and I assume it might prefetch stuff to. It has a tool that prunes out old cached images and such. However that script isn't setup to run automatically (or if it is, its far too loosey-goosey)
However the biggest killer is that it doesn't clear cached user page header images. Here is the output of my cache. Headers are not cleaned, and need to be deleted manually.
Attachments: 1.43 GB (8.19 MB local)
Custom emoji: 61.9 MB (0 Bytes local)
Preview cards: 344 MB
Avatars: 3.01 GB (71.7 KB local)
Headers: 6.69 GB (172 KB local)
Backups: 0 Bytes
Imports: 0 Bytes
Settings: 36.2 KBThe usage can be contained with a few cron jobs to purge old cached content aggressively. Running
`tootctl statuses remove && tootctl media remove` once a week is enough to make it sane in my case.
My personal instance has been up two months with 12 GB space used, but only 88 MB of that is my stuff; the rest is just the cache of others' posts. That can be fairly aggressively cleared out, and I think Mastodon lets you configure an automatic purging of this data.
I don’t allow people who I don’t know to make accounts so I haven’t had any spam or abuse trouble.
I haven’t had to deal with any downtime or technical issues since I got it running, which is a bit of a disappointment tbh