this post was submitted on 01 Dec 2023
59 points (95.4% liked)

Selfhosted

40041 readers
1273 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 1 year ago
MODERATORS
 

Hey there!

I just wanted to share a bit about my experience as a hobbyist and self-hosting enthusiast. While I may not be the most educated on the topic, I've been able to self-host my favorite services to avoid relying on big companies like Google and Amazon.

A few years ago, I started my self-hosting journey with Nextcloud, and it completely blew my mind. Finally, I didn't have to rely on Google Drive anymore!

However, I quickly realized that using a Raspberry Pi made things a bit sluggish. I tried upgrading to a more powerful machine. Still slow. I then tried with an i5-4460, but it was still slow and buggy. I even tried an i3-10100, and it was still a bit of a pain to use. It seems like many others feel the same frustration, so I know I'm not alone. I often wonder how some other people claim they have no issues with Nextcloud, but hey, good for them!

Because of the tinkering it seems to need, I feel like I don't have enough time and knowledge to make Nextcloud work as smoothly as I'd like, which defeats the purpose of self-hosting it.

That's why I've been exploring other options. I gave Seafile a shot, but couldn't figure out how to solve a "CSRF verification failed" error. Projectsend and Xbackbone are great, but they don't quite match what I'm looking for. I also tried Cloudreve, but I wasn't a fan of its sorting philosophy. I did find Picoshare, which I stuck with, but for a totally different purpose.

Then, I tried ownCloud for the first time. Wow, it was fast! Uploading an 8GB folder took just 3 minutes compared to the 25 minutes it took with Nextcloud. Plus, everything was lightning quick on the same machine. I really loved using it. Unfortunately, there's currently a vulnerability affecting it, which led me to uninstall it.

I also gave OCIS a try, and it felt even faster. The interface was smooth and fluid, it was truly impressive. However, with the recent news of it becoming part of Kiteworks, I'm a bit unsure about its future.

I can't help but wonder why so many people have been raving about Nextcloud all these years when ownCloud performs so well right out of the box. I'd love to hear about your experience and the services you use. Share your thoughts!

you are viewing a single comment's thread
view the rest of the comments
[–] minnix@lemux.minnix.dev 7 points 11 months ago (4 children)

Nextcloud is very quick IF you don't mind applying extensive PHP and web server optimizations. This takes time and may have to be redone after upgrades depending on what changes. This is why I don't really recommend it to those just looking to self host a simple file server.

[–] Tiritibambix@lemmy.ml 6 points 11 months ago (1 children)

IF you don’t mind applying extensive PHP and web server optimizations

Yeah, that's exactly what I'm struggling with here. It's a bit counterintuitive for newcomers and not really friendly for beginners.

I'm just wondering, what is your process for those optimizations? Did you happen to follow any specific documentation or resources?

[–] minnix@lemux.minnix.dev 3 points 11 months ago (1 children)

The two main sources I used for initial setup was the nextcloud tuning guide and Carsten Rieger's guides which are always changing, here is the current one (in German but easy to translate).

[–] Tiritibambix@lemmy.ml 2 points 11 months ago* (last edited 11 months ago)
[–] mesamunefire@lemmy.world 5 points 11 months ago

I messed that up soooo many times it's not funny. I eventually gave up after spending two weekends on setup and just went with vultr and a turnkey solution.

[–] MangoPenguin@lemmy.blahaj.zone 3 points 11 months ago

Even then it's probably still slower than everything else is out of the box.

[–] TCB13@lemmy.world -1 points 11 months ago* (last edited 11 months ago) (1 children)

AMD Ryzen 7 5700X + 32 GB of RAM: https://lemmy.world/comment/346174

Just no. What do you consider "applying extensive PHP and web server optimizations" tho? Even allowing PHP to use 10GB of RAM and infinite input time doesn't get the job done.

[–] u_tamtam@programming.dev 0 points 11 months ago (1 children)

That might tell us more about how badly your php process manager and/or db connection handler is set up, seriously. I run nextcloud "natively" (no docker, no nonsense) on hardware that was modest 15y ago (Intel Atom/2GB RAM), and it's pretty good.

[–] TCB13@lemmy.world -2 points 11 months ago* (last edited 11 months ago) (1 children)

That might tell us more about how badly your php process manager and/or db connection handler is set up, seriously. I run nextcloud “natively”

Yeah sure. I'm not the only complaining as you can read on this post and I've tried it in multiple ways, multiple configurations from the defaults to the absurd abnormalities like the one you commended and it doesn't make much difference. Unfortunately NextCloud is garbage, get over it.

Also your comment tells me that you're full of shit, because you're implying that both a generic Docker setup and mines are all shit. You can't have it both ways. What are you suggesting? That the NC guys made a bad job out in their Docker images?

n hardware that was modest 15y ago (Intel Atom/2GB RAM), and it’s pretty good.

How many users? How much data?

Btw do you use the webmail at all or are you about to tell me that these screenshots are hallucinations?

