Hello
A specialist is needed for server, database, and website optimization (there will be 10+) on OkayCMS
General information about the project
A specialist is needed for auditing, configuring, and optimizing the performance of the server, databases, and websites on OkayCMS (currently, there is 1 website on this server, later there will be 10+).
Server: dedicated
OS: Ubuntu
Panel: FASTPANEL
Website: OkayCMS (PHP + MySQL)
Objectives of the work
Increase the speed of the website (desktop, mobile versions, search)
Reduce the load on CPU/RAM/disk.
Optimize database performance (queries, indexes, configs).
Configure proper caching and/or acceleration of static content.
Identify and eliminate bottlenecks (web server, PHP-FPM, database, disk subsystem, cron, imports, feed generation, image resizing, etc.).
Set up monitoring for control after optimizations.
Scope of work
Audit of the current state (we can provide logs from the virtual server where all websites are running, which will then be transferred to the new server)
Collection of metrics and diagnostics:
Load (CPU, RAM, I/O, network).
Current processes and load peaks.
State of web stack (Nginx/Apache), PHP-FPM, MySQL/MariaDB.
Log analysis: web server, php-fpm, mysql, system (journalctl), 5xx errors/timeouts.
Check FASTPANEL settings (virtual hosts, SSL, caching rules, limits).
Result: a short report with problems, priorities, and a change plan.
Optimization of the web server and PHP
Check and optimize:
Nginx/Apache configs for real load (worker_processes, worker_connections, timeouts, buffers, gzip/brotli if possible).
PHP-FPM: pm mode (dynamic/ondemand), max_children, memory_limit, timeouts, opcache.
OPcache settings and validation of the effect.
Correct timeouts for imports/feeds/long queries
Database optimization
Find queries that cause the most load (OkayCMS, import/feed modules, search, filters).
Recommendations/implementation of indexes (only agreed upon and with a backup).
Check for locks, long transactions, table growth, indexing.
Caching and acceleration
Check current caching mechanisms of OkayCMS (file/other).
If possible and reasonable:
Set up Redis/Memcached (if OkayCMS/environment allows for proper integration).
HTTP caching for static content (cache-control, expires, etag), correct headers.
Optimize image delivery (webp/avif if relevant), but without the risk of breaking imports/feeds.
CDN is not mandatory, but can be offered as an option.
Cron, imports, feeds, image resizing
Check and optimize:
Cron schedule, task conflicts, parallel runs.
Execution limits, priorities, nice/ionice for heavy tasks.
Identify tasks that cause peak loads and 504/timeouts.
If necessary: stagger heavy tasks over time or create a queue
“Before/after” report:
Response time, load, number of slow queries, 5xx errors.
Requirements for the performer
Experience in optimization on Ubuntu under real loads.
Practice in optimizing MySQL/MariaDB, working with slow query log, indexes.
Understanding of CMS-typical problems (caches, imports, cron, feeds, image resizing).
Careful work in production: backups before changes, description of each step.
Willingness to work via SSH, preferably with a short “change plan” before application.
Work format and access
Access: SSH to the server (account to be agreed), access to FASTPANEL.
Database access: a separate user with necessary rights.
All changes are documented: what was changed, where, why, how to roll back.
Expected results
Reduction of the average response time of the website (we will agree on the metric: nginx request time / TTFB).
Reduction of the number of 5xx/504 (if any).
Configured slow query log and eliminated/minimized top causes of slow queries.
Optimized configs for web server + PHP-FPM + DB for server resources.
A short instruction is available: current configs, what was changed, how to check the status, where to look for logs/metrics.
Configured monitoring (minimum set of metrics and alerts).
Questions the performer should answer in the proposal
Examples of similar work (briefly, what was optimized and what was the effect).
Estimation of time for auditing and implementation (in hours) and payment format (hourly/fixed).
Additional information that will be provided to the selected performer
Server configuration (CPU/RAM/type of disks).
Domain(s), number of websites on the server.
Estimated traffic/peak hours.
Symptoms of problems: 504/slow admin panel/slow search/slow imports/slow feeds, etc.
Are there caches/Redis currently, or not.