The Software Behind Your Website

If someone gave you an option to pick the best hosting package for the next project, completely free of charge, would you know exactly what you’re looking for? Would you make a decision based solely on hardware numbers like number of CPUs, size of the SSD storage or how much RAM memory it has, or would you look at the fine print and ask questions not many are asking before committing to the hosting company?

Today we are going to discuss some of these questions. If you are a web developer who pays attention to server-related things, it would be hard for me to teach you anything new. However, if you are a client to a web developer, or a developer who usually makes things done without worrying about server-related software, then please stick around; there is plenty of knowledge to share – if you’re interested.

Is Shared Hosting a Viable Option?

Let’s remove the elephant from the room. In some cases, shared hosting is a viable option. For example, if you have a small alumni site with just 20-50 members and you are sure no one will ever register again, or when the privacy of data is not particularly important, then shared hosting can actually be a fine option. Don’t expect miracles from it, though. In most cases, you don’t even know how much RAM or CPUs are there on a physical server where your site is running, let alone which software is installed on it and what are other limitations.

You are paying just a few bucks for it, usually in the range of $10-40 a year. That’s basically pocket change every month. Shared hosting can be a good solution for static websites that rarely change, but when you throw in a dynamic element like PeepSo streams to it, don’t expect heavy-lifting operations like handling many users at the same time.

Also, shared hosting options usually have a nasty limitation in the number of emails that can be sent in one hour and it’s usually set to around 100 emails per hour. Let’s put it in a context:

Imagine that you have a PeepSo group with 250 members and all of them are set to receive email notifications on new updates in the group. Group members Tom, Bob and Jane came to the group and posted something. At this moment, your server is tasked to send out 750 emails; that’s 3 emails for all 250 members in the group. But you can only send 100 per hour and you won’t have the option to change this limitation. Hosting will usually offer you a VPS hosting package if you want to lift that limit. 

While PeepSo can work on shared hosting, we only advise it as a starting solution for your website with a very small footprint. As soon as your site becomes more popular and more people are online at any given moment, consider changing it to at least a VPS. You’ll do your site a favor and save yourself from a lot of frustration.

Takeaway in this section:

  • Shared servers are okay for a start.
  • They will become obsolete and won’t be enough when your site becomes very active.

About Emails

Since we already touched the subject of emails, one of the common questions we get in Support goes along these lines:

“PeepSo is not sending out emails” or “Emails are not being sent from PeepSo”

Many people contacting our support.

The fact of the matter is that PeepSo – and any other plugin really – only generates emails. It does not send them out. Every email created in WordPress plugins passes through a series of mail servers along its way to its intended recipient. Although it may seem like a message is sent instantly – zipping from the server to your PC in the blink of an eye – the reality is that a complex series of transfers takes place.

Without this series of mail servers, you wouldn’t be able to send any email from your site, and you guessed it right – the first email server in this chain is on your hosting. There are some services like Amazon SES (Simple Email Service), MailGun, SendGrid, even Google itself, which can offload the process of sending out emails from your site, but these services are usually very expensive or have strict anti-spam rules to preserve their sender reputation.

Sender reputation is very important. You need to ask the hosting provider what their email sender reputation is and if they can provide you with proper digital signatures for emails originating from your domain, to prevent emails being delivered in spam or junk folders. If they don’t want to share their sender reputation, it’s probably because they are blacklisted somewhere and your emails will most likely end up in spam/junk folders.

Takeaway in this section is:

  • Does your hosting package include a working mail server?
  • Can your hosting provide you with proper DKIM signatures for your emails?
    Most of them do, but it’s always good to ask.

Cron Job

When you wind up your alarm to wake you up at 6:30 every morning, you have just set the Cron Job in real life. 

Unknown, but so real.

Crontab is a piece of Linux software that runs on your hosting and its sole purpose is to allow adding commands that will trigger some action at a given time, or in a desired time interval. For example, you can set the cron job to trigger the script which will dispatch all generated emails to the email server, every 5 minutes.

Every hosting must have Crontab available in one form or another. If it doesn’t, change the hosting. Seriously. In this day and age, Crontab comes as a commodity and a provider that doesn’t include Crontab is not worth a penny. We have full documentation regarding cron job setup here.

