Кэширование и производительность веб-приложений / Хабр
Кэширование позволяет увеличивать производительность веб-приложений за счёт использования сохранённых ранее данных, вроде ответов на сетевые запросы или результатов вычислений. Благодаря кэшу, при очередном обращении клиента за одними и теми же данными, сервер может обслуживать запросы быстрее. Кэширование — эффективный архитектурный паттерн, так как большинство программ часто обращаются к одним и тем же данным и инструкциям. Эта технология присутствует на всех уровнях вычислительных систем. Кэши есть у процессоров, жёстких дисков, серверов, браузеров.Ник Карник, автор материала, перевод которого мы сегодня публикуем, предлагает поговорить о роли кэширования в производительности веб-приложений, рассмотрев средства кэширования разных уровней, начиная с самого низкого. Он обращает особое внимание на то, где именно могут быть кэшированы данные, а не на то, как это происходит.
Мы полагаем, что понимание особенностей систем кэширования, каждая из которых вносит определённый вклад в скорость реакции приложений на внешние воздействия, расширит кругозор веб-разработчика и поможет ему в деле создания быстрых и надёжных систем.
Процессорный кэш
Начнём наш разговор о кэшах с самого низкого уровня — с процессора. Кэш-память процессора — это очень быстрая память, которая играет роль буфера между процессором (CPU) и оперативной памятью (RAM). Кэш-память хранит данные и инструкции, к которым обращаются чаще всего, благодаря чему процессор может получать ко всему этому доступ практически мгновенно.В процессорах имеется особая память, представленная регистрами процессора, которая обычно представляет собой небольшое хранилище информации, обеспечивающее крайне высокую скорость обмена данными. Регистры — это самая быстрая память, с которой может работать процессор, которая расположена максимально близко к остальным его механизмам и имеет небольшой объём. Иногда регистры называют кэшем нулевого уровня (L0 Cache, L — это сокращение от Layer).
У процессоров, кроме того, имеется доступ к ещё нескольким уровням кэш-памяти. Это — до четырёх уровней кэша, которые, соответственно, называются кэшами первого, второго, третьего, и четвёртого уровня (L0 — L4 Cache).
Кэш жёсткого диска
Жёсткие диски (HDD, Hard Disk Drive), применяемые для постоянного хранения данных — это, в сравнении с оперативной памятью, предназначенной для кратковременного хранения информации, устройства довольно медленные. Однако надо отметить, что скорость постоянных хранилищ информации увеличивается благодаря распространению твердотельных накопителей (SSD, Solid State Drive).В системах долговременного хранения информации кэш диска (его ещё называют буфером диска или кэширующим буфером) — это встроенная в жёсткий диск память, которая играет роль буфера между процессором и физическим жёстким диском.
Кэш жёсткого дискаДисковые кэши работают, исходя из предположения, что когда на диск что-то пишут, или с него что-то читают, есть вероятность того, что в ближайшем будущем к этим данным будут обращаться снова.
О быстродействии жёстких дисков и оперативной памяти
Разница между временным хранением данных в оперативной памяти и постоянным хранением на жёстком диске проявляется в скорости работы с информацией, в стоимости носителей и в близости их к процессору.Время отклика оперативной памяти составляет десятки наносекунд, в то время как жёсткому диску нужны десятки миллисекунд. Разница в быстродействии дисков и памяти составляет шесть порядков!
Одна миллисекунда равна миллиону наносекундПростой веб-сервер
Теперь, когда мы обсудили роль кэширования в базовых механизмах компьютерных систем, рассмотрим пример, иллюстрирующий применение концепций кэширования при взаимодействии клиента, представленного веб-браузером, и сервера, который, реагируя на запросы клиента, отправляет ему некие данные.При работе вышеописанной системы, когда клиент обращается напрямую к серверу, а тот, самостоятельно обрабатывая запрос, читает данные с жёсткого диска и отправляет клиенту, без кэша всё-таки не обходится, так как при работе с диском будет задействован его буфер.
При первом запросе жёсткий диск проверит кэш, в котором, в данном случае, ничего не будет, что приведёт к так называемому «промаху кэша». Затем данные считаются с самого диска и попадут в его кэш, что соответствует предположению, касающемуся того, что эти данные могут понадобиться снова.
При последующих запросах, направленных на получение тех же данных, поиск в кэше окажется успешным, это — так называемое «попадание кэша». Данные в ответ на запрос будут поступать из дискового буфера до тех пор, пока они не будут перезаписаны, что, при повторном обращении к тем же данным, приведёт к промаху кэша.
Кэширование баз данных
Усложним наш пример, добавим сюда базу данных. Запросы к базам данных могут быть медленными и требовать серьёзных системных ресурсов, так как серверу баз данных, для формирования ответа, нужно выполнять некие вычисления. Если запросы повторяются, кэширование их средствами базы данных поможет уменьшить время её отклика. Кроме того, кэширование полезно в ситуациях, когда несколько компьютеров работают с базой данных, выполняя одинаковые запросы.Простой веб-сервер с базой данныхБольшинство серверов баз данных по умолчанию настроены с учётом оптимальных параметров кэширования. Однако, существует множество настроек, которые могут быть модифицированы для того, чтобы подсистема баз данных лучше соответствовала особенностям конкретного приложения.
Кэширование ответов веб-сервера
Продолжим развивать наш пример. Теперь веб-сервер, раньше рассматриваемый как единая сущность, разбит на две части. Одна из них, собственно веб-сервер, теперь занимается взаимодействием с клиентами и с серверным приложением, которое уже работает с системами хранения данных. Веб-сервер можно настроить так, чтобы он кэшировал ответы, в результате ему не придётся постоянно отправлять серверному приложению похожие запросы. Похожим образом, основное приложение может кэшировать некоторые части собственных ответов на ресурсоёмкие запросы к базе данных или на часто встречающиеся запросы файлов.Ответы веб-сервера кэшируются в оперативной памяти. Кэш приложения может храниться либо локально, в памяти, либо на специальном кэширующем сервере, который использует базу данных, вроде Redis, которая хранит данные в оперативной памяти.
Мемоизация функций
Сейчас поговорим об оптимизации производительности серверного приложения за счёт мемоизации. Это — разновидность кэширования, применяемая для оптимизации работы с ресурсоёмкими функциями. Данная техника позволяет выполнять полный цикл вычислений для определённого набора входных данных лишь один раз, а при следующих обращениях к функции с теми же входными данными сразу выдавать найденный ранее результат.Мемоизация — это обычный приём, используемый для повышения производительности программ. Однако он может быть не особенно полезным при работе с ресурсоёмкими функциями, которые вызываются редко, или с функциями, которые, и без мемоизации, работают достаточно быстро.
Кэширование в браузере
Теперь перейдём на сторону клиента и поговорим о кэшировании в браузерах. В каждом браузере имеется реализация HTTP-кэша (его ещё называют веб-кэшем), который предназначен для временного хранения материалов, полученных из интернета, таких, как HTML-страницы, JavaScript-файлы и изображения.Этот кэш используется, когда в ответе сервера содержатся правильно настроенные HTTP-заголовки, указывающие браузеру на то, когда и на какое время он может кэшировать ответ сервера.
Перед нами весьма полезная технология, которая даёт следующие преимущества всем участникам обмена данными:
- Улучшаются впечатления пользователя от работы с сайтом, так как ресурсы из локального кэша загружаются очень быстро. Во время получения ответа не входит время прохождения сигнала от клиента к серверу и обратно (RTT, Round Trip Time), так как запрос не уходит в сеть.
- Уменьшается нагрузка на серверное приложение и на другие серверные компоненты, ответственные за обработку запросов.
- Высвобождается некоторая часть сетевых ресурсов, которыми теперь могут воспользоваться другие пользователи интернета, экономятся средства на оплату трафика.
Кэширование в браузере
Кэширование и прокси-серверы
В компьютерных сетях прокси-серверы могут быть представлены специальным аппаратным обеспечением или соответствующими приложениями. Они играют роль посредников между клиентами и серверами, хранящими данные, которые этим клиентам требуются. Кэширование — это одна из задач, которую они решают. Рассмотрим различные виды прокси-серверов.▍Шлюзы
Шлюз (gateway) — это прокси-сервер, который перенаправляет входящие запросы или исходящие ответы, не модифицируя их. Такие прокси-серверы ещё называют туннелирующими прокси (tunneling proxy), веб-прокси (web proxy), прокси (proxy), или прокси уровня приложения (application level proxy). Эти прокси-серверы обычно совместно используются, например, всеми клиентами, находящимися за одним и тем же файрволом, что делает их хорошо подходящими для кэширования запросов.▍Прямые прокси-серверы
Прямой прокси-сервер (forward proxy, часто такие серверы называют просто proxy server) обычно устанавливается на стороне клиента. Веб-браузер, который настроен на использование прямого прокси-сервера, будет отправлять исходящие запросы этому серверу. Затем эти запросы будут перенаправлены на целевой сервер, расположенный в интернете. Одно из преимуществ прямых прокси заключаются в том, что они защищают данные клиента (однако, если говорить об обеспечении анонимности в интернете, безопаснее будет пользоваться VPN).▍Веб-ускорители
Веб-ускоритель (web accelerator) — это прокси-сервер, который уменьшает время доступа к сайту. Он делает это, заранее запрашивая у сервера документы, которые, вероятнее всего, понадобятся клиентам в ближайшем будущем. Подобные серверы, кроме того, могут сжимать документы, ускорять выполнение операций шифрования, уменьшать качество и размер изображений, и так далее.▍Обратные прокси-серверы
Обратный прокси-сервер (reverse proxy) — это обычно сервер, расположенный там же, где и веб-сервер, с которым он взаимодействует. Обратные прокси-серверы предназначены для предотвращения прямого доступа к серверам, расположенным в частных сетях. Обратные прокси используются для балансировки нагрузки между несколькими внутренними серверами, предоставляют возможности SSL-аутентификации или кэширования запросов. Такие прокси выполняют кэширование на стороне сервера, они помогают основным серверам в обработке большого количества запросов.▍Пограничное кэширование
Обратные прокси-серверы расположены близко к серверам. Существует и технология, при использовании которой кэширующие серверы располагаются как можно ближе к потребителям данных. Это — так называемое пограничное кэширование (edge caching), представленное сетями доставки контента (CDN, Content Delivery Network). Например, если вы посещаете популярный веб-сайт и загружаете какие-нибудь статические данные, они попадают в кэш. Каждый следующий пользователь, запросивший те же данные, получит их, до истечения срока их кэширования, с кэширующего сервера. Эти серверы, определяя актуальность информации, ориентируются на серверы, хранящие исходные данные.Прокси-серверы в инфраструктуре обмена данными между клиентом и серверомИтоги
В этом материале мы рассмотрели различные уровни кэширования данных, применяющиеся в процессе обмена информацией между клиентом и сервером. Веб-приложения не могут мгновенно реагировать на воздействия пользователя, что, в частности, связано, для действий, требующих обмена данными с серверами этих приложений, с необходимостью выполнения неких вычислений перед отправкой ответа. Во время, необходимое для передачи данных от сервера клиенту, входит и время, необходимое для поиска необходимых данных на диске, и сетевые задержки, и обработка очередей запросов, и механизмы регулирования полосы пропускания сетей, и многое другое. Если учесть, что всё это может происходить на множестве компьютеров, находящихся между клиентом и сервером, то можно говорить о том, что все эти задержки способны серьёзно увеличить время, необходимое для прихода запроса на сервер и получения клиентом ответа.Правильно настроенная система кэширования способна значительно улучшить общую производительность сервера. Кэши сокращают задержки, неизбежно возникающие при передаче данных по сети, помогают экономить сетевой трафик, и, в результате, уменьшают время, необходимое для того, чтобы браузер вывел запрошенную у сервера веб-страницу.
Уважаемые читатели! Какие технологии кэширования вы используете в своих проектах?
Кэшировать данные для оптимизации производительности — Microsoft Azure Well-Architected Framework
Twitter LinkedIn Facebook Адрес электронной почты- Статья
Кэширование — это стратегия, при которой вы храните копию данных наряду с основным хранилищем данных. Преимущества кэширования включают уменьшение времени отклика и возможность быстро обслуживать данные, что может улучшить взаимодействие с пользователем. Хранилище кэша обычно размещается ближе к клиенту, чем основное хранилище.
Кэширование становится наиболее эффективным, когда экземпляр клиента несколько раз считывает те же данные, особенно в том случае, если к исходному хранилищу данных применяются все указанные далее условия.
- Оно остается относительно статичным.
- Оно является медленным по сравнению со скоростью кэша.
- Оно является объектом высокого числа конкурентных запросов.
- Оно находится далеко, из-за чего задержки в сети могут вызвать снижение скорости доступа.
Кэширование может значительно повысить производительность, масштабируемость и доступность данных. Преимущества кэширования становятся все заметнее с увеличением объемов данных и числа пользователей, которым необходим доступ к этим данным. Это преимущество объясняется тем, что кэширование сокращает задержку и состязание, связанные с обработкой больших объемов параллельных запросов в исходном хранилище данных.
Включение соответствующего кэширования также позволяет сократить задержку за счет исключения повторяющихся вызовов микрослужб, API-интерфейсов и репозиториев данных. Ключ к эффективному использованию кэша заключается в определении наиболее подходящих данных для кэширования и их кэшировании в соответствующее время. Данные можно добавлять в кэш по требованию при первом получении приложением. Использование этого метода означает, что приложению необходимо получить данные только один раз из хранилища данных, а это означает, что последующий доступ может быть удовлетворен с помощью кэша. Дополнительные сведения см. в разделе Определение способа эффективного кэширования данных.
Дополнительные сведения см. в разделе Кэширование.
Кэш Azure для Redis
Кэш Azure для Redis повышает производительность и масштабируемость приложения. Он обрабатывает большие объемы запросов приложений, сохраняя часто используемые данные в памяти сервера, в которой их можно быстро записать и считать. Кэш Azure для Redis на основе программного обеспечения Redis предоставляет хранилище данных с критически низкой задержкой и высокой пропускной способностью для современных приложений.
Кэш Azure для Redis также повышает производительность приложений за счет поддержки стандартных шаблонов архитектуры приложений. Некоторые из наиболее распространенных шаблонов включают кэш данных и кэш содержимого. Наиболее распространенные шаблоны и их описания см. в разделе Общие шаблоны архитектуры приложений.
Сеть доставки содержимого (CDN) Azure
Сеть доставки содержимого (CDN) является распределенной сетью серверов, которая позволяет эффективно доставлять пользователям веб-содержимое. CDN хранит кэшированное содержимое на пограничных серверах в расположениях точки присутствия (POP), которые находятся близко к конечным пользователям, чтобы свести к минимуму задержку. Дополнительные сведения о CDN см. в статье Что такое сеть доставки содержимого в Azure?
Следующий
Секция
Решения AWS для кэширования
Узнайте об Amazon ElastiCache, Amazon CloudFront и Amazon Route 53
Amazon ElastiCache — это веб-служба, упрощающая развертывание, эксплуатацию и масштабирование хранилища данных в памяти и кэширования в облаке. Служба повышает производительность веб-приложений, позволяя извлекать информацию из быстрых управляемых хранилищ данных в памяти вместо того, чтобы полностью полагаться на более медленные базы данных на дисках. Amazon ElastiCache поддерживает два ядра памяти с открытым исходным кодом:
- Redis — быстрое хранилище данных и кеш в памяти с открытым исходным кодом. Amazon ElastiCache для Redis — это совместимый с Redis сервис в памяти, который обеспечивает простоту использования и мощность Redis, а также доступность, надежность и производительность, подходящие для самых ресурсоемких приложений. Доступны кластеры с одним узлом и до 15 сегментов, что обеспечивает масштабируемость до 3,55 ТиБ данных в памяти. ElastiCache для Redis полностью управляем, масштабируем и безопасен, что делает его идеальным кандидатом для высокопроизводительных сценариев использования, таких как Интернет, мобильные приложения, игры, рекламные технологии и Интернет вещей.
- Memcached — широко распространенная система кэширования объектов памяти. Протокол ElastiCache совместим с Memcached, поэтому популярные инструменты, которые вы используете сегодня с существующими средами Memcached, будут беспрепятственно работать с сервисом.
Amazon ElastiCache автоматически обнаруживает и заменяет отказавшие узлы, сокращая накладные расходы, связанные с самоуправляемыми инфраструктурами, и предоставляет отказоустойчивую систему, снижающую риск перегрузки баз данных, что замедляет загрузку веб-сайтов и приложений. Благодаря интеграции с Amazon CloudWatch Amazon ElastiCache обеспечивает улучшенную видимость ключевых показателей производительности, связанных с вашими узлами Redis или Memcached.
Используя Amazon ElastiCache, вы можете за считанные минуты добавить уровень памяти в свою инфраструктуру с помощью Консоли управления AWS.
Amazon File Cache предоставляет полностью управляемый высокоскоростной кэш на AWS для обработки файловых данных независимо от того, где они хранятся (локально или на AWS). Amazon File Cache — это временное высокопроизводительное хранилище для данных, хранящихся в локальных файловых системах, файловых системах AWS и корзинах Amazon S3, позволяющее сделать рассредоточенные наборы данных доступными для файловых приложений на AWS с помощью унифицированного просмотра и на высоких скоростях — задержка менее миллисекунды и высокая пропускная способность.
Back to Caching Home
Amazon DynamoDB Accelerator (DAX) — это полностью управляемый высокодоступный кэш в памяти для DynamoDB, обеспечивающий 10-кратное повышение производительности — с миллисекунд до микросекунд — даже при обработке миллионов запросов в секунду. . DAX выполняет всю тяжелую работу, необходимую для добавления ускорения в памяти к вашим таблицам DynamoDB, не требуя от разработчиков управления аннулированием кэша, заполнением данных или управлением кластером. Теперь вы можете сосредоточиться на создании отличных приложений для своих клиентов, не беспокоясь о производительности в масштабе. Вам не нужно изменять логику приложения, поскольку DAX совместим с существующими вызовами API DynamoDB. Вы можете включить DAX всего несколькими щелчками мыши в Консоли управления AWS или с помощью AWS SDK. Как и в случае с DynamoDB, вы платите только за предоставленную мощность.
Amazon CloudFront — это служба глобальной сети доставки контента (CDN), которая ускоряет доставку ваших веб-сайтов, API-интерфейсов, видеоконтента или других веб-ресурсов. Он интегрируется с другими продуктами Amazon Web Services, чтобы дать разработчикам и предприятиям простой способ ускорить предоставление контента конечным пользователям без каких-либо минимальных обязательств по использованию.
Amazon CloudFront можно использовать для доставки всего веб-сайта, включая динамическое, статическое, потоковое и интерактивное содержимое, с использованием глобальной сети периферийных местоположений. Запросы на ваш контент автоматически перенаправляются в ближайшее периферийное местоположение, поэтому контент доставляется с максимально возможной производительностью. Amazon CloudFront оптимизирован для работы с другими веб-сервисами Amazon, такими как Amazon Simple Storage Service (Amazon S3), Amazon Elastic Compute Cloud (Amazon EC2), Amazon Elastic Load Balancing и Amazon Route 53. Исходный сервер AWS, на котором хранятся исходные, окончательные версии ваших файлов. Как и в случае с другими продуктами Amazon Web Services, для использования Amazon CloudFront не существует долгосрочных контрактов или обязательств по минимальному ежемесячному использованию — вы платите только за столько контента, сколько фактически доставляете через службу доставки контента.
AWS Greengrass — это программное обеспечение, позволяющее безопасно выполнять локальные вычисления, обмен сообщениями и кэширование данных для подключенных устройств. С помощью AWS Greengrass подключенные устройства могут запускать функции AWS Lambda, синхронизировать данные устройств и безопасно обмениваться данными с другими устройствами, даже если они не подключены к Интернету. Используя AWS Lambda, Greengrass гарантирует, что ваши устройства IoT могут быстро реагировать на локальные события, работать с прерывистыми соединениями и минимизировать затраты на передачу данных IoT в облако.
AWS Greengrass легко расширяет возможности AWS для устройств, чтобы они могли локально обрабатывать данные, которые они генерируют, при этом используя облако для управления, аналитики и надежного хранения. С Greengrass вы можете использовать знакомые языки и модели программирования для создания и тестирования программного обеспечения вашего устройства в облаке, а затем развертывать его на своих устройствах. AWS Greengrass можно запрограммировать на фильтрацию данных устройств и передачу обратно в облако только необходимой информации. AWS Greengrass выполняет аутентификацию и шифрует данные устройств во всех точках подключения, используя возможности безопасности и управления доступом AWS IoT. Таким образом, данные никогда не обмениваются между устройствами, когда они взаимодействуют друг с другом и с облаком без подтвержденной идентификации.
Amazon Route 53 — это высокодоступный и масштабируемый веб-сервис облачной системы доменных имен (DNS). Он разработан, чтобы предоставить разработчикам и предприятиям чрезвычайно надежный и экономичный способ маршрутизации конечных пользователей к Интернет-приложениям путем преобразования таких имен, как www.example.com, в числовые IP-адреса, такие как 192.0.2.1, которые компьютеры используют для соединения друг с другом. Amazon Route 53 также полностью совместим с IPv6.
Amazon Route 53 эффективно связывает запросы пользователей с инфраструктурой, работающей в AWS, такой как инстансы Amazon EC2, балансировщики нагрузки Elastic Load Balancing или корзины Amazon S3, а также может использоваться для маршрутизации пользователей к инфраструктуре за пределами AWS. Вы можете использовать Amazon Route 53 для настройки проверки работоспособности DNS для маршрутизации трафика на работоспособные конечные точки или для независимого мониторинга работоспособности вашего приложения и его конечных точек. Amazon Route 53 Traffic Flow позволяет легко управлять трафиком в глобальном масштабе с помощью различных типов маршрутизации, включая маршрутизацию на основе задержки, гео-DNS и циклический взвешенный алгоритм. отказоустойчивые архитектуры с малой задержкой. Используя простой визуальный редактор Amazon Route 53 Traffic Flow, вы можете легко управлять тем, как ваши конечные пользователи направляются к конечным точкам вашего приложения — будь то в одном регионе AWS или распределены по всему миру. Amazon Route 53 также предлагает регистрацию доменных имен — вы можете приобретать доменные имена, такие как example.com, и управлять ими, а Amazon Route 53 автоматически настроит параметры DNS для ваших доменов.
Начать кэширование в облаке легко с помощью полностью управляемого сервиса, такого как Amazon ElastiCache. Это устраняет сложность настройки, управления и администрирования вашего кэша и позволяет вам сосредоточиться на том, что приносит пользу вашей организации. Зарегистрируйтесь сегодня для Amazon ElastiCache.
Поддержка AWS для Internet Explorer заканчивается 31.07.2022. Поддерживаемые браузеры: Chrome, Firefox, Edge и Safari. Узнать больше »
Общий кэш
Использование хранилища ключей и значений в памяти — отличный способ создания высокопроизводительных приложений. эффективно и быстро реагировать на запрос или вычислять ответ. Например, предположим, что ваше приложение получает некоторый пользовательский ввод и должно проверить, был ли сделан аналогичный запрос в течение часа, прежде чем ответить на него. Один из способов приблизиться к этому — кешировать запросы пользователей на час и кодировать приложение для проверки этого кеша при поступлении нового запроса пользователя. У вас также могут быть другие типы кэшированных данных, которые могут помочь вычислить значение, используемое в ответе.
Этот тип кэшированной информации является временным и требует чрезвычайно низкой задержки.Хотя можно использовать кэш приложения внутри самого узла приложения, он не сможет выдержать сбой. Кроме того, локальные кэши изолированы на отдельных узлах и не могут использоваться в кластере серверов приложений. Распределенные кэши, с другой стороны, обеспечивают низкую задержку и более высокий уровень доступности при использовании с репликами чтения и могут предоставить общую среду для всех ваших серверов приложений для использования кэшированных данных. Другие варианты использования распределенного кэша могут включать обмен информацией между различными приложениями в вашей системе. Когда у вас есть централизованное хранилище для ваших данных, оно может эффективно обеспечивать работу различных приложений с одними и теми же данными и низкой скоростью задержки.
Сегодня большинство хранилищ ключей/значений, таких как Memcached и Redis, могут хранить терабайты данных. Redis также предоставляет функции высокой доступности и постоянства, что делает хранение данных в нем отличным выбором, когда надежность на диске не важна. Чтобы узнать больше, посетите Amazon ElastiCache для Redis.
Вернуться на главную страницу кэширования
Начать кэширование в облаке легко с помощью полностью управляемого сервиса, такого как Amazon ElastiCache. Это устраняет сложность настройки, управления и администрирования вашего кэша и позволяет вам сосредоточиться на том, что приносит пользу вашей организации. Зарегистрируйтесь сегодня для Amazon ElastiCache.
Войдите в консоль
Узнайте об AWS
- Что такое AWS?
- Что такое облачные вычисления?
- AWS Инклюзивность, разнообразие и справедливость
- Что такое DevOps?
- Что такое контейнер?
- Что такое озеро данных?
- Облачная безопасность AWS
- Что нового
- Блоги
- Пресс-релизы
Ресурсы для AWS
- Начало работы
- Обучение и сертификация
- Библиотека решений AWS
- Архитектурный центр
- Часто задаваемые вопросы по продуктам и техническим вопросам
- Аналитические отчеты
- Партнеры AWS
Разработчики на AWS
- Центр разработчиков
- SDK и инструменты
- .