AWS coûte que chaque programmeur devrait savoir

Le titre de cet article est une référence directe au diagramme "Temps de retard que tout programmeur devrait connaître . " Il existe actuellement plusieurs versions de ce diagramme, et il est difficile d'établir l'auteur d'origine. Certains disent que c'est Jeff Dean .

Si vous travaillez sur un projet qui doit atteindre une grande échelle, vous devez équilibrer plusieurs problèmes. Quelles hypothèses faisons-nous et comment les confirmer? Comment entrer rapidement sur le marché? Notre conception supportera-t-elle l'échelle attendue?

L'un des problèmes de la mise à l'échelle est le coût de l'infrastructure. Les fournisseurs de cloud vous permettent de créer des milliers de processeurs et de placer des téraoctets de données en un seul clic. Mais c'est cher, et quelque chose qui est insignifiant pour plusieurs milliers d'utilisateurs peut devenir un énorme trou budgétaire lorsque vous atteignez des millions d'utilisateurs.

Dans cet article, je vais énumérer quelques numéros de référence qui sont utiles à garder à l'esprit lors de l'examen de l'architecture. Ces chiffres ne sont pas destinés à être une estimation précise du budget. Ils aident à déterminer si votre conception a du sens ou si elle va au-delà de ce que vous pouvez vous permettre. Par conséquent, nous considérons des ordres de grandeur et des valeurs relatives, plutôt que des valeurs absolues.

Gardez également à l'esprit que votre entreprise peut bénéficier de remises d'AWS, ce qui peut faire une énorme différence.

Calculs


Quel est le coût actuel du CPU? Grâce à la merveilleuse interface ec2instances.info, j'ai obtenu des prix médians de vCPU.

Vous pouvez obtenir les données source à partir du référentiel Github . Je les ai copiés et traités avec un script Python, que j'ai également utilisé sur Github . Tous les prix sont pour la région eu-west-1.

Prix ​​mensuel médian
1 processeur virtuel ultramoderne (4 calculateurs AWS)58 $ / mois
Avec 1 an de réservation convertible43 $ / mois
Avec 3 ans de réservation convertible30 $ / mois
Avec prix au comptant (estimé)30 $ / mois

J'ai évalué les prix au comptant selon divers utilisateurs. Comme les prix changent tout au long de la journée, je n'ai pas pu trouver de source fiable de données.

AWS représente la puissance de calcul de ses machines en unités de calcul élastiques, et 4 calculateurs correspondent plus ou moins à la puissance d'un processeur moderne. Ainsi, les prix ci-dessus sont indiqués pour un seul processeur ou cœur, plutôt que pour une seule instance.

Voici le prix de 1 ECU en dollars par heure dans tous les types de cas que j'ai évalués:



Et voici comment les prix sur demande sont comparés aux réservations d'un et trois ans (acomptes):



Stockage


Vous souhaitez donc une faible latence, une bande passante élevée et prévoyez de tout stocker dans Redis? Ensuite, en plus de ces coûts, le CPU devra payer pour la RAM.

J'ai utilisé la même approche pour obtenir le prix médian de 1 Go de RAM sur EC2. Elasticache est environ la moitié du prix de la demande, mais les prix baissent assez rapidement dans les cas réservés.

Prix ​​mensuel médian
1 Go de RAM10 $ / mois
1 Go de RAM pour une sauvegarde d'un an8 $ / mois
1 Go de RAM pour trois ans de redondance5 $ / mois
SSD0,11 $ / mois
Disque dur0,05 $ / mois
S30,02 $ / mois
Glacier S30,004 $ / mois

Bien qu'il s'agisse du coût net du stockage, vous devez également examiner les modes d'utilisation de vos données. De combien de processeur avez-vous besoin pour travailler 24/7 dans une mémoire 24/7?

Idem pour S3: combien paierez-vous pour les demandes de lecture / écriture? J'ai vu des charges de travail où le coût de stockage sur S3 était négligeable, mais le coût d'écriture d'un grand nombre d'objets sur S3 a fait que l'équipe a écrit son propre système de fichiers au-dessus de S3.

Transfert


Quelques commentaires sur HackerNews ont indiqué que j'avais manqué les coûts de transmission. En effet, si vous fournissez des données aux utilisateurs finaux ou avez besoin d'une réplication interrégionale, vous devez tenir compte de ces coûts.

Type de transfert de donnéesCoût de transfert 1 Go
Région EU / US vers toute autre région0,02 $ / Go
Région APAC vers toute autre région0,09 $ / Go
Région UE / États-Unis sur Internet0,05 $ / Go
Région APAC sur Internet0,08 $ / Go
Entre deux AZ d'une même région0,01 $ / Go
À l'intérieur d'un AZGratuitement

Source: https://habr.com/ru/post/fr456536/


All Articles