You can look into this or fail2ban to get functional limiters running up and running quickly. If you go with crowdsec, i would suggest to use the cs-firewall-bouncer which will drop bots at the firewall level.
2012 - Anders Hejlsberg discovers some mushrooms growing from the base of his bathtub. After consuming them, he has a revelation that C# needs more Javascript. He invents Typescript. Typescript is a relatively verbose, garbage collected, class based, statically typed, single dispatch, object oriented language with single implementation inheritance and multiple interface inheritance. Microsoft loudly heralds Typescript's novelty.
Extra fun fact for comment reading friends: This post is the origin of the meme "Monads are just monoids in the category of endofunctors. What's the problem?" Source
This makes me sad because it's not available in my country "for logistical reasons", and it seems to be just what I wanted
Hear me out, but I believe that using Rust holds Lemmy back.
Writing Rust code is difficult, and fairly time consuming. It's difficult to get right, and as other commenters have noted, Lemmy code seems to do a lot of things for the "hype factor" (like Websockets). It's difficult to find enough devs as well.
The article about Discord switching to Rust from Go in the top comment is misleading in my opinion. They totally rearchitected their service while rewriting it, so it's an apples to oranges comparision.
Theme's looking great <3
I work on nginx cache modules for a CDN provider.
While websockets can be proxied, they're impractical to cache. There are no turn key solutions for this that I'm aware of, but an interesting approach might be to build something on top of NChan with some custom logic in ngx_lua.
I agree with you that web proxy cache's aren't the silver bullet solution. They need to be part of a more holistic approach, which should start with optimizing the database queries.
Caching with auth is possible, but it's a whole can of worms that should be a last resort, not a first one.
I came today from Reddit. Think i'm here for good. This feels magical.
Revolution is in the air?
I've been using ChatGPT at work quite a bit now. Some of the things I've used it for are:
- Writing a shell script that scrapes some information about code modules and shows them neatly
- Minor automation scripts that setup and make my day to day docker workflow easy
- Writing random regex, sql, lua pattern matching functions
- It turned out to be surprisingly good at creating code examples for certain undocumented APIs (kong.cache, kong.worker_events, kong.cluster_events) in Kong API Gateway.
- Copy pasting a rough python automation script, converting it into Go, and adding it in the application itself.
I still don't feel comfortable using it for anything big.
Hello. Appreciate your question. I think that this is a good use case for the Repository Pattern.
In your case, this might look something like this:
You can consult the Design Patterns / Gang of Four book for more details
Off topic, but personally I don't feel you should worry too much about having to change the database in the future. I have rarely seen it happen in my career.