Takeaway in this section: 

  • Does your hosting provide Crontab so you can manage Cron Jobs?

Database

When we consider the hosting package, more often than not we’ll see how many MySQL databases a hosting has on offer. Sometimes, they will even boast about giving you 10 databases, or even unlimited databases.
The truth is, for one site, you only need one. In some cases when the site is very big (thousands of users online at the same time) you can consider load balancers and separate databases but that is a very advanced setup most of us will never need to think about, yet alone implement it. There are two common types of databases that WordPress can use:

  • MySQL
  • MariaDB

Both are good, but MariaDB being a fork of MySQL is slightly better optimized and faster.

Takeaway in this section:

  • If possible, insist on having MariaDB as a database for your site.

PHP

Hypertext Preprocessor, or PHP, is a single well known software running on the server, therefore I won’t spend much time covering an already well-covered subject. Always use the latest stable version of PHP.

Currently (April 2020), PeepSo recommends PHP 7.3, but if you use PHP 7.4 you won’t make a mistake.
If you use any version prior to PHP 7.3, you are exposing your site to hacking risks.

Takeaway in this section:

  • Ask your hosting provider what is the PHP version they use on their server, and whether they can provide you with the option to change the version of PHP with a simple click of the button.

Web Server

Still with me? I hope so, because we’ve reached the most important subject that hosting providers usually won’t tell you about. There are three (3) well known web server software running most of the internet as we know it today:

Apache

Due to its simplicity in configuration, high level of customization with modules and extensions, Apache is the most widely used web server software. It is estimated that around 65% of web servers today run on Apache. In February 2020 Apache celebrated its 25th birthday, so it’s been with us for quite some time. It is very stable, secure and flexible. Most hosting providers use Apache as their default web server software.

However, Apache comes with some downsides. The most notable are being very RAM hungry and not fully optimized for server side caching, in most cases requiring you to install a third-party plugin for caching purposes. Good news is, WordPress can run on other web server softwares as well.

Nginx or LiteSpeed servers

This is what you should be going for. If possible, LiteSpeed server should be your final choice because of its immense speed, small memory and CPU footprints, and high security. It is compatible with most control panels like cPanel or Plesk and many Apache features like .htaccess files. 

The downside is that LiteSpeed servers are very expensive and usually only available with higher hosting tiers. There is also a free version of LiteSpeed server called “OpenLiteSpeed” that comes with its designated WordPress caching plugin, however this version is not compatible with cPanel and it comes with its own panel called Cyber Panel.

Nginx is a more affordable option provided with most VPS hosting offers, although not heavily advertised. If you don’t specifically ask for it, the hosting company will assume you want Apache server. Be advised that Nginx is generally very hard to configure. You should choose it only if you know how to configure it, or if the hosting company offers a service to manage it for you. 

Takeaway in this section: 

  • Hosting companies will most likely sell you the Apache server if you don’t ask for a specific alternative. 
  • Try to find the affordable hosting with LiteSpeed server instead of Apache.
  • Use Nginx as a cheaper alternative to Apache if LiteSpeed is not an (affordable) option.
  • If you go with Nginx, make sure hosting support will offer help regarding the configuration.

Operating System

All this software requires an operating system to run on. You should always prefer hosting with some flavour of a Linux operating system. While WordPress can run on other operating systems and their servers, like Windows Server and IIS, many plugins including PeepSo can’t. Furthermore, by some accounts, over 90% of the internet runs on Linux Operating Systems in one form or another. 

The most used systems for web servers are CentOS and Debian. There are exceptions, of course. For example, Ubuntu, which is primarily focused on desktop usage is becoming a go-to operating system for developers that want to fully control their own VPS or dedicated servers because of its simplicity and familiarity.

At the end of the day, operating systems are mostly a matter of personal preference, but mind that you need to ask your hosting provider if you’ll be able to control what gets installed on it or not. If not, find the hosting that allows you to do this. Typical example with PeepSo would be to install FFMPEG software on your server. If hosting doesn’t allow you to do it, you will have a problem. 

Takeaway in this section:

  • Look for Linux hosting.
  • Ask the hosting company if you are allowed to control what gets installed on the server (this is usually available with VPS and higher tier hosting packages).

