AI in Nottingham
```wiki
- REDIRECT AI in Nottingham
AI in Nottingham: Server Configuration Overview
This document details the server configuration supporting the "AI in Nottingham" project. This project aims to provide a centralised resource for information about Artificial Intelligence initiatives, research, and businesses within the Nottingham area. This guide is intended for new system administrators and developers contributing to the platform. Understanding these configurations is crucial for maintenance, scaling, and troubleshooting. This wiki page details the core infrastructure. For details on software deployment, see the separate Deployment Guide.
Core Infrastructure
The AI in Nottingham platform is hosted on a cluster of dedicated servers located within the University of Nottingham’s High Performance Computing facility. The cluster is designed for high availability and scalability. We utilise a three-tier architecture: web servers, application servers, and database servers. Network connectivity is provided by a dedicated 10Gbps fibre link. A detailed network diagram can be found at Network Diagram. For information on security protocols, see the security documentation.
Web Server Configuration
The web servers handle incoming HTTP/HTTPS requests and serve static content. They are also responsible for reverse proxying requests to the application servers.
Parameter | Value |
---|---|
Operating System | Ubuntu Server 22.04 LTS |
Web Server | Nginx 1.22.0 |
SSL Certificate | Let's Encrypt (Renewed Automatically) |
Reverse Proxy | Enabled (to Application Servers) |
Load Balancing | Nginx with upstream module |
PHP Version | PHP 8.2 |
These servers are monitored using Nagios for uptime, CPU usage, memory usage, and disk space. Alerts are configured to notify the on-call team of any issues. Regular backups are performed using rsync to a remote storage location. See Backup Procedures for more details. Web server logs are rotated daily and archived for one month. For details on Nginx configuration, see the Nginx documentation.
Application Server Configuration
The application servers execute the core logic of the AI in Nottingham platform, including handling user authentication, data processing, and API requests. They interact with the database servers to retrieve and store data.
Parameter | Value |
---|---|
Operating System | Ubuntu Server 22.04 LTS |
Application Framework | Python 3.10 with Django 4.1 |
WSGI Server | Gunicorn 20.1.0 |
Database Driver | psycopg2 (PostgreSQL) |
Caching | Redis 6.2 |
Task Queue | Celery 5.2 |
Application server performance is critical. We use New Relic for application performance monitoring (APM). Code deployments are automated using Jenkins. Error logging is handled by Sentry. For information on Django settings, see the settings documentation.
Database Server Configuration
The database servers store all persistent data for the AI in Nottingham platform, including user accounts, AI initiative details, and research papers.
Parameter | Value |
---|---|
Operating System | Ubuntu Server 22.04 LTS |
Database System | PostgreSQL 14.5 |
Replication | Streaming Replication (Primary-Standby) |
Backup Strategy | Daily Full Backups, Hourly Transaction Log Backups |
Storage | SSD RAID 10 |
Connection Pooling | PgBouncer |
Database performance is monitored using pgAdmin. Database backups are stored offsite for disaster recovery. Regular database maintenance tasks, such as vacuuming and indexing, are performed automatically. See Database schema for details on the data model. For information on PostgreSQL configuration, see the PostgreSQL documentation.
Scaling Considerations
The platform is designed to scale horizontally. Additional web and application servers can be easily added to the cluster to handle increased traffic. Database scaling is more complex and requires careful planning. We are currently investigating the use of database sharding to improve database scalability. Load testing is performed regularly to identify performance bottlenecks.
Future Enhancements
Future enhancements to the server configuration include:
- Implementation of a content delivery network (CDN) to improve website performance.
- Migration to a containerized deployment using Docker and Kubernetes.
- Integration with a machine learning platform for automated anomaly detection.
- Further optimization of database queries.
- Improved monitoring and alerting capabilities.
Related Pages
- Deployment Guide
- Network Diagram
- Security Protocols
- Backup Procedures
- Nginx Configuration
- Django Settings
- Database Schema
- PostgreSQL Configuration
- Nagios
- New Relic
- Jenkins
- Sentry
- Database Sharding
- Load Testing
- Software Deployment
```
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.* ⚠️