this post was submitted on 11 Jun 2023
77 points (100.0% liked)

Fediverse

287 readers
1 users here now

This magazine is dedicated to discussions on the federated social networking ecosystem, which includes decentralized and open-source social media platforms. Whether you are a user, developer, or simply interested in the concept of decentralized social media, this is the place for you. Here you can share your knowledge, ask questions, and engage in discussions on topics such as the benefits and challenges of decentralized social media, new and existing federated platforms, and more. From the latest developments and trends to ethical considerations and the future of federated social media, this category covers a wide range of topics related to the Fediverse.

founded 1 year ago
 

Hats off, guys. I can't even imagine how hard it must have been for you guys to keep kbin.social up and running since yesterday.

As a recent refugee from Reddit, I promise to wind down my use of Reddit until such a time as/if when they get rid of their API restrictions. I promise to play my part towards the newly forming community here and create content for the community at large.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 7 points 1 year ago (6 children)

I don't understand why all fediverse CMS written in php.
If authors used go/rust/java it should handle lots of users much easier.
Imo tools that has purpose to serve thousands of concurrent users should consider energy efficiency.

https://cdn.thenewstack.io/media/2018/05/3730357d-results-energy-time-and-memory-usage-screenshot-from-research-paper.png

[–] [email protected] 5 points 1 year ago (1 children)

Fediverse servers are written in all kinds of languages. Mastodon is in Ruby (using Rails), Pleroma, Akkoma, and Bonfire in Elixir, GoToSocial is in Go, Misskey and Calckey in typescript (using Node). Whatever works!

[–] [email protected] 3 points 1 year ago

Lemmy is Rust, adding on to this.

[–] [email protected] 5 points 1 year ago (1 children)

PHP is fine. Lets not forget it's been used by the likes of Facebook, Wikipedia etc. which are much bigger websites then Kbin.

[–] [email protected] 1 points 1 year ago

Kinda. PHP is fine for web workloads. Don't forget Facebook tried to move off PHP and wrote Hack/HHVM because of the performance. It just happens that PHP 7 was faster.

I've not looked at the codebase, but there are probably some routines (search) that could be done faster outside pure PHP/Postgres.

The dev seems to have done a pretty good job with this though, performance issues are likely server load more than the stack. Not sure what he's running this on...

[–] [email protected] 3 points 1 year ago

Lemmy is written in rust.

[–] [email protected] 2 points 1 year ago

This person (link below) is creating a nice reddit alt using Rust. I know its Rust because I spoke with them. I think this php site can work very efficient with proper caching, file storage (storing images and videos elsewhere), and db optimization. I think Flask/FastAPI is quite fast as well. I ran a small site using flask with 250 concurrent users using light calculations for the backend a couple years ago on my home server and it still loaded extremely fast. I am seriously curious what sort of server or shared hosting this site is being ran off of, because one article every 15min to an hour makes me believe its not extremely bogged down with traffic, yet its still not performant. Maybe its a host issue of being ran using a slow shared hosting service, idk.
https://www.reddit.com/comments/13x0hzo

[–] [email protected] 1 points 1 year ago (1 children)

@AucT

@rgb_leds_are_love Kbin uses Symfony so it can scale as much as it needs to. Ernest knows what he is doing.

[–] [email protected] 1 points 1 year ago

@symfonystation Yes, I don't think php is the problem here. It's rather about devops matters, in which I am completely inept. But I have already sought help, I just need a little more time.

@rgb_leds_are_love @AucT

[–] [email protected] 1 points 1 year ago

If as the link suggests this is from 2018 a lot (!) has changed at least in the JS world and the Python world. Can't speak for the others. Would be nice to see the underlying paper to see how the author defines the measurements, ie whose time is being measured, system (speed), development?