this post was submitted on 01 Jul 2023
3986 points (97.9% liked)

Lemmy.World Announcements

29317 readers
3 users here now

This Community is intended for posts about the Lemmy.world server by the admins.

Follow us for server news 🐘

Outages πŸ”₯

https://status.lemmy.world

For support with issues at Lemmy.world, go to the Lemmy.world Support community.

Support e-mail

Any support requests are best sent to [email protected] e-mail.

Report contact

Donations πŸ’—

If you would like to make a donation to support the cost of running this platform, please do so at the following donation URLs.

If you can, please use / switch to Ko-Fi, it has the lowest fees for us

Ko-Fi (Donate)

Bunq (Donate)

Open Collective backers and sponsors

Patreon

Join the team

founded 2 years ago
MODERATORS
3986
submitted 2 years ago* (last edited 2 years ago) by ruud to c/lemmyworld
 

Looks like it works.

Edit still see some performance issues. Needs more troubleshooting

Update: Registrations re-opened We encountered a bug where people could not log in, see https://github.com/LemmyNet/lemmy/issues/3422#issuecomment-1616112264 . As a workaround we opened registrations.

Thanks

First of all, I would like to thank the Lemmy.world team and the 2 admins of other servers @[email protected] and @[email protected] for their help! We did some thorough troubleshooting to get this working!

The upgrade

The upgrade itself isn't too hard. Create a backup, and then change the image names in the docker-compose.yml and restart.

But, like the first 2 tries, after a few minutes the site started getting slow until it stopped responding. Then the troubleshooting started.

The solutions

What I had noticed previously, is that the lemmy container could reach around 1500% CPU usage, above that the site got slow. Which is weird, because the server has 64 threads, so 6400% should be the max. So we tried what @[email protected] had suggested before: we created extra lemmy containers to spread the load. (And extra lemmy-ui containers). And used nginx to load balance between them.

Et voilΓ . That seems to work.

Also, as suggested by him, we start the lemmy containers with the scheduler disabled, and have 1 extra lemmy running with the scheduler enabled, unused for other stuff.

There will be room for improvement, and probably new bugs, but we're very happy lemmy.world is now at 0.18.1-rc. This fixes a lot of bugs.

(page 5) 50 comments
sorted by: hot top controversial new old
[–] anthimatter 4 points 2 years ago

Even using Tor, the site load-times seem a lot snappier. Exciting times.

[–] itsnotlupus 4 points 2 years ago

I like it.
The site feels a lot better to me, and seems significantly gentler in terms of browser resource consumption.

[–] solidgrue 4 points 2 years ago

Its been pretty snappy for me all afternoon! No errors to speak of.

Nice work!

[–] Rooki 4 points 2 years ago (1 children)

Is there a issue with the api? ( Because the api wrapper lemmy-js-client doesnt work on login. ) I tried it yesterday but not today yet. I will test it when i can :)

load more comments (1 replies)
[–] albertye 4 points 2 years ago* (last edited 2 years ago) (1 children)

I can't login from my main browser even if I clear the cache and cookies, if I use other browser it works

Edit: I fixed it just by changing my browser language to English and restarting it, hope this is useful for someone.

Also, thanks to Ruud and team for the hard work, everything seems to work really well and fast.

load more comments (1 replies)
[–] GlockenGold 4 points 2 years ago

Excellent news! I can browse Lemmy on my phone again, many thanks to you @Ruud and everyone else who worked on this!

[–] danielfh 4 points 2 years ago

Thank you!!

[–] [email protected] 4 points 2 years ago* (last edited 2 years ago) (1 children)

Have you considered running your Lemmy instance on more than a single machine? If it is possible to run two lemmy containers anyway (ie, lemmy is not a singleton), why not run them on separate machines? With load balancing you could achieve a more stable experience. It might be cheaper to have many mediocre machines rather than a single powerful one too, as well as more sustainable long-term (vertical vs horizontal scaling).

The downside would be that the set-up would be less obvious than with Docker compose and you would probably need to get into k8s/k3s/nomad territory in order to orchestrate a proper fleet.

load more comments (1 replies)
[–] DelvianSeek 4 points 2 years ago

Just want to say thank you. Your hard work is very much appreciated.

[–] MicahParsons 4 points 2 years ago

This is really cool that this gets shared. Thanks for all of the info!

[–] cute_cat 4 points 2 years ago

I really enjoy how lemmy is growing!

[–] srasmus 3 points 2 years ago

Excellent work!

[–] feitingen 3 points 2 years ago

It seems there is still some performance issues.

Maybe consider a webcache like varnish to take some of the load off?

[–] MKBandit 3 points 2 years ago

Quick everyone show Appreciation before they notice

[–] ami 3 points 2 years ago

Amazing work! It seems much more performant now, everything seems to be loading faster.

[–] [email protected] 3 points 2 years ago
[–] 00Lemming 3 points 2 years ago

πŸ™Œ Great work team!!!

[–] Calzoner 3 points 2 years ago

This is awesome. Was a fun read too. Super cool to see what was going on behind the scenes.

[–] BitOneZero 3 points 2 years ago (1 children)

we created extra lemmy containers to spread the load. (And extra lemmy-ui containers).

Is Rust HTTP server running into thread limits? database connection pooling? All kinds of internal questions bout that solution.

load more comments (1 replies)
[–] alm42 3 points 2 years ago

Thanks a lot, you’re great

[–] PKlempe 3 points 2 years ago* (last edited 2 years ago)

It seems that I can't log out in my browser. The page simply reloads after clicking the button.

[–] Dewa 3 points 2 years ago

πŸ’― πŸ’― πŸ’― πŸ’― πŸ’― πŸ’― πŸ’― πŸ’― πŸ’― πŸ’―

[–] DSquared 3 points 2 years ago

Hurray! Works well for me so far.

[–] JoMiran 3 points 2 years ago (1 children)

Would you mind sharing your docker-compose.yml file (sanitized, of course)? I am trying to spin up an instance on Google Cloud.

load more comments (1 replies)
[–] AlmightySnoo 3 points 2 years ago (1 children)

obviously not critical, but it looks like there's a small sidebar bug (or feature?) that puts the pic near the instance name if it is the first thing in its description?

[–] [email protected] 3 points 2 years ago

I think that's a feature. But not 100% sure πŸ˜…
But honestly, I like the look. If it is a bug, it should become a feature 🀣

load more comments
view more: β€Ή prev next β€Ί