[–] u_tamtam@programming.dev 3 points 11 months ago (1 children)

Yeah sure. I’m not the only complaining as you can read on this post

I'm not saying that you are the only one complaining, but from what I can tell, most people in your situation are deploying their instance from "cookie-cutter" docker images. In practice, it often means that the same machine end-up hosting multiple web servers, database servers, application servers, etc etc. And those servers are developed around heavily-optimized event loops that assume direct access to the full server resources. So if you want predictable and good performance, there's no way around tweaking some knobs and be very mindful of how each and every service is deployed alongside the next one. And of course, you can't trust someone else to know better than yourself what's running in your box (not even the nextcloud developers) and which service should get preference over what under heavy load.

Nextcloud has that against itself that it uses advanced php features and large objects that need to be cached at different layers. That makes it a slightly more complex app than your go-to php CRM, but it's not unheard of either (you'd be at the same spot hosting a large mediawiki or wordpress).

Does that make it garbage? Well, you are entitled to your own opinion, of course.

Also your comment tells me that you’re full of shit, because you’re implying that both a generic Docker setup and mines are all shit. You can’t have it both ways. What are you suggesting? That the NC guys made a bad job out in their Docker images?

Do I deserve the insult? I answered the docker part, though. In general, I'd say that you are better-off not using docker in PROD , unless you have the time and energy to spend rebuilding images to make them fit your pre-existing deployment (what nobody does), and then invest the time in fine-tuning through multiple containers (which very much goes against the "fire and forget" mindset of most docker users).

How many users? How much data?

About a dozen, 2TB, upwards 700k files

Btw do you use the webmail at all or are you about to tell me that these screenshots are hallucinations?

I'm definitely not using the webmail. If you have performance issues, you should rather start with just the "core" (i.e. files) and add on incrementally.

And again, I'm not saying that nextcloud doesn't deserve being optimized, or somehow be made more foolprof. I too went through a phase of "that can't be real, this cannot be that slow" and walked my way out of it.

[–] TCB13@lemmy.world 1 points 11 months ago (1 children)

Nextcloud has that against itself that it uses advanced php features and large objects that need to be cached at different layers. That makes it a slightly more complex app than your go-to php CRM, but it’s not unheard of either (you’d be at the same spot hosting a large mediawiki or wordpress).

The thing is that I have experience with other complex or high usage PHP applications and I know how to optimize things. What I see in NC is poorly structured code, warnings and erros thrown around left and right. The OP also said that ownCloud gave him a much better experience out of the box, and that's still a "complex" PHP application.

It doesn't make sense some stuff like this to happen:

NC webmail is unusable. We have to pretend it doesn’t exist. Even with a completely empty IMAP server it takes 30 seconds to load. I don’t know how it can be slow like that, they cache every single message in the database. Roundcube is 1000x faster and has no cache at all. Can’t they just peek the source code? https://lemmy.world/comment/5747030

Or the screenshots I showed before.

[–] u_tamtam@programming.dev 2 points 11 months ago (1 children)

The thing is that I have experience with other complex or high usage PHP applications and I know how to optimize things. What I see in NC is poorly structured code, warnings and erros thrown around left and right.

Well, on my instance, logs are pretty quiet and I am not a PHP developer to form an opinion on the overall architecture. But if you take the time to write down what you feel is wrong with the nextcloud codebase, I'm pretty sure many people (and me first) will read it with interest and perhaps even do something about it (typically the kind of "HN frontpage" content, if it's well written).

The OP also said that ownCloud gave him a much better experience out of the box, and that’s still a “complex” PHP application.

Last I heard of ownCloud, people were saying that it had been rewritten in go or something similar. Funny bit of history, nextcloud forked off of owncloud, got a ton of mindshare in the early days, and quickly became the better/faster of the two (perf was one compelling reason for me to migrate back then). I wouldn't mind NC following suit (in the end, we benefit from this type of competition).

NC webmail is unusable

I don't plan on ever using it, but thanks for the heads-up. That said, if you feel that roundcube performs better, it happens that someone has packaged it for NC, so you should be able to use that instead of the troublemaking client.

[–] TCB13@lemmy.world 1 points 11 months ago (1 children)

Last I heard of ownCloud, people were saying that it had been rewritten in go or something similar. Funny bit of history, nextcloud forked off of owncloud,

The Go rewrite is another version, not what the OP is using.

, it happens that someone has packaged it for NC, so you should be able to use that instead of the troublemaking client.

That doesn't make it all good, you lose the integration with other NC features.

[–] u_tamtam@programming.dev 1 points 11 months ago (1 children)

Interesting. Were the apps/features installed comparable between the OC and NC instances? I can't even find an "email" equivalent app for owncloud from their marketplace.
I don't want to sound like I'm coming in defence of NC, but I'd be curious to find an as factual as possible comparison between "bare-bones NC" vs "bare-bones OC".

[–] TCB13@lemmy.world 1 points 11 months ago

“bare-bones OC” sync seems better.