I'm looking for a fediverse server that would be able to run on a small arm device. I got about 200mo to spare and max 300mo or ram. Everything I found for now need at least 1gb of ram ^^'

Maybe I'll write an server in C one day ^^'

· · Web · 4 · 4 · 3

@df5t0rw check the #ActivityPub application watchlist. There may be some candidates. I see that #Honk by @tedu is especially created to be lightweight (but I never tried it).

Though under heavy development #GoToSocial by @dumpsterqueer may be applicable too. But I don't know if minimum requirements have been measured.

There may be others.

@humanetech @df5t0rw we got GtS running on a Raspberry Pi Zero W (so, <512mb of ram and 1 cpu). It runs, but it struggles with encoding blurhashes for images, so we still need to do some performance enhancements there to make sure requests don't time out. The issue is CPU rather than ram though -- GtS itself only uses between ~20mb => ~100mb of ram in testing so far (for a single user instance). But the poor little CPU on the Pi Zero struggles :D


It would be tough to write a fediverse server in C, but it would be possible. C is quite bad at handling strings, and string handling is most of what is involved.

@Gabriel Havin Hubzilla on 1GB RAM Raspberry Pi3: showing 287MB used, 480MB cache. PHP memory limit for Hubzilla is 192MB, but can be 128MB (sometimes stream with complex threads did not load with that). That is with stock Raspbian and Postgre without any mem optimisation and some more things running on the device (influx, openvpn).

@michal yep I was a fan of hubzilla... I even built some plugins for it for my instance a while ago. But it's PHP. I worked with PHP for many years and now for my "hobby projects" I just don't want to do any PHP stuff ^^'. So... Yeah I got a pretty stupid raison not to try hubzilla ;)

@dfs yea I came back to C++ modifying something some time ago and I couldnt beleive how low-level it was dealing with all those malloc's and pointers, time consuming. Basically, it does almost nothing for you.

@michal but it's the purity of it. I like C (and not c++) for this: it does exactly what you ask of it; nothing more.

I have re-did many low level function only to understand them for fun and it made me progress a lot in every other language.

Php is "close to c" in term of performance compared to many other languages and still is lightyears from C speed. Same for "go".

So... A C activityPub not dependant of a big "helper stack" would nice to implement ^^'

Sign in to participate in the conversation
Mastodon @ SDF

"I appreciate SDF but it's a general-purpose server and the name doesn't make it obvious that it's about art." - Eugen Rochko