Я пытаюсь развернуть набор API с помощью Api Gateway и реализовать код на Java, используя lambda. Хорошо ли иметь много (связанных, конечно) лямбда в одной банке (что я предполагаю сделать), или лучше создать единую банку для каждой лямбда, которую я хочу развернуть? (это станет беспорядком очень легко)Api Gateway, несколько лямбда в том же JAR
ответ
Это действительно вопрос вкуса, но есть несколько вещей, которые вы должны учитывать.
Прежде всего, существуют ограничения на то, насколько большой может быть одна Лямбда-загрузка (50 МБ на момент написания).
Во-вторых, существует также ограничение на общий размер всего всего загружаемого вами кода (в настоящее время 1,5 ГБ). Эти ограничения не могут быть проблемой для вашего случая использования, но они хорошо знают.
Следующее, что вам нужно учитывать, - это то, где вы хотите свои накладные расходы. Предположим, вы развертываете CRUD-интерфейс для одной Lambda, и вы передаете параметр «действие» из шлюза API, чтобы вы знали, какую операцию вы хотите выполнять при выполнении функции Lambda. Это добавляет небольшие накладные расходы на выполнение, так как вам необходимо направить действие на соответствующую операцию. Это, скорее всего, очень быстрая маршрутизация, но, тем не менее, она добавляет циклы процессора к выполнению вашей функции.
С другой стороны, развертывание одной и той же банки над несколькими функциями лямбда быстро приблизит вас к ограничениям, о которых я упоминал ранее, а также добавляет административные издержки при управлении вашими лямбда-функциями по мере роста этого числа. Разумеется, им можно управлять с помощью CloudFormation или cli-скриптов, но он все равно будет добавлять административные издержки.
Я бы не сказал, что есть право и неправильный способ сделать это. Посмотрите, что вы пытаетесь сделать, подумайте о том, что вам нужно для управления развертыванием и оттуда оттуда. Если вы ошибетесь, вы всегда можете начать с другого подхода.
Лично мне нравится очень маленькая служба Lambdas, которая делает внутреннюю маршрутизацию и обрабатывает больше, чем просто одну операцию, но они все еще очень малы и сосредоточены на задаче определенного типа, будь то CRUD для таблицы базы данных или управления выбранным несколько очень близких операций.
Там какой-то хороший совет по serverless.com
Как полиэтиленовым сказать, ответ «это зависит». Но они перечислены плюсы и минусы для 4 способов идти об этом:
- Microservices Pattern
- Услуги Pattern
- Монолитный шаблон
- Graph шаблон
https://serverless.com/blog/serverless-architecture-code-patterns/
- 1. Api Gateway: Субдомен AWS для интеграции лямбда
- 2. AWS Api Gateway:
- 3. Несколько API API API AWS в качестве триггера для одной и той же функции лямбда
- 4. Api gateway или No Api Gateway
- 5. Тайм-аут обработки в AWS API Gateway
- 6. AWS API Gateway Compressed Response
- 7. Google Charts Api Несколько диаграмм в том же холсте
- 8. Несколько ключей API в одном и том же Android-проекте
- 9. API Gateway - Get StatusCode
- 10. Can/will AWS API Gateway -> Улучшение производительности лямбда?
- 11. Лямбда-функция -> Api Gateway разрешающая способность переменной вручную
- 12. Несколько NSHTTPCookieStorage в том же приложении
- 13. API Gateway метод интегрируется с лямбда-функцией, но функция лямбда утверждает, что у нее нет триггеров
- 14. Значительная латентность, введенная API Gateway?
- 15. Spring Zuul API Gateway с Spring Session/Redis Authenticate and Route в том же запросе
- 16. Несколько ASP.NET Web API на одном и том же IIS
- 17. AWS API Gateway с угловым
- 18. OAuth for Amazon API GAteway
- 19. AWS API Gateway security
- 20. AWS Gateway навсегда называет функцию лямбда
- 21. AWS API Gateway Custom Authorizer AuthorizerConfigurationException
- 22. AWS API Gateway ARN
- 23. Изменение размера с использованием AWS лямбда в том же ковше
- 24. API Gateway CORS Issue
- 25. api gateway CORS setup
- 26. Простой прокси API Gateway
- 27. Несколько Графы() в том же запросе
- 28. Имея несколько выравниваний в том же тексте
- 29. Несколько Cassandra в том же самом узле
- 30. Несколько «И» в том же столбце
Хорошая ссылка. Я, как я уже упоминал в своем ответе, приземляюсь в спектрах «Шаблоны услуг». – polythene