как я могу подключить мою базу данных Heroku к бессерверной структуре

Я использую бессерверную структуру, чтобы создать одну из моих рубиновых служб как бессерверную.

Моя текущая инфраструктура использует фреймворк Ruby on rails.

Теперь мне нужно настроить базу данных в файле serverless.yml. Так что любая помощь в этом отношении будет оценена по достоинству.


person Chitra    schedule 19.02.2019    source источник


Ответы (2)


На данный момент бессерверная структура не поддерживает настройку базы данных Heroku Postgres.

Если вы хотите подключиться к базе данных Heroku Postgres с помощью лямбда-выражения, решение описано здесь https://mattwelke.com/2019/01/06/free-tier-managed-sql-with-aws-lambda-and-heroku-postgres.html < / а>

Пример находится здесь

Также вы можете попробовать использовать Amazon Aurora Serverless с PostgreSQL (сейчас это предварительная версия). Вы сможете настроить бессерверную конфигурацию Amazon Aurora Serverless в serverless.yml в раздел ресурсы

person iokhotnikov    schedule 20.02.2019
comment
Я просмотрел эти ссылки, но я не нахожу решения для рубина. Мое приложение уже запущено на heroku, поэтому я не могу использовать другие службы БД. - person Chitra; 20.02.2019
comment
@Chitra Я автор сообщения в блоге о подключении Lambda к Heroku Postgres. Приведенные там методы должны работать на любом языке программирования. Вам просто нужно настроить пул подключений и убедиться, что вы включили веб-перехватчик, чтобы учетные данные были актуальными. С тех пор, как я написал этот пост, я обнаружил также управляемую службу PostgreSQL Elephant SQL. Их на самом деле проще использовать с Lambda, поскольку они не меняют учетные данные автоматически. Если вы в конечном итоге попытаетесь создать приложение Ruby Lambda, ознакомьтесь с этим руководством по Ruby (serverless.com/blog/api-ruby-serverless-framework). - person Matt Welke; 09.03.2019
comment
@Welkie, я искренне ценю вашу работу по подключению Lambda к Heroku Postgres. Спасибо за блог, который вы создали. Во время настройки подключения к базе данных у меня возникли проблемы с установкой собственного расширения gem-кода pg в лямбда-среде AWS. Сейчас это решено. - person Chitra; 11.03.2019
comment
Рад, что вы разобрались! Я рекомендую написать в блоге об этом, потому что вы будете удивлены, насколько сложно найти ответы на проблемы, с которыми мы сталкиваемся, когда мы смешиваем сервисы таким образом. Я, например, понятия не имею, как решить проблемы с расширениями Ruby gem на Lambda. Если у вас сейчас нет собственного блога, вы можете опубликовать его на Medium. - person Matt Welke; 11.03.2019

Здесь я размещаю ответ на свой вопрос.

Я использую гем "pg" и "activerecord".

с помощью этого - ActiveRecord::Base.establish_connection(your_heroku_database_url) я могу подключить мою базу данных heroku.

person Chitra    schedule 22.02.2019