Firewall / Security

Since hosting is (in layman terms) nothing more than a computer running a particular set of softwares while being connected to the internet, securing it should be a paramount. Most hosting companies do care about the security and have systems in place that secure their infrastructure. Unfortunately, not all of them are so diligent, or perhaps they use older protection methods that can’t protect them against new threats.

Also, malicious hackers can exploit low level software that makes your hardware actually run. Typical example is Load Value Injection that makes some Intel processors susceptible to meltdown attacks. This can be hard to track, but at least try to make sure that your hosting provider takes security seriously. 

Summing Up

Let’s go over all the questions you should find an answer for before purchasing hosting:

  • How easy is it to upgrade from shared to VPS hosting with your selected provider?
  • Do you get a working email server and a guarantee that your emails will be properly signed to avoid having them end up in spam/junk folders?
  • Do you get cron jobs?
  • Is MariaDB available as an alternative to MySQL database?
  • Is there support for the latest version of PHP and how easy is it to switch from one version to another? How often is the selection of available PHP versions updated?
  • Can you use Nginx or LiteSpeed instead of Apache? Can the hosting help you configure these servers?

Furthermore:

  • Use Linux servers that you can fully control and decide what gets installed and what doesn’t.
  • Investigate if a hosting has ever had serious issues with security in the past and if they had, seek information on how they were handled.

I hope this article will prove helpful in your search for the perfect hosting for your next website. Should you have questions or concerns, let me know in the comments below.


Don’t have the Bundle but you would like to have access to all current and future plugins hassle-free?

Get PeepSo Ultimate Bundle & Theme

       

Get All Current and Future PeepSo Plugins & Gecko Theme!

Foundation, Core, Extras, Integrations, Monetization.
Don’t wait get the Bundle today!

Brought to you by PeepSo Team Siniša Krišan
I am experienced in various social networks and platforms. Among other things, I’m the guy you turn to for figuring out the feature’s details and resolving issues. I hail from Novi Sad, Serbia. My journey with Open Source had taken me across the globe to Bali, Indonesia, where I had spent several years working & evolving with the base PeepSo Team. I was involved with planning and development of very early versions of PeepSo and helped pushing the product forward. Although I tend to engage full workaholic mode, I am essentially a laid back person. I’m also a hardcore gamer and I enjoy playing video games with my girlfriend whenever I catch precious little spare time. I enjoy traveling and learning about new cultures and surroundings.

Reactions & comments

Join Our Community!

Join us to discuss PeepSo's features, connect with the development team and give suggestions.

Comments

@peepso_user_18029(Josh Kogan)
Great article. All said, what exact specs do you recommend for an active community of 100, or 1,000, or 10,000? Who do you recommend for managed providers?
April 13, 2020 3:32 pm April 13, 2020 3:32 pm
@peepso_user_13(Siniša Krišan)
@peepso_user_18029(Josh Honzo) sorry for slow response.
It is tricky... are we talking about 100, 1000 and 10,000 concurent usrs just browsing the site, or all of them uploading videos, photos or in any other way stressing the resources.

It's usually a balancing act, depending on how people on your site use it's features.

We recommend Liquid Web https://www.liquidweb.com as we use it ourselves.
@peepso_user_13(Siniša Krišan)
@peepso_user_22605(Thad Williams) similarly to previous reply, it's a balancing act. How many users are there and what are they doing on your site.
Start small, take VPS with 1 CPU and 2GB of ram, monitor it, if load average goes over 1 in 15 minutes, take the plan with 2 CPU's, if Load average goes over 2 in 15 minutes, take 3 CPU's and so on

It really is hard to know exactly what kind of hardware you'll need until you see the habits of your site users and how they use the features.
@peepso_user_18513(Carl Blake)
I think we need to optimize the software and server software as much as we can by using caching and jetpack and other techniques. That is short term, long term is going to be purpose built servers with huge ram, SSD drives and and optmized version of the kernel. The third item will be ensuring the network connection is close to a NAP with a fat pipe. If your going to have thousands of users then there must be a monetize schema that helps pay for this specialized server, specialized connection and bandwidth usage. Im excited for the future of these types of communities. This is a GREAT start....now we just need to add some steroids and help it grow up.