I hear people say that about Nextcloud often, which is part of why I haven’t bothered setting it up yet.

Is there a technical reason why it’s slow and clunky? Any problematic choices with how it was built?

  • nbailey@lemmy.ca
    link
    fedilink
    English
    arrow-up
    56
    arrow-down
    2
    ·
    8 months ago

    It needs some tweaks to be snappy. The defaults are really bad.

    • change database from SQLite to a proper database like MySQL or Postgres, and configure the database server to use your memory fully
    • increase the PHP memory limit from the default (128M on many distros) to >1G, the more the better
    • install APCu in-memory cache for PHP
    • add Redis as additional cache
    • turn off the antivirus extension, if installed (ClamAV is useless)
    • use http/2 on Apache/nginx to increase performance with multiple connections

    https://docbot.onetwoseven.one/services/nextcloud/

  • Strit@lemmy.linuxuserspace.show
    link
    fedilink
    English
    arrow-up
    26
    arrow-down
    3
    ·
    8 months ago

    Likely because it’s mainly written in PHP and the default database is SQLite, which is not great for large deployments.

    But I use Nextcloud daily on a low end machine and I don’t think it’s that bad.

      • douglasg14b@lemmy.world
        link
        fedilink
        English
        arrow-up
        3
        ·
        8 months ago

        PHP for sure can have a negative effect depending on how they are handling their data access through.

        The application code itself running on PHP probably isn’t a problem but the influence that PHP may have over your data access patterns can be a source of significant performance problems.

        • TCB13@lemmy.world
          link
          fedilink
          English
          arrow-up
          3
          arrow-down
          6
          ·
          edit-2
          8 months ago

          but the influence that PHP may have over your data access patterns can be a source of significant performance problems.

          Let me rephrase that for you: the influence that poorly written PHP code, an utter and total disregard for good software development practices and the general ineptitude shown by the NC developers have over your data access patterns is the source of significant performance problems. We also have to consider all the client side issues, poor decisions and a general lack of any testing.

          Fixed :)

    • TCB13@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      arrow-down
      6
      ·
      8 months ago

      Likely because it’s mainly written in PHP and the default database is SQLite

      Maybe the issue isn’t the technologies but rather the complete and utter ineptitude of NC’s developers and bullshit decisions their business team makes. Every tool is a great tool if you know how to use it properly.

  • MangoPenguin@lemmy.blahaj.zone
    link
    fedilink
    English
    arrow-up
    21
    ·
    edit-2
    8 months ago

    I assume it’s just not built to be fast, because it’s still slow even with MySQL, Redis, high PHP memory limits, a fast CPU and NVMe storage, and so on.

    Last time I tested it I had a load time of 1-2 seconds just to bring up the files interface, it feels laggy no matter what. And syncing a folder with ~50k files and 40GB or so in size takes a very long time compared to Syncthing or just syncing over SMB.

    • plasticcheese@lemmy.one
      link
      fedilink
      English
      arrow-up
      6
      ·
      8 months ago

      Yep. When I first set up my instance, I couldn’t believe how slow it was. I set up redis using the Nextcloud documentation and its like butter now.

  • GravitySpoiled
    link
    fedilink
    English
    arrow-up
    20
    arrow-down
    9
    ·
    8 months ago

    Nextcloud is slow and clunky if you run it on a banana.

    Run it on a “normal” server and everything is smooth.

    • muelltonne@feddit.de
      link
      fedilink
      English
      arrow-up
      11
      arrow-down
      1
      ·
      8 months ago

      Yeah, and don’t pretend that comparable software like Google Drive, Sharepoint or Dropbox is faster.

      • Björn Tantau@swg-empire.de
        link
        fedilink
        English
        arrow-up
        5
        arrow-down
        4
        ·
        8 months ago

        I compare it to a samba or (s)ftp share. I wish it was similar in speed and ease of use.

        It’s become better since I migrated over to PostgreSQL. But it’s still not great.

          • Björn Tantau@swg-empire.de
            link
            fedilink
            English
            arrow-up
            5
            arrow-down
            1
            ·
            8 months ago

            I’d argue that the primary function of Nextcloud is to serve files. Of course the other services lack other stuff, which is why I’m still using Nextcloud. But I still wish its performance was similar to pure file servers.

            • cron@feddit.de
              link
              fedilink
              English
              arrow-up
              8
              ·
              8 months ago

              I think the file server analogy isn’t really fair. Nextcloud is better compared to Microsoft 365 or Google GSuite.

              All of these offer file storage, but also much more.

              • Björn Tantau@swg-empire.de
                link
                fedilink
                English
                arrow-up
                3
                arrow-down
                1
                ·
                8 months ago

                Sure. But serving files is the core functionality of Nextcloud. You can remove every other functionality. But the files app cannot be removed.

                • acockworkorange@mander.xyz
                  link
                  fedilink
                  English
                  arrow-up
                  1
                  arrow-down
                  1
                  ·
                  8 months ago

                  I disagree. The extras and modularity are the core functionality. If you’re just serving files, there’s SFTP, WebDAV, etc.

        • dust_accelerator@discuss.tchncs.de
          link
          fedilink
          English
          arrow-up
          3
          ·
          8 months ago

          PostgreSQL is definitely a boost to performance, especially if you offload the DB to a dedicated server (depending on load, can even be a cluster)

          Nevertheless, it probably has much to do with how it’s deployed and how many proxies are in front of it, and/or VPN. If you have large numbers of containers and small CPU/low memory hardware, and either running everything on one machine or have some other limitations, it’ll be slow.

          Admittedly, I’m not very familiar with the codebase, but I feel Apache isn’t improving the speed either. Not exactly sure how PHP is nowadays with concurrency and async, but generally a microservice type architecture is nice because you can add more workers/instances wherever a bottleneck emerges.

      • TCB13@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        arrow-down
        2
        ·
        8 months ago

        Dropbox is faster.

        Dropbox is A LOT faster than NC ever was. But if you want to talk about speeds and reliability then use Synching. Add FileBrowser if you want to have a WebUI on a central “server” to access all your files and you’ll be 100x better than the garbage that NC offers.

    • jr52@lemmy.world
      link
      fedilink
      English
      arrow-up
      3
      ·
      8 months ago

      I tried running nextcloud on an allwinner RiscV chip and it was dead slow lol

    • rambos@lemm.ee
      link
      fedilink
      English
      arrow-up
      1
      ·
      8 months ago

      Im running it on celeron g3930 and its great. I did remove most extensions (this was the trick I believe) and using MySQL. I have only 2 users tho

    • TCB13@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      arrow-down
      1
      ·
      edit-2
      8 months ago

      Run it on a “normal” server and everything is smooth.

      Sure until you try with a high end 12 core CPU on NVMe storage all kinds of caching, redis etc. and you find you it doesn’t perform particularly better.

      • GravitySpoiled
        link
        fedilink
        English
        arrow-up
        2
        ·
        8 months ago

        I’m no hardware person but I don’t have redis or caching enabled and it works fine

      • Possibly linux@lemmy.zip
        link
        fedilink
        English
        arrow-up
        1
        ·
        8 months ago

        It runs fine in a VM with a few cores, 4gb of ram and Sata SSDs

        The entire Nextcloud folder is on a network share as well.

  • sardaukar@lemmy.world
    link
    fedilink
    English
    arrow-up
    8
    ·
    8 months ago

    I keep trying it every couple of years to see if it works better, but nah. Even with MySQL/PG + Redis, it’s still slow and clunky. Maybe in 2026

  • Sibbo@sopuli.xyz
    link
    fedilink
    English
    arrow-up
    8
    arrow-down
    1
    ·
    8 months ago

    If you want fast file sync between computers, use syncthing

    • TCB13@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      arrow-down
      1
      ·
      edit-2
      8 months ago

      * fast and reliable. Add FileBrowser if you want to have a WebUI on a central “server” to access all your files and you’ll be 100x better than the garbage that NC offers.

  • Matt The Horwood@lemmy.horwood.cloud
    link
    fedilink
    English
    arrow-up
    5
    ·
    8 months ago

    I have been running nextcloud for some time, it was running very quickly. But the v28 update seems to have broke some of the extra apps, like groupfolders.

    That said, it’s very much a system that needs good hardware to run it well

  • Decronym@lemmy.decronym.xyzB
    link
    fedilink
    English
    arrow-up
    4
    ·
    edit-2
    6 months ago

    Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I’ve seen in this thread:

    Fewer Letters More Letters
    Git Popular version control system, primarily for code
    HTTP Hypertext Transfer Protocol, the Web
    NVMe Non-Volatile Memory Express interface for mass storage
    SSD Solid State Drive mass storage
    SSO Single Sign-On
    VPN Virtual Private Network
    nginx Popular HTTP server

    6 acronyms in this thread; the most compressed thread commented on today has 4 acronyms.

    [Thread #580 for this sub, first seen 7th Mar 2024, 12:55] [FAQ] [Full list] [Contact] [Source code]

  • BrightCandle@lemmy.world
    link
    fedilink
    English
    arrow-up
    4
    ·
    8 months ago

    It has been slowly improving. It used to be a lot worse but I have a lot less issues with it now than I did before all the changes. Its not the fastest best way to do anything, there are better calendar, file sync, email etc etc applications out there in every category that run better but its also quite an easy way to make a lot of things happen.

  • ikidd@lemmy.world
    link
    fedilink
    English
    arrow-up
    3
    ·
    8 months ago

    Nextcloud is fine. Use the All-in-One master container, it’s faster than any other way I’ve installed it. I’ve tried every method from bare metal to docker to NextcloudPi and it’s the fastest and easiest to maintain.

  • MTK@lemmy.world
    link
    fedilink
    English
    arrow-up
    2
    ·
    8 months ago

    I run the official docker with mariadb and it was never an issue for me

  • TCB13@lemmy.world
    link
    fedilink
    English
    arrow-up
    5
    arrow-down
    9
    ·
    edit-2
    8 months ago

    What’s wrong with Nextcloud, and why is it slow/clunky?

    Yes it’s a pile of shit. Nextcloud is garbage, very bad usability, more reasons and issues listed here: https://lemmy.world/comment/1571886 and https://lemmy.world/comment/346174

    Is there a technical reason why it’s slow and clunky? Any problematic choices with how it was built?

    Yes, like every single technical decision and line of code they’ve ever made. https://lemmy.world/comment/5490189

    There’s software that while good intended is simply garbage and NextCloud is a good example. They constantly market themselves as the self-hosted alternative to MS Office 365 / Google yet they never deliver.

    • Possibly linux@lemmy.zip
      link
      fedilink
      English
      arrow-up
      5
      ·
      edit-2
      8 months ago

      Just because it didn’t work for you doesn’t make it “shit”. I’ve been running Nextcloud for a file and it works pretty good.

      • TCB13@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        8 months ago

        I’ve posted screenshots and a lot of detailed information of it failing. It’s just not a question of personal preference, it’s most like it has old bugs that aren’t ever fixed and things keep piling.

    • Lem453@lemmy.ca
      link
      fedilink
      English
      arrow-up
      4
      ·
      8 months ago

      A previous thread put it best. It always feels 75% complete.

      I’ve been using it since back when it was owncloud. It never felt stable.

      Finally went with seafile and it’s super fast, stable and reliable.

      • TCB13@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        8 months ago

        Seafile, that’s a name I haven’t heard in a very long time. How does that work in terms of self-hosting limitations, mobile clients and sync? Do you have any experience with Synching for instance? How does it compare performance wise?

        • Lem453@lemmy.ca
          link
          fedilink
          English
          arrow-up
          4
          ·
          8 months ago

          Seafile is extremely fast. I don’t use syncthing so cant compare.

          I use SSO with authentik and works very well with multiple users.

          Android app doesn’t have 2 way sync if you need that (nextcloud doesn’t either).

          There are no limitations with self hosted as far as I know. I just wanted a simple sync all that works with sso for multiple users and it works very well.

          • TCB13@lemmy.world
            link
            fedilink
            English
            arrow-up
            2
            ·
            8 months ago

            Great to know, last time I tried it I was running on a very weak ARM platform and while it worked way better than NC I was impressed with the performance. Thanks.

        • ogarcia@lemmy.world
          link
          fedilink
          English
          arrow-up
          1
          ·
          8 months ago

          Synching is currently the fastest and lightest you will find, but the concept is different from Seafile or Nextcloud. With Synching there is no central server, you have resources (folders) shared between nodes on a peer-to-peer basis. This has several advantages, the most obvious one is that if a node goes down the rest continues working, but also that if a file is available in two or more nodes when a new node enters it will download that file from all the nodes in which it is available. As a disadvantage we could say that there is no web server where to see the shared files, so you will not be able to enter a URL with username and password and browse the files and upload or download. You will not be able to share files with third parties through a URL either.

          • TCB13@lemmy.world
            link
            fedilink
            English
            arrow-up
            2
            arrow-down
            1
            ·
            8 months ago

            I know exactly how Synching works, the point is not the p2p nature of it, the point is that Nextcloud’s sync performance and reliability isn’t even comparable because the desktop clients, sync algorithm and server side tech (PHP) won’t ever be as performant at dealing with files as Go is.

            The way Nextcloud implemented sync is totally their decision and fault. Syncthing can be used in a more “client > server” architecture and there are professional deployments of that provided by Kastelo for enterprise customers with SSO integrations, web interfaces, user management and whatnot.

            Nextcloud could’ve just implemented all their web UI and then rely on the Syncthing code for the desktop / mobile clients sync. Without even changing Syncthing’s code, one way to achieve this would be launch a single Syncthing instance per NC user and then build a GUI around that that would communicate with the NC API do handle key exchanges with the core Syncthing process. Then add a few share options in the context menu and done.

            This situation illustrates very clearly the issue with Nextcloud development and their decisions - they could’ve just leveraged the great engine that Syncthing has a backend for sync but instead, as stubborn as they are, they came up with an half assed-solution that in true Nextcloud fashion never delivers as promised.

              • TCB13@lemmy.world
                link
                fedilink
                English
                arrow-up
                1
                ·
                8 months ago

                You may want to read my post again as there’s currently no user management in Syncthing. I just said that Kastelo provides a payed and very proprietary solution with user management for enterprise customers.

                Anyways for anyone who wants to code a solution like that it isn’t impossible, I proceeded to outline what Kastelo does on their solution and what Netcloud cloud’ve done.–

      • TCB13@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        8 months ago

        There’s a lot more complains, besides the Mail “app” is a big advertised features of it and is developed by the core team.