If you are running big applications on top of PostgreSQL or having a lot of queries your performance might be impacted. By default the default PostgreSQL configuration is to say the least, less than ideal. Same is true for MariaDB but that is out of scope now.

Performance fine tuning your server configuration is key for better overall improvements and making the best use of your hardware! Increasing several key configuration settings in PostgreSQL can already make a huge impact! In the guide below I explain which configuration you need to pay extra attention to and also advise to increase huge pages under Linux when you’re using PostgreSQL or MariaDB for that matter.

Please follow the latest PostgreSQL configuration I shared here for Mbin specifically, but can be applied to any application using a PostgreSQL DB: PostgreSQL guide

For more information on fine tuning MariaDB, Nginx, PHP or other Linux kernel configurations, I advise you to checkout my snippets on my GitLab instance: https://gitlab.melroy.org/-/snippets/609, https://gitlab.melroy.org/-/snippets/92, https://gitlab.melroy.org/-/snippets/87

    • mayoi@sh.itjust.works
      link
      fedilink
      arrow-up
      1
      ·
      edit-2
      1 year ago

      If SQLite was enough, you never used PostgreSQL in the first place. The post clearly is for cases when distributed database is needed.

      • Sagar Acharya
        link
        fedilink
        arrow-up
        1
        ·
        edit-2
        1 year ago

        PgSQL is gigantic compared to SQLIte. Also, current versions of SQLite are very very optimized! I think it is sufficient!

        About distributed databse, I’m not sure, maybe one can use multiple sqlite databases across multiple nodes, sort and use accordingly.

          • Sagar Acharya
            link
            fedilink
            arrow-up
            1
            ·
            1 year ago

            Aah well, I mistook it for MySQL. 23.5MB tarball is quite great! Still SQLite, for 3MB is what I prefer!

            • melroy@kbin.melroy.orgOPM
              link
              fedilink
              arrow-up
              1
              ·
              1 year ago

              It’s not just the size of the tarball or binary. It’s also about how it scales in terms of performance when you have 400 users per hour on your server. Mbin is using PostgreSQL, can you imagine if Lemmy would SQLite… your page will never load… haha

              • Sagar Acharya
                link
                fedilink
                arrow-up
                1
                ·
                1 year ago

                Lemmy can easily work with SQLite3. The bottleneck in web services is not data fetching, it is network hops. The transmission takes most amount of time. SQLite is perfect for Lemmy!

              • Sagar Acharya
                link
                fedilink
                arrow-up
                1
                ·
                1 year ago

                For very big services like YouTube, it will fail! The only advantage of PgSQL is it has a client server model which decreases overhead.