I'm sorry, it took *how* many servers to post a single long message from Ghost to 5k fediverse accounts and handle some replies?
-
@kissane I know someone who is pondering switching his newsletter from beehiiv (which is pretty janky ime) to Ghost. IDK if he's aware of this.
-
@b0rk I mean, I definitely hear about how resource-intensive fedi servers can be, and we don't have specs on what exactly Ghost is running, but yiiiiiiikes
(Also, for a system that still roots for single-user instances, $100/month is a high barrier to entry!)
-
@4d3fect I mean, it seems fine for email and serving a website…
-
@kissane @fediversereport this seems a bit unbelievable for some reason?
Am wondering if it was actually the AP stuff that was the burden, or whether it was the thundering herd requesting the link previews?
-
@kissane right. This guy has, I think, some thousands (?) of subs. So,... Not good?
-
@polotek @kissane @fediversereport Why does it take so many resources? Is it because there are many destinations for the message?
-
@polotek @fediversereport I feel like people are talking about it! But maybe less publicly than they could be.
(And I have no handle on whether what Ghost is encountering is an AP thing or a them thing—or, to be more precise to which degree it's one thing or the other.)
-
@thisismissem Yeah, I just can't understand this.
The fedi preview DDOS is obviously a thing, but the way this is presented just seems so weird. (And if it's actually about link previews, are they going to charge more for posts that get widely boosted? I have questions.)
-
@kissane @thisismissem this (as in what the ghost post describes) does not pass a smell test for me
-
@4d3fect Thousands of email subscribers is pretty easy to price out for Ghost, but thousands of fedi subscribers…unclear what that will involve.
-
@kissane @fediversereport okay, so I had a quick look, at it seems like they're processing everything in the request/response lifecycle, instead of using a queue:
1. https://github.com/TryGhost/ActivityPub/blob/main/src/app.ts#L95
2. https://fedify.dev/manual/mqSo by using queue they could probably get better performance
-
@darius @thisismissem I would say that I am significantly more alarmed by the way they're talking about it and what that implies than by AP's intrinsic resource consumption. But I am just a person who tries to avoid running servers of any kind.
-
@thisismissem @fediversereport Do you mind if I boost this?
-
@kissane @fediversereport this also means incoming activities are likely holding connections open longer triggering auto scaling because usually that happens based on request count and CPU/Memory
-
@kissane @fediversereport sure!
-
@kissane ugh so I believe this is a mastodon fail and def not a protocol fail.
(at risk of being wrong, and sorry if I am)
Mastodon only shows things that are pushed into it from other servers.
Push is only important for real-time synchronization.
IMO it's obviously a good idea for any AP Server to check like once a day or on-demand to make a single HTTP Request to an Actor's outbox and show its recent stuff.
But mastodon doesn't do this.
-
@kissane so for a publisher to ensure that all their followers see a thing, and because in practice so many people use mastodon, a publisher has to spend all this compute/bandwidth/energy to make sure that they push the post into each followers inbox.
It would be better for everyone for mastodon and everyone else to just fetch a followee's outbox once a day (aka 'what RSS does') and just progressively enhance into receiving pushes from publishing actors that want to do it. but masto requires it
-
@kissane @4d3fect I used it for thousands of subscribers years ago and it was like $9/mo. activitypub may only make sense for self hosting if having thousands of masto followers is burning that much juice. I'd be interested to benchmark 5thousand followers on 100 masto servers versus 5000 on 100 threads versus 100 friendica versus 100 pleroma etc etc... someone write a grant proposal! ️
-
@kissane @fediversereport @thisismissem I read that post as “we set this up using our standard systems and they are definitely not right for this, so we’re going to have to figure out a different system that fits and that’ll take a while, but we’ll get there.” But I’m just watching and enjoying the messy honesty of these posts, not necessarily understanding the details.
-
@Viss @kissane @fediversereport ghost is using fedify! which is fairly modern JS AFAIK.