Maximum database size for good performance

One of the things I’m planning to do is to publish public-domain Christian literature, particularly books and sermons.

Now, websites such as the one (or ones) I’m planning to create have a vast amount of content, and that content doesn’t change, because it had already been written many years ago. Given these two characteristics, my best option is to create static websites, and not dynamic. They’ll be faster, and cost much less.

However, I’m still considering using ClassicPress for this project because I want to embed audio players: many of the books & sermons I want to publish have corresponding audio versions.

If I use static websites, I will have to depend on browser implementations of the audio player thru HTML5, or use a third-party service (if one can be found). My preference is not to use any of these two options, but to use a native functionality instead. ClassicPress has a native player for audio files.

The one thing I like about the CP audio player is that it doesn’t allow downloading of the audio files, unlike in the HTML5 audio player. I’ll be self-hosting the MP3s, and I’d like to keep my bandwidth costs as low as possible.

And so, my question is, if I use CP for this project, how large can the database get and still deliver good performance? Let’s say I export my database to uncompressed .SQL. What should be the maximum size of that file?

I accept that I may have to create several websites instead of one. I just need to know the maximum database size for each website.

1 Like

The content that you can handle is so huge that you won’t be able to publish all that content manually :slight_smile:

Regarding static, if you install a Caching plugin, staticness will be handled for you by that Cache.

It creates HTML files which contain the generated content.

1 Like

Yes, if ever I choose CP for this project, I’m planning to use Cachify as my caching plugin. It’s simple and easy to use, and I like the fact that it can save cache in the server’s hard disk. (That makes manually managing the cache easy using FTP.)

This project will be a hobby, a work of love, and I expect to spend years on it leisurely publishing content. Even so, I need some planning, and thus my question.

And you’re saying that a single database can handle all that I’m planning to do. That’s great!

1 Like

Yeah the database won’t be an issue. If it’s loads of media stuff (images, audios…) then you’ll have to have enough disk space. But that’s not a problem now a days. Neither is bandwidth. Especially for content that will be consumed by a minority.

Wish you the best of luck!

1 Like

As long as there’s money for payment, storage and bandwidth won’t be an issue because my webhost is pay-as-you-go in terms of resources used.

Database size isn’t an issue, inefficient use of something in the database is the issue. The main queries that are executed on each page (for listing and fetching posts/CPTs etc) are generally pretty efficient so you wouldn’t be likely to run into problems there.

Performance issues usually become apparent when some plugins are installed that are using the database in a less-than-optimal way.

If you want to dig in to this more, I suggest installing the Query Monitor plugin which will show you all the database queries that are executed for a given page load: Query Monitor – The developer tools panel for WordPress – WordPress plugin | WordPress.org

Thanks. I will install that plugin. I may not understand everything about it, but it’ll be very useful nonetheless.

The website will only present content; it’ll be as simple as possible, with as few plugins as possible, and so it’s likely I’ll not run into performance problems caused by plugins.

Note: It sounds like I’ve already decided to use CP. Well, maybe I have… :slight_smile:

This is not true. You can put scripts into static pages.

This is not true either. The file is available on the site, so any request of that file is “downloading” it, regardless of what player is on your page, although streaming the file might not download the entire file if people leave before finishing. And self-hosting the mp3 file will increase your bandwidth costs, not decrease them. If the files were somewhere else, that third party would bear the cost of the bandwidth used leaving your site with text and image content which is minor compared to audio and video.

If you are putting all that already published content into your database, is that legal? Wouldn’t it be easier to point to it, or use an iframe to show where it already is published?

2 Likes

Yes. Scripts are part of this third-party service I mentioned. I don’t want to depend on them, primarily because I don’t have any control over them. I’ll be embedding audio players on a lot of pages, and so I’ll have big trouble if ever the scripts I’m using are either upgraded or retired.

Yes. But if I use the CP audio player, at least there is no explicit Download button to make it easy for people to download the files… :grinning:

Note: I’m going to host the MP3s on a separate site, and will only refer to the files in the audio players.

I mean the possible bandwidth costs between using the CP audio player and the HTML5 audio player. The second has an explicit Download button, and so I’m assuming that using that will lead to higher bandwidth cost.

I plan to self-host the MP3s because, again, I don’t want to depend on any third-party service for them (and be bound by their Terms of Service). Christian literature is, by their very nature, not exactly “politically correct,” and some sermons can be offensive to many people. (This is one of the reasons why my webhost is NearlyFreeSpeech.NET; their only condition is that everything I do should be legal.)

The website I’m planning will be part of my ministry, and so I expect some donations from the people who will support me to help pay for the costs

Yes. I’ll only be publishing public-domain Christian literature. (The MP3s are also in the public domain.) There are tons of these material out there. My goal is to collect a small subset of them for my own purposes.

Perhaps. But it is my dream to have own personal online library, and so…

You have your choice of scripts, even the one used in CP.

You seem to be contradicting yourself.

I strongly recommend the LiteSpeed web server together with the LiteSpeed Cache plugin. Faster, much faster and use less resources. Plus, they promised to support ClassicPress.

1 Like

I don’t want to mess around w/ scripts. I just want to make my posts, embed audio files using the default functionalities provided by the CMS, and then “forget” them. I’m talking about a website that will ultimately have thousands of pages, and so I’m planning something that is as maintenance-free as possible.

No, I’m not. This is just a separation of the audio files (which will measure in GBs in size) from the main CP site. It doesn’t look good to me to store all that media files inside wp-content. If I have to make a backup of the site, I’ll be carrying all that baggage.

The site that will contain the MP3s will be a simple static site, with perhaps only an index.html, and its sole purpose is to host the files. I will control it, and I will pay for its costs.

I’ll also make sure that search engines won’t index it, and that its directories can’t be read in the browser.

My webhost is using Apache, and although it may be possible to use LiteSpeed server (I have the option of creating a custom site), I don’t have the knowledge and skills to manage that.

I’d also tried the LiteSpeed Cache plugin, since it’s possible to use its basic functions in Apache, but it’s way too complicated for me, at least for now :grin:

Maybe someday… I can always change my webhost or change my caching plugin any time I want.

I have finalized my decision to use ClassicPress for my library project. You can read about it in my blog post:

Building Swordsman Library on ClassicPress

3 Likes