this post was submitted on 03 Mar 2024
112 points (94.4% liked)

Selfhosted

40133 readers
579 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
112
submitted 8 months ago* (last edited 8 months ago) by [email protected] to c/[email protected]
 

My Nextcloud has always been sluggish — navigating and interacting isn't snappy/responsive, changing between apps is very slow, loading tasks is horrible, etc. I'm curious what the experience is like for other people. I'd also be curious to know how you have your Nextcloud set up (install method, server hardware, any other relevent special configs, etc.). Mine is essentially just a default install of Nextcloud Snap.

Edit (2024-03-03T09:00Z): I should clarify that I am specifically talking about the web interface and not general file sync capabilites. Specifically, I notice the sluggishness the most when interacting with the calendar, and tasks.

top 50 comments
sorted by: hot top controversial new old
[–] [email protected] 2 points 8 months ago

I use it on cheap vps since ~4yrs and work "well" but I've never had a single major update that didn't have an issue on my LXC/Alpine container 😒 One moment it's the packages name that have changed, one time it's PHP version, another it's a config, another is a addon, last time that was opcache, ... and I'm a bit tired of having to spend hours each time doing maintenance of it.

I really think I'm going to go back to something simpler but more solid like an SSHFS or similar.

[–] [email protected] 1 points 8 months ago

I run Nextcloud on an old laptop (i5-8500h) and tbh I find it super fast and responsive. I’ve barely done any tinkering or customization

[–] [email protected] 5 points 8 months ago

I've shit-talk NC so much on here and other forums but for some reason kept feeling compelled to try to make it work. I've tried a few of the Community Docker templates available on Unraid "store" as well as AIO. I've had issues with all of them. Then gave NextcloudPi a try on a spare Pi 4 (installed a SSD as boot instead of microSD) and it works much better. It's still much slower than I think it should be, but this version is far and away more responsive than the others.

Seafile is a beast of an app that syncs and performs incredibly fast. Some folks won't use it due to the git-like chunks it parses your data into on the server end (this is what accounts for the speed from what I've read). I understand the concerns in that regard, but I still like it and I have my own way to mitigate that concern.

[–] [email protected] 2 points 8 months ago (1 children)

Use the AIO. Its much faster than any other way I've had it set up and I've used NC for years. Easy to update, full featured, supported.

And anyone that tells you to use Own cloud instead doesn't have a clue.

[–] [email protected] 3 points 8 months ago (1 children)

An issue I have with AIO is I can't use an internal IP address, and I'm required to have a domain or revese proxy.

OwnCloud for now, NC for the manual install.

[–] [email protected] 1 points 8 months ago* (last edited 8 months ago) (1 children)

What do you mean no internal IP? I can access the instance on my local network via RPI address no problem.

EDIT: Realized I didn't use AIO. Sorry.

[–] [email protected] 1 points 8 months ago (1 children)
[–] [email protected] 2 points 8 months ago

Ooooh, I just checked and I am indeed not running the AIO. Must be a new thing, and I though I had it because I didn't set up much, but I really just used a premare docker-compose.yml, which is why I didn't remember any advanced setup. It still uses multiple containers.

I stand corrected.

[–] [email protected] 6 points 8 months ago (1 children)

@Kalcifer @selfhosted it's quite slow for me. AIO docker setup

It was way worse when I tried the snap tho

[–] [email protected] 1 points 8 months ago

As long as it's faster than the snap, it's worth it to me 😜

[–] [email protected] 7 points 8 months ago* (last edited 8 months ago) (1 children)

mine was really sluggish for a long time, then I saw someone in here explaining their similar issue and their fix. I don't have the post link, but it was related to DNS settings. Basically for some reason using my pihole dns made only nextcloud sluggish, the fix suggestion was to use 1.1.1.1, which worked. Now, it is a pretty fast nextcloud.

[–] [email protected] 3 points 8 months ago (1 children)

So on your Nextcloud server you use an external DNS and it greatly sped up you nextcloud? Because I noticed a few years back mine got slow and I cannot figure out why. It was about the time I enforced pihole dns with pfsense. I might need to try this.

[–] [email protected] 2 points 8 months ago (1 children)

That would make sense if the cause is some looping from hanging DNS lookups. Someone should (and likely has) notified the devs about this.

Another possible solution, from https://help.nextcloud.com/t/server-hangs-and-then-is-fine-for-a-bit-then-hangs-again/153917/16

[–] [email protected] 2 points 8 months ago

