Перейти к основному содержимому

21 запись с тегом "AWS"

Посмотреть все теги

· 6 мин. чтения

1. Введение

В этом руководстве мы узнаем, как программно взаимодействовать с системой хранения Amazon S3 (Simple Storage Service) из Java.

Помните, что S3 имеет очень простую структуру; в каждой корзине может храниться любое количество объектов, доступ к которым можно получить с помощью интерфейса SOAP или API в стиле REST.

В дальнейшем мы будем использовать AWS SDK для Java для создания, перечисления и удаления корзин S3. Мы также будем загружать, перечислять, скачивать, копировать, перемещать, переименовывать и удалять объекты в этих корзинах.

2. Зависимости Maven

· 4 мин. чтения

1. Обзор

В этом руководстве мы увидим, как обрабатывать многокомпонентные загрузки в Amazon S3 с помощью AWS Java SDK.

Проще говоря, при многокомпонентной загрузке мы разделяем контент на более мелкие части и загружаем каждую часть по отдельности. Все части повторно собираются при получении.

Многокомпонентная загрузка имеет следующие преимущества:

  • Более высокая пропускная способность — мы можем загружать части параллельно
  • Более простое исправление ошибок — нам нужно повторно загрузить только неудавшиеся части
  • Приостановка и возобновление загрузки — мы можем загружать части в любой момент времени. Весь процесс можно приостановить, а остальные части загрузить позже.

Обратите внимание, что при использовании многокомпонентной загрузки с Amazon S3 каждая часть, кроме последней, должна иметь размер не менее 5 МБ.

· 11 мин. чтения

1. Обзор

В нашей предыдущей статье мы уже реализовали бессерверное приложение с полным стеком на AWS, используя API Gateway для конечных точек REST, AWS Lambda для бизнес-логики, а также DynamoDB в качестве базы данных.

Однако развертывание состоит из множества ручных шагов, которые могут стать неудобными с ростом сложности и количества сред.

В этом руководстве мы обсудим, как использовать модель бессерверных приложений AWS (SAM), которая обеспечивает описание на основе шаблонов и автоматическое развертывание бессерверных приложений в AWS .

Подробно рассмотрим следующие темы:

  • Основы модели бессерверных приложений (SAM), а также базового CloudFormation
  • Определение бессерверного приложения с использованием синтаксиса шаблона SAM
  • Автоматическое развертывание приложения с помощью CloudFormation CLI

· 4 мин. чтения

1. Введение

AWS Lambda — это сервис бессерверных вычислений, предоставляемый Amazon для упрощения конфигурации серверов, ОС, масштабируемости и т. д. AWS Lambda может выполнять код в облаке AWS.

Он запускается в ответ на события на разных ресурсах AWS, которые запускают функции AWS Lambda. Плата взимается по мере использования, что означает, что мы не будем тратить деньги на простаивающие лямбда-функции.

Для этого руководства требуется действующая учетная запись AWS; Вы можете создать его здесь .

2. Зависимости Maven

· 20 мин. чтения

1. Обзор

AWS Lambda позволяет нам создавать легкие приложения, которые можно легко развертывать и масштабировать. Хотя мы можем использовать такие фреймворки, как Spring Cloud Function , из соображений производительности мы обычно используем как можно меньше кода фреймворка.

Иногда нам нужно получить доступ к реляционной базе данных из Lambda. Вот где Hibernate и JPA могут быть очень полезны. Но как добавить Hibernate в нашу Lambda без Spring?

В этом руководстве мы рассмотрим проблемы использования любой СУБД в Lambda, а также то, как и когда Hibernate может быть полезен. В нашем примере будет использоваться модель бессерверного приложения для создания интерфейса REST для наших данных.

Мы рассмотрим, как протестировать все на нашем локальном компьютере с помощью Docker и интерфейса командной строки AWS SAM.

2. Проблемы с использованием RDBMS и Hibernate в Lambdas

· 14 мин. чтения

1. Введение

AWS предлагает множество сервисов через многочисленные API-интерфейсы, к которым мы можем получить доступ из Java, используя их официальный SDK. Однако до недавнего времени этот SDK не предлагал поддержку реактивных операций и имел лишь ограниченную поддержку асинхронного доступа.

С выпуском AWS SDK для Java 2.0 мы теперь можем использовать эти API в полностью неблокирующем режиме ввода-вывода благодаря принятию стандарта Reactive Streams.

В этом руководстве мы рассмотрим эти новые функции, реализуя простой REST API хранилища BLOB-объектов в Spring Boot, который использует известную службу S3 в качестве серверной части хранилища.

2. Обзор операций AWS S3

· 14 мин. чтения

1. Обзор

Чтобы собрать базовую AWS Lambda на Java, не требуется много кода. Чтобы не усложнять задачу, мы обычно создаем бессерверные приложения без поддержки фреймворка.

Однако, если нам нужно развернуть и контролировать наше программное обеспечение на уровне предприятия, нам нужно решить многие проблемы, которые решаются «из коробки» с помощью таких фреймворков, как Spring.

В этом руководстве мы рассмотрим, как включить возможности конфигурации и ведения журнала в AWS Lambda , а также библиотеки, которые сокращают шаблонный код, сохраняя при этом легкость.

2. Создание примера

· 8 мин. чтения

1. Обзор

В этом руководстве мы будем использовать библиотеку JetS3t с Amazon S3.

Проще говоря, мы будем создавать сегменты, записывать в них данные, считывать данные, копировать их, а затем перечислять и удалять их.

2. Установка JetS3t

2.1. Зависимость от Maven

· 4 мин. чтения

1. Обзор

В этом руководстве мы покажем, как развернуть приложение из нашего руководства Bootstrap a Simple Application с использованием Spring Boot в AWS Elastic Beanstalk .

В рамках этого мы:

  • Установите и настройте инструменты AWS CLI
  • Создайте проект Beanstalk и разверните MySQL
  • Настройте приложение для MySQL в AWS RDS
  • Развертывание, тестирование и масштабирование приложения

2. Конфигурация AWS Elastic Beanstalk

· 4 мин. чтения

В мире Java есть несколько хороших способов загрузки контента в корзину S3 — в этой статье мы рассмотрим, что предоставляет для этой цели библиотека jclouds .

Чтобы использовать jclouds — в частности, API, обсуждаемые в этой статье, эту простую зависимость Maven следует добавить в pom проекта:

<dependency>
<groupId>org.jclouds</groupId>
<artifactId>jclouds-allblobstore</artifactId>
<version>1.5.10</version>
</dependency>

1. Загрузка на Amazon S3

Первым шагом для доступа к любому из этих API является создание BlobStoreContext :

BlobStoreContext context = 
ContextBuilder.newBuilder("aws-s3").credentials(identity, credentials)
.buildView(BlobStoreContext.class);