Hey friends. I finally fired nextcloud - and so should you.

edit: wow. reddit banned me for posting a link to my (completely unmonitezed, unproductized) blog in multiple r/selfhosted threads. I bet it’s related to this lemmy link

  • bytepursuits@programming.devOP
    link
    fedilink
    English
    arrow-up
    16
    ·
    edit-2
    1 day ago

    I’m sorry - I understand it’s free, but this is how I feel:

    Nextcloud stopped being a fast, reliable file sync tool a long time ago (I mean - was it ever? it’s free thats why most people use it).
    It’s become a bloated “groupware suite” full of useless Talk, Groupware, AI, and half-finished apps…
    while the core sync still chokes on large folders and locks files like it’s 2015.

    The Core Problem PHP-FPM and mod_php are ancient architectures - every request spins up, runs, and dies. No persistent memory, no connection reuse, and no async I/O, no coroutines, slow as molasses non scalable backend held together only with redis.
    Result: slow UI, slow sync, race conditions, and constant errors. Tons of open GitHub issues about sync bugs, upgrades, and no action from nextcloud. I’m sick of it. I’m done with it and I will be very direct about it.

    Comments and issues and proposed classical PHP solutions are shocking:

    https://docs.nextcloud.com/server/latest/admin_manual/configuration_files/big_file_upload_configuration.html#configuring-your-web-server Nextcloud suggests you up its ram to 16Gb. 16Gb Carl!

    php_value upload_max_filesize 16G
    php_value post_max_size 16G
    

    What about 17Gb files Nextcloud? nogo? don’t use nextcloud then? Have you ever heard of TUS?

    opencloud can run circles around nextcloud now - it is written in GO, much better architecturally, long running, uses connection pooling, does not need redis to survive.

    What they (nextcloud) should do: Hyperf + Swoole
    Swoole turns PHP into a high-performance async server - persistent memory, connection pooling, non-blocking I/O.
    Hyperf+swoole - can rival GOlang. Hyperf builds on it: native WebSockets, coroutine HTTP, and microservice-ready architecture. You get live sync, push notifications, and massive concurrency with a fraction of the resource cost. Add TUS (resumable uploads) and you finally have reliable file transfer on bad connections.

    I don’t want bloat. I want reliable sync that just works. I’d rather self-host a lean, fast sync app than manage ten half-integrated apps. They need to switch to Hyperf + Swoole - and bring Dropbox-level sync to self-hosting without the pain.

    Nextcloud could fix its image by: Refocusing on sync reliability and performance. Moving core services to a persistent, async engine (Swoole / hyperf, etc). Making “Nextcloud Core” modular - separate entirely from the groupware/ai/talk - I don’t fucking need it. Until then, those who care about speed, concurrency, and modern PHP should look beyond the old PHP-FPM world.

    Im not the only person - people are sick of this inaction:

    • scrchngwsl@feddit.uk
      link
      fedilink
      English
      arrow-up
      2
      ·
      3 hours ago

      This is a good summary. At this point I am too deeply invested in to NextCloud to switch to a different thing, as I’ve switched my whole family off OneDrive now and I just cba to go through that again. I can handle it being dogshit and I’ve got used to it’s bugs - a form of stockholm syndrome. I suspect a lot of people are similar to me - we use NextCloud because it’s the biggest name and has been around forever, not because it’s what we want.

      Anyway, performance is clearly a problem, and has been since I started on OwnCloud 10 years ago. I wish the devs would do something to improve it but again, having used it for 10 years, I know that they won’t. When it finally blows up I’ll move to something else I guess.