this post was submitted on 05 Jun 2023
141 points (100.0% liked)

Lemmy

12531 readers
9 users here now

Everything about Lemmy; bugs, gripes, praises, and advocacy.

For discussion about the lemmy.ml instance, go to !meta@lemmy.ml.

founded 4 years ago
MODERATORS
 

With forewarning about a huge influx of users, you know Lemmy.ml will go down. Even if people go to https://join-lemmy.org/instances and disperse among the great instances there, the servers will go down.

Ruqqus had this issue too. Every time there was a mass exodus from Reddit, Ruqqus would go down, and hardly reap the rewards.

Even if it's not sustainable, just for one month, I'd like to see Lemmy.ml drastically boost their server power. If we can raise money as a community, what kind of server could we get for 100$? 500$? 1,000$?

you are viewing a single comment's thread
view the rest of the comments
[–] nutomic@lemmy.ml 39 points 1 year ago (1 children)

Its better to optimize the code so that all instances benefit.

[–] Lobstronomosity@lemmy.ml 13 points 1 year ago* (last edited 1 year ago) (1 children)

Is it possible to make Lemmy (the system as a whole) able to be compatible with horizontally scaling instances? I don't see why an instance has to be confined to one server, and this would allow for very large instances that can scale to meet demand.

Edit: just seen your other comment https://lemmy.ml/comment/453391

[–] nutomic@lemmy.ml 24 points 1 year ago (3 children)

It should be easy once websocket is removed. Sharded postgres and multiple instances of frontend/backend. Though I don't have any experience with this myself.

[–] wiki_me@lemmy.ml 12 points 1 year ago

I think that is unavoidable, Look at the most popular subreddits , they can get something like 80 million upvotes and 66K comments per day, do you think a single server can handle that?

Splitting communities just so that it will be easier technically is not good UX.

[–] bobpaul@fosstodon.org 9 points 1 year ago

@nutomic @Lobstronomosity In one of the comments I thought I saw that the biggest CPU load was due to image resizing.

I think it might be easier to split the image resizer off to its own worker that can run independently on one (or more) external instances. Example: client uses API to get a temporary access token for upload, client uploads to one of many image resizers instead of the main API, image resizer sends output back the main API.

Then your main instance never sees the original image

[–] ccunix@lemmy.ml 8 points 1 year ago (1 children)

There is already a docker image so that should not be too hard. I'd be happy to set something up, but (as others have said) the DB will hit a bottleneck relatively quickly.

I like the idea of splitting off the image processing.

[–] nutomic@lemmy.ml 2 points 1 year ago (1 children)

Image processing isnt causing any noticable cpu load.

[–] ccunix@lemmy.ml 2 points 1 year ago (1 children)

I saw someone say it was, obviously I have no access to data.

[–] nutomic@lemmy.ml 1 points 1 year ago

Maybe on another instance but not on lemmy.ml