Hosting and operations: course overview
This course is for the people who keep Exponential sites running on servers: system administrators, hosting company staff and the operations side of an agency. It follows a site through its life on a server: how requests are served, the Velocity web server, the database, deploying changes and running cron, watching the site and its logs, backing it up and restoring it, and making it fast and able to grow.
Who it is for
- System administrators who host one or more Exponential sites.
- Support and operations staff of hosting companies.
- Developers who are responsible for their own production servers.
Outcome: after the course, a learner can serve a site with PHP-FPM or Velocity, choose and back up its database, deploy a change, run cron, monitor the site, restore it from a backup and measure and improve its performance.
Format and duration
| Duration | 28 lessons, about 20 hours of lessons (three to four days with breaks) |
| Format | Classroom or online; hands-on on a terminal |
| Level | Intermediate to advanced |
| Prerequisites | Site administration (at least the modules on caches, cronjobs, logs and upgrades); Linux command line, a web server and PHP basics |
| Lab | One Linux machine or virtual machine per learner with root access, PHP 8.0 or later, Composer 2 and Git; a training installation made with php bin/php/console exp:install --apply and served with exp:velocity start; for lessons 1.2, 1.3 and 3.3 also Apache or nginx with PHP-FPM and a MariaDB or PostgreSQL server |
Modules
| Module | Lessons | Duration | Outcome |
|---|---|---|---|
| 1. Serving the site | 4 | 2 h 45 min | Serves a site with Apache or nginx and PHP-FPM, tunes pools, checks OPcache and APCu |
| 2. Velocity | 4 | 3 h | Starts and keeps Velocity running, sizes its pools, uses the response cache and HTTPS |
| 3. Databases | 4 | 2 h 55 min | Chooses a database, runs SQLite well, sets up a database server, backs up and moves a database |
| 4. Deploying and cron | 4 | 2 h 55 min | Deploys a change, installs cron, uses the cronjob console, plans an upgrade |
| 5. Monitoring and logs | 4 | 2 h 55 min | Monitors a site, reads and rotates logs, works through the site-down and slow-site runbooks |
| 6. Backups and recovery | 4 | 2 h 45 min | Backs up the right things, writes a retention policy, restores and tests a restore |
| 7. Performance and scaling | 4 | 2 h 55 min | Benchmarks a site, uses caching layers and a Valkey cache, designs a site on several web nodes |
Reading path
For a trainer preparing to give this course, in this order:
- Trainers: start here and the Course catalogue.
- Hosting companies: start here and What hosting Exponential involves.
- Requirements at a glance and PHP settings for Exponential.
- The installation book chapters 7, 8, 9 and 11.
- Velocity for hosts and Velocity workers and pools.
- Database support.
- Deploying and Cronjobs.
- Monitoring overview and the runbooks.
- Backups: what to back up and Restore and restore tests.
- Caching layers and Benchmarking.
- Modules 1 to 7 of this course, in order. Rehearse every exercise on a lab machine built the way the learners' machines will be; prepare the faults for lesson 5.4 in advance.
Suggested schedules
| Schedule | Plan |
|---|---|
| Four days | Day 1: Modules 1 and 2. Day 2: Modules 3 and 4. Day 3: Modules 5 and 6. Day 4 morning: Module 7 |
| Three days, intensive | Day 1: Modules 1, 2 and lessons 3.1 to 3.2. Day 2: lessons 3.3 to 3.4, Modules 4 and 5. Day 3: Modules 6 and 7 |
| Two and a half days, Velocity sites only | Skip lessons 1.2 and 1.3. Day 1: lessons 1.1 and 1.4, Modules 2 and 3. Day 2: Modules 4, 5 and 6. Day 3 morning: Module 7 |
| Seven half days | One module per half day, in order |
| Self-study | One module per week, with the exercises done on your own virtual machine |
Assessing learners
Every lesson has a quiz and an expected result the trainer checks. As a final practical task, the trainer breaks a learner's lab site in a prepared way (a stopped server, a full disk, a missing cron entry or a lost database file) and the learner restores service with the runbooks of Modules 5 and 6 and writes a short incident note. This is the trainer's own assessment, not an official certification; the partner program's certifications are separate (Certifications). The Assessments and practical exercises course in the catalogue has more material.
Related pages
- Trainers: start here
- Course catalogue
- Hosting companies: start here
- Free documentation: this page is free to copy, translate and improve under the GNU FDL 1.3.
Become an Exponential Partner
Partners share their information, provide funding, contribute back and develop the products with us, and that is how Exponential grows. A partner website and dashboard are planned for mid-2027: please become a partner today to speed up our growth rate and land new features faster.