Selfhosted
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:
-
Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.
-
No spam posting.
-
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.
-
Don't duplicate the full text of your blog or github here. Just post the link for folks to click.
-
Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).
-
No trolling.
Resources:
- selfh.st Newsletter and index of selfhosted software and apps
- awesome-selfhosted software
- awesome-sysadmin resources
- Self-Hosted Podcast from Jupiter Broadcasting
Any issues on the community? Report it using the report flag.
Questions? DM the mods!
view the rest of the comments
I'm my experience, nextcloud is quite I/O bound. The performance of your storage device will greatly affect nextcloud performance. But if you're already using SSD and the performance still bad, maybe there are other issues with your setup.
For me, speed isn't the only issue. Everything about nc seems to be cobbled together in the most inconvenient way possible. Updates have always been hit or miss for me - and if you choose to use dockerized versions, you might as well shoot yourself, everything is very slow, even as the only use having it running on a quite capable machine it feels sluggish (not slow, but uncomfortably delayed).
It's a glorified Dropbox clone, why do I need anything more than a rpi1 for that?
It's a PHP app inherited from owncloud so at some point you'll just have to accept it won't be as performant as apps written in compiled languages (and it also inherit owncloud's quirks and other annoyance related to its php-based deployment). But this weakness is actually a strength too, being a php app makes extending its functionality very easy, resulting in a lot of community-developed plugins. Basically a trade-off between performance and features + community plugins availability. If you value performance more and don't need anything beyond file sharing feature, there are plenty of other options right now.
I understand the history, and that may have been an excuse 6 months after the fork, but think about how long nc exists now. And how many features (like migrations) are apparently simply not worked on.
NC is a great example of the current trend of "fuck good design, just throw more silicon at the problem".
I was thinking about this a couple of weeks ago. I'm running nextcloud in a VM - php recompiler, redis, mariadb, plenty of RAM (4GB). I'm spreading about 80GB of data across a few users, but it's dog slow on mass upload. If I wanted to upload 1000 images from my phone, it would hours. I moved those photos to my laptop, which was fast, then tried uploading them to nextcloud via the Ubuntu desktop sync app, and it still took almost 2 hours. Nextcloud is backed by RAID6 storage and benchmarks suggest it's over 300MB/sec write.
I think it has something to do with file transfer overhead (start stop) similar to FTP impacting WebDAV, but that's pure speculation on my part.
I was wondering what it would take to rewrite Nextcloud core functionality in Java and use some kind of different interface than WebDAV, but I've got a lot of irons in the fire at the moment.
2 hours for uploading 1000 photos means it took 7.2s per photo upload. This is very slow, not sure if it's just webdav overhead. Does uploading large files also slow (e.g. way below your raw network speed)?
Could be related to this if you're still on an older version: https://github.com/nextcloud/server/issues/33453
LAN is gigabit, and I can sustain Gb speeds in regular file transfers via mounted nfs shares. There isn't much difference over Wi-Fi (ubiquiti APs). Also running the latest Nc, 27.0.2.1 or whatever it is.