Core i9-13900 Server (64GB)
Core i9-13900 Server (64GB) - Technical Overview
This article details the configuration and considerations for running a MediaWiki installation on a server equipped with an Intel Core i9-13900 processor and 64GB of RAM. This setup is suitable for medium to large wikis with moderate to high traffic. This guide assumes a base Linux operating system, such as Ubuntu Server or CentOS.
Hardware Specifications
The following table outlines the key hardware components:
Component | Specification |
---|---|
Processor | Intel Core i9-13900 (24 Cores, 32 Threads) |
RAM | 64GB DDR5 ECC Registered |
Storage | 1TB NVMe PCIe Gen4 SSD (for OS & MediaWiki) |
Network | 10 Gigabit Ethernet |
Motherboard | Server-Grade Motherboard (supporting DDR5 and PCIe Gen4) |
Power Supply | 850W 80+ Gold Certified |
This configuration provides ample processing power and memory for handling a substantial wiki workload. The NVMe SSD ensures fast read/write speeds, crucial for database operations and page rendering.
Software Stack
The recommended software stack for this server includes:
- Operating System: Ubuntu Server 22.04 LTS or CentOS Stream 9
- Web Server: Apache 2.4 or Nginx 1.22
- Database: MariaDB 10.6 or MySQL 8.0 (MariaDB is generally preferred for performance and open-source compatibility)
- PHP: PHP 8.2 with necessary extensions (see below)
- MediaWiki: MediaWiki 1.40
PHP Configuration
Proper PHP configuration is critical for MediaWiki performance. Important extensions to enable include:
PHP Extension | Description |
---|---|
intl | Internationalization support. Required for multi-language wikis. |
gd | Image manipulation library. Needed for thumbnail generation and image handling. |
mbstring | Multibyte string support. Essential for handling different character encodings. |
pdo_mysql | PHP Data Objects driver for MySQL/MariaDB. |
xml | XML processing support. |
zip | ZIP archive support. |
curl | Client URL Library for making HTTP requests. |
Adjust the `php.ini` file to optimize performance. Key settings to consider are:
- `memory_limit`: Set to at least 256MB, ideally 512MB or higher.
- `max_execution_time`: Increase if you experience timeouts during complex operations.
- `upload_max_filesize` & `post_max_size`: Configure based on your expected file upload limits.
- `opcache.enable`: Enable PHP OPcache for improved performance.
Refer to the PHP documentation for details on each setting. Always restart your web server after modifying `php.ini`.
Database Configuration
A well-configured database is paramount for MediaWiki's performance. Consider these recommendations:
Setting | Recommendation |
---|---|
Character Set | `utf8mb4` (for full Unicode support) |
Collation | `utf8mb4_unicode_ci` (case-insensitive Unicode collation) |
`innodb_buffer_pool_size` | Set to 50-80% of available RAM (e.g. 32GB-51.2GB with 64GB RAM) |
`innodb_log_file_size` | Increase to 256MB or 512MB for improved write performance. |
`query_cache_size` | Consider enabling and tuning the query cache, but monitor its effectiveness. |
Regularly back up your database using tools like `mysqldump` or `mariadb-dump`. Database backups are essential for disaster recovery. Ensure your database server is secured with a strong password and appropriate firewall rules. See MediaWiki database setup for further information.
Security Considerations
- **Firewall:** Configure a firewall (e.g., `ufw` on Ubuntu, `firewalld` on CentOS) to restrict access to only necessary ports (80, 443, 22).
- **HTTPS:** Enable HTTPS using Let's Encrypt or a commercial SSL certificate.
- **Regular Updates:** Keep your operating system, web server, database, PHP, and MediaWiki software up to date with the latest security patches.
- **User Permissions:** Follow the principle of least privilege when configuring user accounts.
- **MediaWiki Security Extensions:** Explore security extensions available for MediaWiki, such as SpamBlacklist and ConfirmEdit.
Monitoring and Maintenance
Regularly monitor server resource usage (CPU, memory, disk I/O, network traffic) using tools like `top`, `htop`, `iotop`, and `iftop`. Monitor MediaWiki's performance using the Special:Statistics page and server logs. Regularly run database maintenance tasks, such as optimizing tables and purging the query cache. Consider implementing a monitoring solution like Nagios or Zabbix for automated alerts.
Intel-Based Server Configurations
Configuration | Specifications | Benchmark |
---|---|---|
Core i7-6700K/7700 Server | 64 GB DDR4, NVMe SSD 2 x 512 GB | CPU Benchmark: 8046 |
Core i7-8700 Server | 64 GB DDR4, NVMe SSD 2x1 TB | CPU Benchmark: 13124 |
Core i9-9900K Server | 128 GB DDR4, NVMe SSD 2 x 1 TB | CPU Benchmark: 49969 |
Core i9-13900 Server (64GB) | 64 GB RAM, 2x2 TB NVMe SSD | |
Core i9-13900 Server (128GB) | 128 GB RAM, 2x2 TB NVMe SSD | |
Core i5-13500 Server (64GB) | 64 GB RAM, 2x500 GB NVMe SSD | |
Core i5-13500 Server (128GB) | 128 GB RAM, 2x500 GB NVMe SSD | |
Core i5-13500 Workstation | 64 GB DDR5 RAM, 2 NVMe SSD, NVIDIA RTX 4000 |
AMD-Based Server Configurations
Configuration | Specifications | Benchmark |
---|---|---|
Ryzen 5 3600 Server | 64 GB RAM, 2x480 GB NVMe | CPU Benchmark: 17849 |
Ryzen 7 7700 Server | 64 GB DDR5 RAM, 2x1 TB NVMe | CPU Benchmark: 35224 |
Ryzen 9 5950X Server | 128 GB RAM, 2x4 TB NVMe | CPU Benchmark: 46045 |
Ryzen 9 7950X Server | 128 GB DDR5 ECC, 2x2 TB NVMe | CPU Benchmark: 63561 |
EPYC 7502P Server (128GB/1TB) | 128 GB RAM, 1 TB NVMe | CPU Benchmark: 48021 |
EPYC 7502P Server (128GB/2TB) | 128 GB RAM, 2 TB NVMe | CPU Benchmark: 48021 |
EPYC 7502P Server (128GB/4TB) | 128 GB RAM, 2x2 TB NVMe | CPU Benchmark: 48021 |
EPYC 7502P Server (256GB/1TB) | 256 GB RAM, 1 TB NVMe | CPU Benchmark: 48021 |
EPYC 7502P Server (256GB/4TB) | 256 GB RAM, 2x2 TB NVMe | CPU Benchmark: 48021 |
EPYC 9454P Server | 256 GB RAM, 2x2 TB NVMe |
Order Your Dedicated Server
Configure and order your ideal server configuration
Need Assistance?
- Telegram: @powervps Servers at a discounted price
⚠️ *Note: All benchmark scores are approximate and may vary based on configuration. Server availability subject to stock.* ⚠️