I see plenty of posts talking about a huge influx of new users to lemmy.ml lately. Can we get some numbers about that? How many new users per day are we talking? How does that translate to number of requests per second (or minute) on the frontend?
What kind of hardware is lemmy.ml running on? Is it just a single server? Can lemmy instances be run on a loadbalanced cluster?
I’m really interested to see how efficient and resilient the lemmy software really is, at the moment I am getting the impression that it is buckling under the load of, honestly, not even that many users…
I don’t have access to the data on lemmy.ml. I have a small instance that appears on the joinlemmy site but not in the recommended section, so I can give you some data specific to a small instance.
Not sure if there is a direct way to pull this data, so I just made a little python script that queries the database and plots the number of users registered each day:
Code is under this spoiler tag in case someone wants to check this for their instance too:
spoiler
from subprocess import PIPE, Popen import numpy as np import matplotlib.pyplot as plt from matplotlib.dates import DateFormatter command = 'docker exec POSTGRES_CONTAINER psql -U USER -c "select validator_time from local_user;"' with Popen(command, stdout=PIPE, stderr=None, shell=True) as process: output = process.communicate()[0].decode("utf-8") time_signup = np.array(output.split('\n')[2:-3],dtype='datetime64[D]') first_user = min(time_signup) last_user = max(time_signup) dates = np.arange(first_user,last_user+1) count = [np.sum(time_signup == date) for date in dates] fig, ax = plt.subplots() plt.title('Amount of users registered per day to INSTANCE.TLD') ax.plot(dates,count,c='k',lw=1) myFmt = DateFormatter("%Y-%m-%d") ax.xaxis.set_major_formatter(myFmt) fig.autofmt_xdate() plt.savefig('plot.png',dpi=300)
As to the number of requests per minutes… Hmm, I suppose that I can measure by counting the POST and GET requests in the nginx logs, I will try that and get back to you in a bit.
Hmm, sorry, it turns out that estimating the requests is not something I can do as effortlessly. So I will have to leave it for another time. Hopefully someone else can be more helpful.