docs: add AWS CLI section + quick_test reference
This commit is contained in:
@@ -12,7 +12,56 @@
|
||||
| **Secret Key** | `J8mElXq8Nwww8iFRtGJCm8KfxM9XSTluTqS2A67xsEE` |
|
||||
| **Region** | `us-east-1` (любая) |
|
||||
|
||||
## Быстрый тест (curl)
|
||||
---
|
||||
|
||||
## AWS CLI
|
||||
|
||||
Самый простой способ работы — через стандартный AWS CLI.
|
||||
|
||||
```bash
|
||||
export AWS_ACCESS_KEY_ID="SQSAK-test001-ae4dc8"
|
||||
export AWS_SECRET_ACCESS_KEY="J8mElXq8Nwww8iFRtGJCm8KfxM9XSTluTqS2A67xsEE"
|
||||
export AWS_DEFAULT_REGION="us-east-1"
|
||||
ENDPOINT="--endpoint-url https://sqs.kube5s.ru/sqs/test001"
|
||||
```
|
||||
|
||||
### Создать очередь
|
||||
```bash
|
||||
aws sqs create-queue --queue-name myqueue $ENDPOINT
|
||||
```
|
||||
|
||||
### Список очередей
|
||||
```bash
|
||||
aws sqs list-queues $ENDPOINT
|
||||
```
|
||||
|
||||
### Отправить сообщение
|
||||
```bash
|
||||
aws sqs send-message \
|
||||
--queue-url https://sqs.kube5s.ru:443/sqs/test001/test001/myqueue \
|
||||
--message-body "Hello from CLI!" \
|
||||
$ENDPOINT
|
||||
```
|
||||
|
||||
### Получить сообщение
|
||||
```bash
|
||||
aws sqs receive-message \
|
||||
--queue-url https://sqs.kube5s.ru:443/sqs/test001/test001/myqueue \
|
||||
$ENDPOINT
|
||||
```
|
||||
|
||||
### Удалить очередь
|
||||
```bash
|
||||
aws sqs delete-queue \
|
||||
--queue-url https://sqs.kube5s.ru:443/sqs/test001/test001/myqueue \
|
||||
$ENDPOINT
|
||||
```
|
||||
|
||||
> **Совет:** `--endpoint-url` — единственное отличие от работы с Amazon SQS. Весь остальной код без изменений.
|
||||
|
||||
---
|
||||
|
||||
## curl
|
||||
|
||||
### Создать очередь
|
||||
```bash
|
||||
@@ -32,6 +81,8 @@ curl -s -u "SQSAK-test001-ae4dc8:J8mElXq8Nwww8iFRtGJCm8KfxM9XSTluTqS2A67xsEE" \
|
||||
"https://sqs.kube5s.ru/sqs/test001?Action=ReceiveMessage&QueueUrl=https://sqs.kube5s.ru/sqs/test001/test001/myqueue&Version=2012-11-05"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Python (boto3)
|
||||
|
||||
```python
|
||||
@@ -57,6 +108,8 @@ msgs = sqs.receive_message(QueueUrl=queue["QueueUrl"])
|
||||
print(msgs["Messages"][0]["Body"])
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Node.js (@aws-sdk/client-sqs)
|
||||
|
||||
```js
|
||||
@@ -77,10 +130,46 @@ const res = await sqs.send(new ReceiveMessageCommand({ QueueUrl: queue.QueueUrl
|
||||
console.log(res.Messages[0].Body);
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Проверка работоспособности
|
||||
|
||||
В репозитории есть `quick_test.sh` — скрипт для быстрой проверки сервиса.
|
||||
|
||||
**Требования:** `curl`, `bash`.
|
||||
|
||||
```bash
|
||||
bash quick_test.sh
|
||||
```
|
||||
|
||||
Что проверяет:
|
||||
1. Создание очереди
|
||||
2. Очередь видна в списке
|
||||
3. Отправка сообщения
|
||||
4. Получение сообщения (тело совпадает)
|
||||
5. Удаление очереди
|
||||
6. Очередь исчезла из списка
|
||||
|
||||
Ожидаемый вывод:
|
||||
```
|
||||
=== SQS Quick Test ===
|
||||
|
||||
✅ Создание очереди
|
||||
✅ Очередь в списке
|
||||
✅ Отправка сообщения
|
||||
✅ Получение сообщения
|
||||
✅ Удаление очереди
|
||||
✅ Очередь удалена из списка
|
||||
|
||||
Результат: 6 OK / 0 FAIL
|
||||
Всё работает!
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Особенности
|
||||
|
||||
- Полная совместимость с Amazon SQS API (AWS SDK работает без изменений — только endpoint меняется)
|
||||
- Физическая изоляция: каждый тенант получает отдельный pod, namespace, диск
|
||||
- Persistence: данные сохраняются при перезапуске
|
||||
- Web UI для визуального управления очередями
|
||||
|
||||
- **Полная совместимость с Amazon SQS API** — AWS SDK и CLI работают без изменений, только endpoint меняется
|
||||
- **Физическая изоляция** — каждый тенант получает отдельный pod, namespace, диск
|
||||
- **Persistence** — данные сохраняются при перезапуске
|
||||
- **Web UI** — визуальное управление очередями
|
||||
|
||||
Reference in New Issue
Block a user