[HN Gopher] Scaling Mastodon in the face of an exodus
___________________________________________________________________
Scaling Mastodon in the face of an exodus
Author : NoraCodes
Score : 173 points
Date : 2022-11-11 15:40 UTC (7 hours ago)
(HTM) web link (nora.codes)
(TXT) w3m dump (nora.codes)
| adultSwim wrote:
| These technical solutions are great, but the biggest need is
| still organizational. We need infrastructure with transparent
| open governance, a la Debian.
|
| Is anyone aware of an org that hosts an instance but is also
| putting work into the governance side?
| gnramires wrote:
| From some non-exhaustive research, there are many: social.coop,
| chaos.social, social.tchncs.de, nerdica.de (friendica) -- seem
| to have governance. I believe, mastodon.xyz, fosstodon.org
| among others have transparent donations. (I believe
| mastodon.xyz uses the default source)
|
| I agree that you should seek more open governance, at least
| transparent finances and active open source, (technically
| that's covered by AGPL), because otherwise the server could go
| at any time, and it violates the spirit of federation in the
| first place.
|
| Here's a nice transparency report:
| https://hub.fosstodon.org/about/
| squidbeak wrote:
| The most likely outcome here is that Twitter stabilises somehow,
| Mastodon increases its name recognition and even usage, but that
| its incoming migrants eventually skulk back to Twitter for its
| reach.
| Ambolia wrote:
| Twitter seems to have peaked on usage the last days, not
| decreased, despite the migrations.
| pornel wrote:
| Twitter is very entertaining right now with everyone dunking
| on The Main Character and making cheap ($8) jokes.
|
| But at the same time I think it's eroding Twitter's
| seriousness, and soon Elon's Twitter may be as uncool as
| Zuck's Facebook.
| Ambolia wrote:
| I think Twitter has two big killer features:
|
| - Get quick press releases (from the real press, but also
| from other sources)
|
| - Be able to, let's call it politely, "interact" with
| politians and celebrities.
|
| If too many celebrities leave feature 2 could be killed, it
| remains to be seen if increased openness in feature 1 would
| be enough to compensate.
| yborg wrote:
| I don't see it as either/or, choices are good, and if Twitter
| rights the ship before it becomes a hellscape I'm sure many
| people will continue to use it as a primary platform. Ideally,
| Fediverse will have established mind share so more people
| consider it as another channel for engagement, just as people
| have multple Twitter/Instagram/Tiktok presences.
| andix wrote:
| Shouldn't you use a postgres connection pooler like pgbounce for
| such a scenario? AFAIK it can be switched to transaction mode,
| which allows to have way more connections from clients to
| pgbounce than available postgres connections.
| standardUser wrote:
| I was extremely bummed about their sign-up process.
|
| Mastodon doesn't have a snowflakes chance in hell of becoming the
| de facto Twitter replacement if they don't change that process to
| a normal, near-instant sign up process that users have come to
| expect from every other service.
|
| Make the "choosing server" nonsense come after account creation.
| Ffs.
|
| EDIT: Geez, I get it, there are a lot of Mastodon fanboys that
| have zero interest in the success of Mastodon as a Twitter
| replacement. Which is fine, since it never will be with it's
| current onboarding process.
| LukeHoersten wrote:
| Email did alright with users choosing servers.
| standardUser wrote:
| Not sure what you are talking about. I can sign up for an
| email right now with a dozen different services and not one
| will make me complete a mysterious task like "choosing a
| server".
| czottmann wrote:
| Each of those "dozen different services" is analogous with
| "a server".
|
| You choose a service (server) and then sign up there. The
| sign up belongs to a server, not the server to the sign up.
| You can't ring a door bell before picking a door first. ;)
| standardUser wrote:
| To the _user_ , Mastodon is the service. But the very
| first step of sign-up, Mastodon says the user must
| "choose a server". They just did! It's called Mastodon.
|
| Now, you may see it differently and want to offer an
| explanation. I'm sure your explanation would be coherent
| and rational. But your explanation means _nothing_ to the
| average user. They click 'sign up' and expect to sign up
| and get to using this new website called Mastodon they
| heard about. And when they realize it's not that simple,
| many will abandon the process. It's a simple as that.
| SpaghettiCthulu wrote:
| That's like saying "to the user, email is the service"
| standardUser wrote:
| No, it is not, because "email" has been in the dictionary
| for 30 years and is universally understood.
|
| The term "Mastodon" means, to most people, either "a
| website just like Twitter " or, more likely, absolutely
| nothing.
|
| Is that difference, and the barrier it presents to new
| users, somehow unclear?
| swidi wrote:
| Those dozen different services are servers, that you chose
| from.
| standardUser wrote:
| Right, and that is atrocious UX that will put a hard cap
| on how popular Mastodon can become.
| Rebelgecko wrote:
| So there's a dozen options. But in order to sign up, you
| have to pick a single server. Isn't that the same
| situation? There's no single "www.email.com" that you use
| to sign up for an email address.
| SpaghettiCthulu wrote:
| The sign-up process doesn't actually begin until you pick
| an instance and go to it directly, just like with email.
| It's like complaining about a website that explains what
| email is and gives you a list of service providers to
| choose from.
|
| The email service of your choice _is_ the "server" you've
| chosen. If you go directly to a mastodon instance (the
| "server") the sign-up process won't require you to choose a
| server.
| standardUser wrote:
| Right, and like I say below, there are very rational and
| coherent explanations for how Mastodon works, but those
| explanations mean nothing to the average user, many of
| whom will not complete sign up because it is so radically
| different than what they are accustomed to 99.9% of the
| time when signing up for a new website they heard about
| (like Twitter for example).
| VikingCoder wrote:
| Hi, you may like to try "E-MAIL!"
|
| Chose a server:
|
| 1) GMail
|
| 2) Yahoo! Mail
|
| 3) Outlook
|
| etc...
| standardUser wrote:
| Are you trolling me? Do you genuinely not understand the
| difference from the perspective of the average user?
| VikingCoder wrote:
| You wrote:
|
| > I can sign up for an email right now with a dozen
| different services and not one will make me complete a
| mysterious task like "choosing a server"
|
| You absolutely, 100% had to "choose a server" for your
| email.
|
| To the average user, how do you decide between Hotmail,
| Yahoo! Mail, GMail, Outlook?
|
| This is 100% analogous, except Mastodon also makes it
| nearly trivial to change your server, with no effort
| taken by anyone who is already communicating with you.
| It's literally easier than an email server migration.
| standardUser wrote:
| You are working under the assumption that people read the
| phrase "Mastodon" like the read the phrase "email". That
| is absolutely not true for almost all people. They think
| of Mastodon as similar to Twitter, and they expect a
| similar sign up process.
| VikingCoder wrote:
| I get your intent - that people don't understand what
| federation means. But you're completely ignoring that we
| all live with federated email servers. Federated cell
| phone carriers, too, for that matter.
|
| Once upon a time, you had to go to a college that had
| been _invited_ to The Facebook, in order for you to get
| an account.
|
| The beginnings of new things are always complicated.
|
| We all learned the difference between .com, .edu., .co,
| .uk eventually...
| VikingCoder wrote:
| Also, "almost all people" have never heard of Mastodon,
| and will never hear of Mastodon.
|
| I also think you're forgetting that most people had no
| idea what "The Information Super-Highway" was, and had no
| understanding of what an "ISP" was or why they needed to
| pay a monthly fee to access free content. And tie up
| their phone line.
|
| People who were on AOL thought they _were_ on the
| Internet. And Compuserve. Delphi. Prodigy. GEnie.
|
| This is not a new problem.
|
| But it's not like you could just make an Internet
| account, and just pay them. You HAD to use a federated
| ISP. And some of those ISPs tried to be Walled Gardens,
| with a weird side-door that ALSO let you get to "The
| Internet," but that was mostly porn and weirdos.
| Ptchd wrote:
| too bad Mastodon requires an email to signup though
| ProjectArcturis wrote:
| Email only took off among the non-nerd population when easy-
| to-use webmail sites like hotmail became available.
| notriddle wrote:
| More importantly, email has become extremely consolidated.
| It has most of the disadvantages of being federated, and
| not very many of the advantages (Google sees most of the
| emails I send and receive even though I don't use them).
| VikingCoder wrote:
| I go to Samsung to buy a "cell phone," and I thought it would
| be a normal, near-instant sign-up process that I've come to
| expect. But instead they're making me "Choose a carrier" or
| some nonsense. What is a Verizon, T-Mobile, AT&T, or
| uscellular, and why would I want one? Can't I choose one of
| those after I get my "cell phone number"?
| standardUser wrote:
| The pedantry is more than I can even believe. How is this
| genuine and not trolling?
| VikingCoder wrote:
| I'll copy my other comment over:
|
| I get your intent - that people don't understand what
| federation means. But you're completely ignoring that we
| all live with federated email servers. Federated cell phone
| carriers, too, for that matter.
|
| This is honestly not that different.
|
| I 100% get what your intent is, but you seem to 100% not
| get that this sentence was _completely false_ :
|
| > I can sign up for an email right now with a dozen
| different services and not one will make me complete a
| mysterious task like "choosing a server"
|
| And the same way that you can't "create your email account
| first, and then pick a server later," is the same exact
| reason you can't "create your Mastodon account first, and
| then pick your server later."
|
| It's literally the same reason.
|
| And you still seem to be completely rejecting that concept.
| As though this is "just bad UX." It's _fundamental_ to how
| both e-mail and Mastodon work.
|
| They can't "fix it," the way you wish they could.
|
| Sure, they might come up with something, but it would be
| inherently worse at some really important things it's
| trying to do. It _wants_ to be federated. Just like email.
| And you seem to not have any understanding of that.
|
| AND to be -mad- at the people who are trying to help you
| understand. As though we're purposefully wasting your time.
| knicholes wrote:
| I think instead of "pedantry," you're looking for
| "facetiousness."
| kerblang wrote:
| There was a posting on HN yesterday about how original
| maintainers were kind of flooded & overwhelmed by Twitter
| refugees who didn't understand that Mastodon wasn't really
| _meant_ to be the go-to Twitter clone.
| yjftsjthsd-h wrote:
| > Geez, I get it, there are a lot of Mastodon fanboys that have
| zero interest in the success of Mastodon as a Twitter
| replacement.
|
| You're not getting downvoted because everyone who disagrees
| with you is a strawman (sorry, "fanboy"), you're getting
| downvoted because your premise is shaky and every time someone
| points out an existing ecosystem where federation is normal you
| claim it doesn't count.
| weberer wrote:
| >Make the "choosing server" nonsense come after account
| creation. Ffs.
|
| Where would you like these account credentials to be stored?
| Imagination land?
| standardUser wrote:
| Users expect a company called "Mastodon" to store it, just
| like a company called "Twitter" stores their credentials for
| that site. I understand this is not how Mastodon works, so
| save your breath. The problem is almost everyone else on the
| planet does _not_ know how Mastodon works and it will confuse
| and deter them.
| viraptor wrote:
| At this point I believe more time has been spent arguing
| that people will be confused than people spent being
| confused. "Choose one, you can change it later if you
| want", done.
|
| Yes, it's different. People will get over it.
| [deleted]
| Havoc wrote:
| Feels a bit like mastodon needs to come with load testing tools?
| If only to give smaller admins a quantifiable sense of what level
| their instance turns into a flaming ball
| wmf wrote:
| Mastodon should probably throttle signups by default so new
| users can't pile on to servers.
| BitPirate wrote:
| I would rather encourage migration and let the admin provide
| links to similar instances.
| sandyarmstrong wrote:
| You understand there is no central authority for this,
| though, right? Many instances are growing, and account
| creation is a per-instance concept. The instance in the
| article is relatively small but it's impacted by activity
| coming from other, larger instances.
| egypturnash wrote:
| This has happened. Lots of servers, including the ones run by
| the Mastodon project, are now closed to new users. If you
| want an account on a Mastodon server then you pretty much
| need to set one up yourself, or know someone crazy enough to
| think joining the Holy Order Of Social Plumbers sounds like a
| good thing.
| capableweb wrote:
| Or Mastodon admins needs to publish a bit more numbers about
| what kind of instances they run on what kind of hardware, so
| people know what to expect at what stages.
| NegativeK wrote:
| That's coming. The infosec.exchange admin has been tooting
| what's going on to some extent, but delayed until now the
| full documentation in favor of gaining headroom for the
| incoming growth.
| WorldMaker wrote:
| Also, Mastodon needs a better handle on its "range" of scale:
| a lot of the core contributors of Mastodon get focused on the
| performance of the two massive "flagship" instances
| (mastodon.social/mastodon.online). Those have far different
| scaling needs than most of the smaller instances and
| sometimes the admin work needed for smaller instances gets
| overlooked because the "flagship" scale handles it just fine.
| mdaniel wrote:
| So this one is a fork, and infosec.exchange is a fork (
| https://github.com/glitch-soc/mastodon ); are the mastodon
| committers opposed to incorporating those changes, or this fork
| situation is "as it should be" while these experiments run their
| course?
|
| I'm all for experimentation, but since "the exodus" I've become
| acutely aware of how many instances are out there advertising
| their version number[1], so the first big rails (or mastodon
| itself) vuln is going to be some ooooonooooz
|
| 1: although in this case, it says a version but the "Source Code"
| link points to the wrong repo, so .. security by obscurity I
| guess?
| Kye wrote:
| I've gotten the impression Eugen has a very clear idea of what
| he wants Mastodon to be and isn't shy about rejecting features
| that he doesn't think serve that goal. Those forks are the
| model of good open source. Other people have strong ideas about
| how it should be, couldn't convince the main project's owner,
| and moved on to create their own version that suits their
| vision.
|
| It's great. This is how it should be. And it's a _huge_
| improvement over open source projects that languish for years
| for lack of strong leadership with no one forking it because
| there 's no one to say no to features. As long as the
| possibility exists, people are wary of forking. Remove the
| possibility, and people can feel confident doing their own
| take.
|
| As for Mastodon, as far as I know all the major forks are
| maintained by experienced developers who incorporate security
| updates.
| thwarted wrote:
| And federation is about the protocol and the
| interoperability, which is how software achieves stability
| and longevity (although neither is guaranteed). It's
| perfectly fine for multiple implementations, or forks of a
| single implementation, to bloom.
| jdp23 wrote:
| Mastodon lead developer has resisted including some of the
| glitch-soc improvements since 2017 -- like "local-only posts",
| which are valuable both from a privacy and anti-harassment (and
| are also in Hometown).
| sandyarmstrong wrote:
| "By our best understanding, our major changes are not wanted by
| the Mastodon project, hence maintaining this fork instead of
| trying to commit the changes to Mastodon."
|
| https://github.com/hometown-fork/hometown#readme
| huimang wrote:
| I'm not sure about Glitch, but Hometown has several different
| features [1] that Mastodon may never opt to include as it
| changes the behavior a bit.
|
| 1: https://github.com/hometown-fork/hometown/wiki
| huimang wrote:
| I'll use this opportunity to mention Pleroma [1], my preferred
| alternative to Mastodon & others. It's much more lightweight than
| Mastodon.
|
| 1: https://pleroma.social/
| capableweb wrote:
| That's neat. Do you happen to know if it's possible to migrate
| from Mastodon to Pleroma without having to recreate the account
| and setting up redirects? I already host my own Mastodon
| instance since a few years back, and don't want to do another
| redirect if I can help it.
| huimang wrote:
| To my knowledge you would have to create a new account and
| set up redirects, since it's a new server. Migrating is
| definitely a pain point in the fediverse. That's why I ended
| up going with a single-user instance that I selfhost.
| capableweb wrote:
| Yeah, I mean migrating the software of a single-user
| instance, not migrating between instances, sorry if that
| was unclear.
|
| So I currently run a single-user instance of Mastodon.
| Wondering if it's possible to start running a single-user
| instance of Pleroma instead, without having to change the
| username+domain?
| jsmith45 wrote:
| My understanding is in theory yes. But in practice things
| might be more complicated.
|
| Like merely keeping the same name and domain is easy
| enough. Just shut down the old system, start the new one,
| create an account with the same name. Of course you would
| need to refollow everyone. I'm not sure what happens to
| your followers. Your new server will not know they are
| followers, so unless this triggers mastodon to try to
| automatically refollow, I think they are left in a half-
| broken state. You definitely lose all your old content.
| All in all, this is not really a great option.
|
| For a full migration where in theory everything works,
| you could _try_ to follow the linked process to migrate
| to Pleroma 2.0.5, and then obviously just upgrade to
| latest following plemora documentation for upgrading.
| description of migration process:
| https://icyphox.sh/blog/mastodon-to-pleroma/ (This is
| based on the following migrator:
| https://gitlab.com/soapbox-pub/migrator). I have no idea
| if it works with newer mastodon minor releases.
| riffic wrote:
| More alternatives:
|
| https://codeberg.org/fediverse/delightful-fediverse-apps
|
| I'm partial to WordPress with the ActivityPub plugin and would
| highly recommend pushing for inclusion of core AP functionality
| into your content management system of choice (so _everyone_
| can just stand up and participate on their own domain name,
| like media /gov/your local school etc).
|
| Mastodon itself is fun but the real value in the fedi is going
| to be diversity of interoperable (or even incompatible)
| implementations. There (on a long enough timeline) _will be_ a
| successor to Masto 's fedi domination.
| choiceschoices wrote:
| Careful, Pleroma's developer is a right winger and lots of
| instances on the Fediblock list are Pleroma, if not most of
| them. Many instances are quick to block single user Pleroma
| instances.
|
| Mastodon's developer is a left winger, so you should be aware
| that your choice of software will broadcast your political
| allegiance. Delve into the old issues on GitHub to find lots of
| "fun" arguments about things like the US culture war!
|
| Good luck not getting doxxed or harassed!
| olah_1 wrote:
| > Many instances are quick to block single user Pleroma
| instances
|
| Do you think this makes Mastodon look good? Quite the
| opposite.
| choiceschoices wrote:
| Hamcha wrote:
| This is lunacy, why would you ever think people choose
| software platform over which political beliefs they maintain.
| I am on a predominantly LGBT+ instance and they run pleroma
| cause it's everyone's preference. It's there any other
| platform where such a thing occurs?
| unethical_ban wrote:
| The assertion seems to be that federated social-networking
| software in the wild tends to split ideologically. Your
| assertion would counter that a bit. In the abstract,
| politics shouldn't matter in the development/use of neutral
| software.
| egypturnash wrote:
| This is a real thing. Pleroma's reputation on the
| #fediblock tag is largely "oh god it's another Pleroma with
| five anime girls who love to nazipost, you know what to
| do".
|
| Mastodon admins don't see the Pleromas like yours. All we
| see is the problem ones. Yesterday I saw someone running a
| single-user Masto who was sharing a bit of code they
| knocked together to auto-defederate every Pleroma their
| Masto saw. They said they were fine with losing the
| _obviously_ vanishingly-small number of non-nazi Pleromas.
|
| I agree that this is fucked up. But this is the reputation
| Pleroma has among Masto admins. I don't know what Pleroma
| can do to change this, assuming they want to.
| Klonoar wrote:
| This happens far more often than you seem to think.
| Cyberdog wrote:
| > you should be aware that your choice of software will
| broadcast your political allegiance
|
| No. I refuse to allow such a reality to manifest itself.
|
| Use the software which best suits your needs. I will not
| assess your political beliefs based on your software choices
| and I ask that you do the same for me.
|
| If I researched the political alignment of all the developers
| of the software I want to use and only choose software made
| by developers whose politics sufficiently align with mine,
| I'd never be able to get anything done.
| guywithahat wrote:
| I also prefer pleroma, plus they just have larger instances
| (like poa.st, which had more active users than mastodon.social
| before Elon bought twitter, although I'm unsure if that's the
| case now). Sites like Gab started off on Mastodon but found it
| was too hard to scale and moved off it.
| mdaniel wrote:
| My years of scar tissue with RabbitMQ have given me a healthy
| suspicion of OTP (
| https://git.pleroma.social/pleroma/pleroma#otp-releases-reco...
| ), and I would never want to be responsible for keeping it
| alive and healthy. For comparison, while I'm sure people also
| have strong opinions about rails and sidekiq, at least there is
| a non-trivial body of existing blog and SO posts about it
| huimang wrote:
| That's fair. I selfhost Pleroma as a single-user instance, so
| I couldn't tell you about running it at scale. I went with it
| because it could run on a raspberry pi a few years back
| whereas mastodon was too resource-hungry.
| pmarreck wrote:
| I've been working on Elixir sites for years now and have
| never had an issue with OTP underneath, although none of them
| (yet) have been high-demand. The reliability and performance
| characteristics have been top-notch. Is it possible that with
| the mass influx of Elixir users into the Erlang space since
| the RabbitMQ days, OTP has made leaps and bounds of
| improvement?
| GordonS wrote:
| That's odd given OTP's focus on stability and reliability.
|
| RabbitMQ has been my message bus of choice for over a decade.
| Configuration is a total PITA, but it's a one-time thing.
| Otherwise, it's been rock solid and I'll happily continue to
| use.
| throwaway894345 wrote:
| I thought OTP was supposed to have a very strong
| operations/reliability story ("nine nines of reliability in
| telecoms" and all that)?
| olah_1 wrote:
| For what it's worth, I remember someone shared Pleroma code
| in the Elixir forum and some veterans there said it was a
| very non-standard way of organizing an Elixir codebase.
|
| It could be possible that Pleroma is not very idiomatic
| Elixir / OTP.
| pmarreck wrote:
| > TL;DR: Mastodon's Sidekiq deferred execution jobs are the
| limiting factor for scaling federated traffic in a single-
| server or small cluster deployment. Sidekiq performance scales
| poorly under a single process model, and can be limited by
| database performance in a deployment of the default Dockerized
| configuration.
|
| Well, that in short explains why Pleroma/Elixir is a much
| better stack to build this in. You don't need Sidekiq
| (https://sipsandbits.com/2020/08/07/do-we-need-background-
| job...) and you aren't stuck with a GIL (Global Interpreter
| Lock).
| krainboltgreene wrote:
| > Well, that in short explains why Pleroma/Elixir is a much
| better stack to build this in
|
| As someone who has extensive experience in both elixir and
| ruby, and mastodon itself, no this is doesn't.
| pmarreck wrote:
| I read that a Pleroma instance can handle at least 10-50x
| the traffic of a Mastodon instance running on the same
| hardware. Based on the reports from other sites that have
| switched from Ruby to Elixir, this claim rings true. Are
| you claiming otherwise? I mean, the lack of a GIL alone
| (thank you, functional language with immutable data!)
| should give a pretty massive performance improvement
| sjustinas wrote:
| Just to note, Pleroma also uses a job queue: Oban.
| https://hexdocs.pm/oban/Oban.html
| pmarreck wrote:
| Oban is great. (I subscribe to Oban Pro.) It's also
| seemingly very superior to Sidekiq-like solutions for job
| management.
|
| But you don't _need_ that. It 's certainly a nice-to-have.
| sjustinas wrote:
| Note also that recently a fork called Akkoma[1] sprung up. If
| one is looking to self-host, it might be worth looking into
| this vs Pleroma (I don't have a horse in this race, was just
| doing some research on different ActivityPub servers).
|
| [1]: https://coffee-and-
| dreams.uk/development/2022/06/24/akkoma.h...
| [deleted]
| mcguire wrote:
| How much memory/cpu does Pleroma need for a single user
| instance?
| sjustinas wrote:
| I spun up a test server of Pleroma recently. Following just a
| few people, 0 people following me AFAIK, I did join a few
| relays so my federated timeline is populated. It is currently
| showing 360MB RSS and the CPU load maxes out at ~50% of a
| single vCPU.
| dewey wrote:
| For those interested, the author of Sidekiq also gave some hints
| on Reddit where this link was posted:
| https://old.reddit.com/r/rails/comments/yse6no/_/ivz1clf
___________________________________________________________________
(page generated 2022-11-11 23:01 UTC)