Ну давай прикинем хотя бы порядок этих «космических» денег. Предположим, что все 8 миллиардов человек один раз в месяц пишут и читают 1 килобайт статических данных. На AWS S3 получем за хранение и доступ к данным:
Tiered price for: 8192 GB
8192 GB x 0.0230000000 USD = 188.42 USD
Total tier cost = 188.4160 USD (S3 Standard storage cost)
8,024,057,190 PUT requests for S3 Standard Storage x 0.000005 USD per request = 40,120.2859 USD (S3 Standard PUT requests cost)
8,024,057,190 GET requests in a month x 0.0000004 USD per request = 3,209.6229 USD (S3 Standard GET requests cost)
9,216 GB x 0.0007 USD = 6.4512 USD (S3 select returned cost)
9,216 GB x 0.002 USD = 18.432 USD (S3 select scanned cost)
188.416 USD + 3,209.6229 USD + 40,120.2859 USD + 6.4512 USD + 18.432 USD = 43,543.21 USD (Total S3 Standard Storage, data requests, S3 select cost)
S3 Standard cost (monthly): 43,543.21 USD
За трафик:
Inbound:
Internet: 9216 GB x 0 USD per GB = 0.00 USD
Outbound:
Internet: 9216 GB x 0.09 USD per GB = 829.44 USD
Data Transfer cost (monthly): 829.44 USD
Итоговая сумма: 44,372.65 USD
Пока что космических денег не наблюдается. Я работал с несколькими компаниями, у которых месячные счета были в четыре раза больше.
Но статические данные это не очень интересно. Всё же API предполагает собой какую-то динамику, да и размер в 1 килобайт какой-то смешной. Пусть это будет те же 16 миллиардов запросов к AWS API Gateway (REST API) в месяц:
Tiered price for: 16000000000 requests
333000000 requests x 0.0000035000 USD = 1165.50 USD
667000000 requests x 0.0000028000 USD = 1867.60 USD
15000000000 requests x 0.0000023800 USD = 35700.00 USD
Total tier cost: 1165.50 USD + 1867.60 USD + 35700.00 USD = 38733.1000 USD (REST API requests)
Tiered price total for REST API requests: 38,733.10 USD
3.80 USD per hour x 730 hours in a month = 2,774.00 USD for cache memory
Dedicated cache memory total price: 2,774.00 USD
38,733.10 USD + 2,774.00 USD = 41,507.10 USD
REST API cost (monthly): 41,507.10 USD
Всё ещё тривиальные суммы, особенно учитывая планетарный масштаб. Но ответы на запросы к API Gateway приходят не из вакуума, что-то на том конце должно посчитать и выдать ответ. Для этого мы будем использовать AWS Lambda. Предположим, что запросы обсчитываются с p99 в районе 1 секунды и коду требуется не больше 128 мегабайт памяти и 512 мегабайт дискового пространства для обработки 1 запроса:
16,000,000,000 requests x 1,000 ms x 0.001 ms to sec conversion factor = 16,000,000,000.00 total compute (seconds)
0.125 GB x 16,000,000,000.00 seconds = 2,000,000,000.00 total compute (GB-s)
2,000,000,000.00 GB-s - 400000 free tier GB-s = 1,999,600,000.00 GB-s
Max (1999600000.00 GB-s, 0 ) = 1,999,600,000.00 total billable GB-s
Tiered price for: 1999600000.00 GB-s
1999600000 GB-s x 0.0000166667 USD = 33326.73 USD
Total tier cost = 33326.7333 USD (monthly compute charges)
16,000,000,000 requests - 1000000 free tier requests = 15,999,000,000 monthly billable requests
Max (15999000000 monthly billable requests, 0 ) = 15,999,000,000.00 total monthly billable requests
15,999,000,000.00 total monthly billable requests x 0.0000002 USD = 3,199.80 USD (monthly request charges)
0.50 GB - 0.5 GB (no additional charge) = 0.00 GB billable ephemeral storage per function
33,326.7333 USD + 3,199.80 USD = 36,526.53 USD
Lambda costs - With Free Tier (monthly): 36,526.53 USD
Не будем забывать, что исходящий трафик не бесплатный. Цена за гигабайт интернет-трафика в самом дешёвом регионе 0.09USD. 16 миллиардов запросов, минимум 2КБ на запрос обойдутся в 32,768 GB * 0.09 USD = 2,949.12 USD.
Итого получаем: 80982.75USD в месяц до скидок и оптимизаций. Всё ещё тривиальная сумма, для проекта такого масштаба это действительно почти бесплатно.