Intro
Notre équipe pour un projet Web (c'est toujours un secret) avait besoin d'un hébergement, ce qui rendrait notre service disponible pour une collaboration 24/7. Avant cela, nous utilisions différents hébergements mutualisés, mais cette option d'hébergement ne nous convient pas, car ces fournisseurs mettent rarement à jour les logiciels, et même s'il existe un choix de versions de MySQL, PHP et Apache, il existe généralement plusieurs versions obsolètes et très obsolètes. Et tout le monde n'a pas d'outils pour travailler avec les certificats Let's Encrypt, par exemple. Mais récemment, nous avons décidé de prêter attention aux machines virtuelles dédiées. D'une part, un peu plus de maintenance nous incombe, mais d'autre part, nous obtenons un contrôle total sur tous les logiciels installés.
Sélection des victimes
Il existe plusieurs services différents pour la sélection de l'hébergement, nous avons sélectionné la configuration du serveur virtuel en fonction des considérations selon lesquelles nous avons besoin de 2 cœurs de processeur, 8 Go de RAM et au moins 50 Go de SSD et avons reçu la liste suivante:
- boodet.online
- firstvds.ru
- fornex.com
- fozzy.com
- ipipe.ru
- ispserver.com
- profitserver.ru
- ruvds.com
- vdsnow.ru
Apprenons à mieux connaître
boodet.online
Vous pouvez acheter 10, 20, 60, 100, 250, 500, 1000 ou 2000 Go.
Eh bien, il y a des limites pour chaque valeur de CPU et de RAM. Par exemple, pour profiter de 12 Go de RAM, moins de 6 cœurs de processeur ne peuvent pas être commandés, et c'est la valeur suivante après 8 Go. Vous pouvez commander des VPS avec jusqu'à 48 cœurs et jusqu'à 224 Go de RAM (minimum - 1 cœur et 0,5 Go de RAM). Lors du paiement d'un an, le coût du serveur par mois devient 952 ₽.
Aimé: petit prix
N'a pas aimé: manque de flexibilité de configuration complète.
Nuances: la suppression du serveur prend un certain temps. Peut-être que certaines des étapes sont effectuées manuellement. Lors du retour des fonds, l'hébergeur vous demande d'indiquer explicitement les détails de la source de paiement. Le seul hébergeur avec de telles exigences parmi ceux que nous avons rencontrés.
firstvds.ru
Ici, vous pouvez sélectionner le nombre requis de cœurs de serveur virtuel de 2 à 8 pcs., RAM par incréments de 2 Go jusqu'à 32 Go et disque par incréments de 10 Go de 20 à 2000 Go. Il n'y a pas de réduction lors de la commande de plus d'un mois et est de 1549 ₽ par mois.
Aimé: configuration VDS personnalisée, paiement via le système de paiement rapide à l'aide d'un QR code.
Je n'ai pas aimé: la suppression du serveur avant la fin de la période de facturation n'est pas fournie, mais à titre exceptionnel, elle peut être supprimée via le support technique.
fornex.com
Choix de configurations fixes uniquement. 2711,76 RUB par mois si payé pendant un an.
N'a pas aimé: manque de configuration flexible.
Nuances: la fonction de suppression génère simplement une demande de support technique.
fozzy.com
Il n'y a pas de configurateur, il y a des tarifs prêts à l'emploi, on va s'appuyer sur une machine virtuelle avec 2 Go de RAM, 2 cœurs, 45 Go.
Et ajoutez-y 6 Go. Le coût est de 1 939,00 ₽ par mois.
N'a pas aimé: absence de configurateur normal.
ipipe.ru
Ici aussi, VPS doit être assemblé en tant que constructeur. NVMe –2 + 6 Go de RAM.
Nous recevons 1 459,00 ₽ par mois.
N'a pas aimé: absence de configurateur normal.
ispserver.com
Ici, le configurateur vous permet de sélectionner le nombre requis de cœurs de 2 à 8 pièces, de RAM par incréments de 2 Go à 32 Go et un disque par incréments de 10 Go de 20 à 2000 Go.
Aimé: configuration personnalisée.
Je n'ai pas aimé: la suppression du serveur avant la fin de la période de facturation n'est pas fournie, mais à titre exceptionnel, elle peut être supprimée via le support technique.
profitserver.ru
Il y a un configurateur à part entière ici, et la quantité de RAM que nous commandons est le maximum disponible à la commande, et le minimum que vous pouvez commander est de 1 Go. Le noyau peut être commandé de 1 à 8 pièces, et le disque - de 20 à 100 Go. Lorsque vous payez pour un an, le coût est de 1668,50 RUB par mois
Aimé: configuration personnalisée, paiement via le système de paiement rapide à l'aide d'un QR code.
Je n’ai pas aimé: ils ont refusé de supprimer le serveur et de le rembourser.
ruvds.com
Il existe un configurateur à part entière. Disponible de 1 à 16 cœurs, 0,5 à 16 Go de RAM et 10 à 600 Go de disque.
Mais nous avons choisi un tarif prêt à l'emploi, car il est moins cher - seulement 1333 ₽ par mois.
Aimé: configuration personnalisée.
Je n’ai pas aimé: le tarif sélectionné ne peut être acheté que pour exactement trois mois, et vous ne pouvez pas prolonger le serveur plus tôt que quelques jours avant la fin de la période de facturation.
vdsnow.ru
Il y a un configurateur complet ici. Vous pouvez choisir de 1 à 8 cœurs, 1 à 32 Go de RAM et de 10 à 150 Go de disque. 1320 ₽ par mois sans réduction en cas de paiement pour une période plus longue.
Aimé: configuration flexible.
Le but de la bataille
Nous avons sélectionné plusieurs services et décidé de choisir le plus adapté, tant en termes de prix que de performances. Espérer trouver un service à la fois bon marché et productif est une utopie, nous allons donc essayer de trouver une solution équilibrée.
Se préparer au combat
Afin de ne pas réinventer la roue et de ne pas perdre beaucoup de temps, nous avons décidé d'utiliser une suite de tests de performances prête à l'emploi - Phoromatic . Au début, il y avait une idée de simplement exécuter une sorte de banc de console (comme sysbench) via cron selon un calendrier. Mais après quelques recherches sur Google, nous avons trouvé une option très intéressante: www.phoronix-test-suite.com .
La Phoronix Test Suite (PTS) est un logiciel gratuit et open source pour Linux et d'autres systèmes d'exploitation développé par Michael Larabel et Matthew Tippett.
La suite de référence Phoronix a été approuvée par des sites tels que Linux.com, LinuxPlanet et Softpedia l'a qualifiée de «meilleure plate-forme pour les tests de performances». La suite de tests Phoronix est également utilisée par Tom's Hardware, ASELabs et d'autres sites d'évaluation.
En substance, il s'agit d'une énorme bibliothèque de divers problèmes de test, à l'aide de laquelle vous pouvez évaluer la qualité et la stabilité du fonctionnement d'une machine physique entière, ou effectuer un test hautement spécialisé visant quelque chose de spécifique. Mais nous avons été particulièrement attirés par le sous-système Phoromatic.
Phoromatic — - Phoronix Test Suite. (). Phoromatic .
Phoromatic est lancé sur un serveur séparé, après quoi les machines de test y sont connectées. Le processus est aussi simple que possible, les développeurs ont fourni des scripts prêts à l'emploi pour l'installation dans leur référentiel pour les systèmes Unix et Windows. Nous devons simplement nous assurer qu'il existe des dépendances nécessaires pour le travail et exécuter le script d'installation, puis tout le travail sera effectué dans l'interface Web de Phoromatic.
Après avoir démarré Phoromatic, accédez à l'interface Web, où il nous sera demandé de fournir les informations d'identification de l'administrateur. Après cela, la page principale du système s'ouvrira:
En général, Phoromatic est capable de déployer indépendamment les composants nécessaires sur les machines de test. Il vous suffit de fournir un accès SSH:
Cela peut être pratique si vous disposez d'un énorme parc de machines de test. Nous avons emprunté un chemin différent. Phoronix Test Suite a été installé sur chaque machine de test et à l'aide d'une simple commande:
phoronix-test-suite phoromatic.connect my-domain.xyz:8855/1P81YS
ils rejoignaient le serveur Phoromatic. Ensuite, nous avons combiné tous les systèmes en un seul groupe, ce qui a permis d'exécuter des tests de manière synchrone sur toutes les machines.
Ensuite, nous procédons à la sélection des tests requis. Nous nous sommes installés sur l'ensemble suivant:
System CPU\RAM:
>> Sysbench [pts/sysbench-1.0.0]
This is a benchmark of Sysbench with CPU and memory sub-test
>> Apache Benchmark [pts/apache-1.7.2]
This is a test of ab, which is the Apache benchmark program. This test profile measures how many requests per second a given system can sustain when carrying out 1,000,000 requests with 100 requests being carried out concurrently.
>> PHPBench [pts/phpbench-1.1.5]
PHPBench is a benchmark suite for PHP. It performs a large number of simple tests in order to bench various aspects of the PHP interpreter. PHPBench can be used to compare hardware, operating systems, PHP versions, PHP accelerators and caches, compiler options, etc. The number of iterations used is 1,000,000.
===
CPU:
>> Swet [pts/swet-1.0.0]
Swet is a synthetic CPU/RAM benchmark, includes multi-processor test cases.
>> OpenSSL [pts/openssl-1.11.0]
OpenSSL is an open-source toolkit that implements SSL (Secure Sockets Layer) and TLS (Transport Layer Security) protocols. This test measures the RSA 4096-bit performance of OpenSSL.
===
RAM:
>> pmbench [pts/pmbench-1.0.2]
Pmbench is a Linux paging and virtual memory benchmark. This test profile will report the average page latency of the system.
- Concurrent Worker Threads: 2 - Read-Write Ratio: 50%
>> Tinymembench [pts/tinymembench-1.0.2]
This benchmark tests the system memory (RAM) performance.
===
Network:
>> Loopback TCP Network Performance [pts/network-loopback-1.0.3]
This test measures the loopback network adapter performance using a micro-benchmark to measure the TCP performance.
===
Disc:
>> Flexible IO Tester [pts/fio-1.13.2]
Fio is an advanced disk benchmark that depends upon the kernel's AIO access library.
- Random Read - Engine: Linux AIO - Buffered: Yes - Direct: No - Block Size: 4KB - Disk Target: Default Test Directory
- Random Read - Engine: Linux AIO - Buffered: Yes - Direct: No - Block Size: 4MB - Disk Target: Default Test Directory
- Random Read - Engine: Linux AIO - Buffered: Yes - Direct: No - Block Size: 512KB - Disk Target: Default Test Directory
- Random Read - Engine: Linux AIO - Buffered: Yes - Direct: No - Block Size: 64KB - Disk Target: Default Test Directory
- Random Write - Engine: Linux AIO - Buffered: Yes - Direct: No - Block Size: 4KB - Disk Target: Default Test Directory
- Random Write - Engine: Linux AIO - Buffered: Yes - Direct: No - Block Size: 4MB - Disk Target: Default Test Directory
- Random Write - Engine: Linux AIO - Buffered: Yes - Direct: No - Block Size: 512KB - Disk Target: Default Test Directory
- Random Write - Engine: Linux AIO - Buffered: Yes - Direct: No - Block Size: 64KB - Disk Target: Default Test Directory
>> SQLite [pts/sqlite-2.1.0]
This is a simple benchmark of SQLite. At present this test profile just measures the time to perform a pre-defined number of insertions on an indexed database.
- Threads / Copies: 1
Un tel ensemble peut sembler superflu, mais nous voulions nous faire une idée du fonctionnement de chacun des composants du système: disque, RAM, CPU, réseau.
Vous devez maintenant créer le calendrier même selon lequel les tests seront exécutés:
Nous y mettons tous les tests que nous avons sélectionnés:
En conséquence, nous avons 4 scénarios avec le même ensemble de tests. Les scripts s'exécutaient à 04h00, 10h00, 14h00 et 19h00 tous les jours. Un démarrage séquentiel de tous les tests sélectionnés a été lancé et les résultats ont été obtenus. Il ne restait plus qu'à attendre. Après 2 semaines, nous avons décidé que c'était suffisant et avons désactivé les scripts.
Les résultats peuvent être consultés directement dans le navigateur et même faire des comparaisons entre les sites de test. Cependant, avec un volume aussi important, cela est très peu pratique à faire. Par conséquent, nous avons vidé tous les résultats dans CSV et analysé les résultats nous-mêmes. Le tableau résultant est joint à cet article afin que vous puissiez analyser vous-même les résultats.
Bataille
Après avoir téléchargé les résultats des tests pour chaque serveur, nous les avons combinés sur plusieurs feuilles dans LibreOffice Calc (alternative à MS Excel) Pour chaque hébergeur - une feuille séparée. Ensuite, la moyenne arithmétique a été prise pour tous les résultats obtenus dans chaque test. Ainsi, nous avons obtenu des résultats moyennés sans référence au temps, ce qui nous permettra d'évaluer plus adéquatement les performances des machines, sans prendre en compte l'afflux temporaire de charge créé par les serveurs d'autres clients.
Si vous le souhaitez, vous pouvez créer indépendamment des graphiques pour chaque test, pour chaque hébergeur et comprendre à quel point les performances diffèrent à une heure le mardi de 3 nuits le samedi.
Les résultats moyennés obtenus ont été résumés sur une feuille avec le nom simple de «moyenne arithmétique». Vous pouvez maintenant créer des diagrammes qui montrent clairement la différence entre les hébergeurs pour chaque test. Sur la feuille «Résultat final», vous pouvez simplement voir les données reçues sous une forme qui convient à la perception humaine. Chaque colonne contient à la fois la moyenne arithmétique réelle et la même chose, mais en termes de 1000 ₽. Cela nous permettra de comprendre lequel des hébergeurs est le meilleur en termes de rapport qualité-prix. Dans les graphiques, vous pouvez voir deux colonnes:
- Le bleu est la valeur réelle
- Rouge - en termes de 1000 roubles.
Le décalage total comprenait des valeurs ajustées pour la valeur. Notez également que plus c'est mieux pas dans tous les tests, ceci est indiqué dans la colonne "B":
- HIB — Higher Is Better More Is Better ( , )
- LIB — Low Is Better Fewer Is Better ( — )
Voici les résultats du benchmark: test des
performances du processeur sysbench
test des performances de la mémoire sysbench test des performances du
disque IOPS
flexible Test des performances du disque IOPS Flexible IO Tester MB / s test des performances du disque
Apache Benchmark Serveur de pages Web statiques
Test des performances du serveur Web PHP Benchmark Test de
performance du processeur Swet
Test de santé du contrôleur réseau Transfert de données via le bouclage Test de
performance de la mémoire Tinymembench
pmbench Test de performance du disque
Test de performance de la base de données SQLite
Test de performance du processeur OpenSSL
Ainsi, nous avons des diagrammes montrant la valeur moyenne, non limitée dans le temps, pour chaque test séparément, ainsi que les mêmes valeurs, mais ajustées pour le coût de la configuration testée. Grâce à eux, il est relativement facile de comprendre les forces et les faiblesses des hébergeurs.
Déterminer le gagnant
Passons aux résultats. Pour déterminer un favori pour nous-mêmes, nous avons attribué un certain poids à chaque place occupée dans un test particulier. Le plus proche du championnat, mieux c'est. Ainsi, l'hébergeur obtient 9 points pour la première place, 1 pour la dernière (et vice versa, si l'on parle de résultats LIB). Ensuite, nous résumons simplement les scores obtenus pour chaque test et construisons le graphique final.
Ruvds.com et ipipe.ru ont les meilleurs résultats, cependant, en termes de rapport qualité-prix, ruvds.com semble plus attrayant.
Conclusion
Les hébergements se sont affrontés sérieusement - nous avions des configurations presque identiques dans la même gamme de prix, mais, comme nous l'avons dit au début, maintenant chaque petite chose décide. Nous avons quand même réussi à identifier le gagnant, mais avant de l'annoncer, il y a quelques points sur lesquels j'aimerais attirer votre attention:
- ne copiez pas aveuglément notre choix - vous pouvez avoir d'autres objectifs, tâches, introduction et projets; vous pouvez économiser de l'argent et trouver la meilleure solution pour vous-même;
- ne lésinez pas sur les matchs - l'hébergement bon marché peut être carrément dangereux et nuire non seulement à votre projet, mais à toute l'entreprise;
- prenez le temps de sélectionner et d'analyser la solution.
Eh bien, en termes de rapport qualité-prix, nous avons été surpris par Ruvds (en particulier, le tarif "Turbo") - il n'y a pas seulement des performances exceptionnelles, mais aussi un prix adéquat. Donc, les gars ne bloguent pas ici pour rien - ils n'ont probablement pas honte de regarder dans les yeux du cluster informatique Habr. Eh bien, vous - pensez par vous-même, décidez par vous-même ... Et, surtout, ne perdez pas!
Vous pouvez télécharger le tableau original avec les résultats ici: méga