I'm going to have to give this a shot tonight, need to make a pfsense rule to allow the server to get out and then change its DNS. Regarding php, my current config is the following because I have over 64gigs of ram and went through great length to get Nextcloud to cache MORE into ram:

pm.max_requests = 50000 #set higher, the process is recyled after 50k calls to prevent memory leaks
pm.max_children = 1000
pm.start_servers = 60
pm.min_spare_servers = 30
pm.max_spare_servers = 120
[–] [email protected] 1 points 8 months ago

Overall good. The only slowness is right after login. After it loads everything it's pretty responsive. Using the snap version (I know, snap bad. But in this case it was the only way I got it going.).

Self updates,.get email notifications when it updateab

[–] [email protected] 4 points 8 months ago

I've never experienced slowness and I'm accessing it from behind two proxies and a VPN. Can you share some information about your setup?

[–] [email protected] 2 points 8 months ago

Quite fast.

KVM/libvirt VM with 4GB RAM and 4vCores shared with a dozen other services, storage is not the fastest (qcow2-backed disks on a ext4 partition inside a LUKS volume on a 5400RPM hard drive... I might move it so a SSD sometime soon) so features highly dependent on disk I/O (thumbnailing) are sometimes sluggish. There is an occasional slowdown, I suppose caused by APCu caches periodically being dropped, but once a page is loaded and the cache is warmed up, it becomes fast again.

Standard apache + php-fpm + postgresql setup as described in the Nextcloud official documentation, automated through this ansible role

[–] [email protected] 1 points 8 months ago (1 children)

I stopped using it because it has an extremely complex protocol, with very large bloat that increases with the number of files, and incredibly sensitive to latency.

When I stopped syncing directories because they would take days to upload and started compressing them so they would finish in 10 minutes, I decided it had to go. (Oh, and it's extremely sensitive to network problems too.)

[–] [email protected] 3 points 8 months ago

I still use Nextcloud for syncing documents and other basic stuff that is relatively simple. But I started getting glacial sync times consuming large amounts of CPU and running into lots of conflicts as more and more got added. For higher performance, more demanding sync tasks involving huge numbers of files, large file sizes, and rapid changes, I've started using Syncthing and am much, much happier with it. Nextcloud sync seems to be sort of a jack of all trades, master of none, kind of thing. Whereas Syncthing is a one trick pony that does that trick very, very well.

[–] [email protected] 2 points 8 months ago* (last edited 8 months ago)

You've told us nothing about your hardware.

I've been running nextcloud for some time with this setup:

KVM virtual machine with 4 cores / 8 GiB RAM
docker image: `nextcloud:28.0.2-apache` with db: `mariadb:11.1`

The UI has never been what one would call... "fast". Especially on first load of a page or directory. It's been adequate for me though. Once I click around a bit it caches enough things to feel fairly responsive. I also mount /var/lib/nextcloud off a network share so I'm sure that hits my performance some as well.

Nextcloud leans on the database a lot so be sure to have a local and quick storage for it (no - don't run it on your raspberry pi). There are also cleanup cron jobs and indexes that need to be updated when doing upgrades that help performance as well.

[–] [email protected] 1 points 8 months ago

No problems here, running the official helm chart

[–] [email protected] 2 points 8 months ago (1 children)

I am very happy with mine and have only ever had one hiccup during updating that was due to my Dockerfile removing one dependency to many. I've run it bare metal (apache, mariadb) as well as containerized (derived custom image, traefik, mariadb). Both were okay in speed after applying all steps from the documentation.

Having the database on your fastest drive is definitely very important. Whenever I look at htop while making big copies or moves, it's always mariadb that's shuffling stuff around.

In my opinion there are 2 things that make nextcloud (appear) slow:

  1. Managing the ton of metadata in the db that is used by nextcloud to provide the enhanced functionality

  2. It is/was a webpage rendered mostly on the server.

The first issue is hard to tackle, because it is intrinsic and also has different optimums for different deployment scales. Optimizing databases is beyond my skillset and therefore I stick to the recommendations.

The second issue is slowly being worked around, because many applications on nextcloud now resemble SPAs, that are highly interactive and are rendered by your browser. That reduces page reloads and makes it feel more smooth.

All that said, I barely use the webinterface, because I rarely use the collaboration features. If I have to create a share I usually do that on the app because that's where I send the link to people. Most of my usecase is just syncing files, calendars and contacts.

[–] [email protected] -3 points 8 months ago

Containers run on "bare metal"...

load more comments
view more: next ›