Сучасна диджитал-освіта для дітей — безоплатне заняття в GoITeens ×
Mazda CX 30
×

26 жовтня Heroku відключає безкоштовні неактивні ресурси. Шукаємо заміну

Всім привіт, мене звати Олексій Михняк і сьогодні хочу поговорити про Heroku, а саме про те, що в Heroku вирішили закрити свої безкоштовні сервіси. 25 серпня 2022 року Heroku в своєму блозі написали, що не можуть справитись з неправомірним використанням своїх безкоштовних сервісів і тому прийняли рішення, що 26 жовтня видалять всі аккаунти і відповідно безкоштовні ресурси (Heroku Dynos, Heroku Postgres, Heroku Redis), де не було активності більше року. А починаючи з 28 листопада почнуть видаляти безкоштовні ресурси в активних аккаунтах, єдина альтернатива це перевести всі свої ресурси на найдешевший платний план Heroku Dynos — $7/місяць, Heroku Redis — $15/місяць, Heroku Postgres — $9/місяць. Особисто я використовував Heroku для своїх пет проектів, які запускаю від сили 1-2 рази на місяць (зазвичай, це телеграм боти), або для того, щоб показати демо версію міні стартапу та, звісно, планував використовувати у відео-курсі, аби всі охочі могли швидко і зрозуміло розгорнути свої сервіси. Зазвичай я розгортав Docker контейнер з підключенням до PostgresDB, а це $16/місяць для кожного проекту, що звісно дорогувато і не вартує того, тому я почав шукати альтернативи Heroku, про що і хочу сьогодні поговорити.

З основних вимог були наявність безкоштовних сервісів та інтуїтивний інтерфейс без 1000 кнопок і менюшок. Оскільки хочу запропонувати використовувати цей хостинговий сервіс початківцям і на мою думку краще не перенавантажувати відразу складним функціоналом, тому AWS, Azure, GC відразу відпадають. (звісно початківцям і не потрібно відразу розбиратися в розгортанні сервісу не на своєму ноутбуці, але коли ти можеш показати свої результати знайомим, то це відразу +100 до мотивації) Знайшов раніше невідомий мені хостинг Render та вирішив спробувати.

Heroku vs Render

Heroku дозволяє розгортати свої сервіси за допомогою стандартного CI/CD підходу, тобто створюється API ключ і надсилається за допомогою цього ключа необхідні ресурси в Heroku. Також підтримується GitOps підхід для GitHub, коли Heroku генерує webhook у вашому репозиторії і після змін (наприклад, коміт в main/master) сам запускає розгортання сервісу. Але, на жаль, Heroku підтримує з коробки лише Node.js, Ruby, Java, Scala, PHP, Python, Go, Clojure та окремо Docker контейнери і саме з ними є нюанси, оскільки потрібно створювати heroku.yml і вручну прописувати етапи збирання Dockerfile.

Redner зараз підтримує лише GitOps підхід, але відразу на GitHub та GitLab. З коробки підтримує Node.js, Python, Ruby, Elixir, Go та Rust і Docker контейнери, тобто Redner розуміє де знаходиться Dockerfile і сам починає збирати і розгортати контейнер. Ще з приємних бонусів в панелі користувача доступна можливість розгорнути будь яку попередню версію свого сервісу, що відкриває більше маневрів для експериментів.

Основні характеристики у використанні веб сервісів (Heroku Dynos в Heroku / Web Service в Render)

Для безкоштовного Веб сервісу існують обмеження, сервіс запускається після першого запиту і потім видаляється через x часу якщо більше не було запитів на нього. Нижче було проведено тестування розгорнутого .Net застосунку в Docker контейнері в європейському регіоні з підключенням до PostgresDB.



Heroku


Render


Час життя сервісу 30 хв


Час життя сервісу 15 хв


Перший запит 8-10 с (на основі 20+ запитів)


Перший запит 40-60 с (на основі 20+ запитів)


Середній час відповіді 68 мс (1000 запитів без затримок)


Середній час відповіді 72 мс (1000 запитів без затримок)


Середній час відповіді 806 мс (100 запитів з затримкою 30с)


Середній час відповіді 840 мс (100 запитів з затримкою 30с)


Кількість безкоштовних годин роботи сервісів 550 (без додавання кредитної картки) + 450 (після додавання кредитної картки)


Кількість безкоштовних годин роботи сервісів 750 (без додавання кредитної картки)


Кількість білдів за годину 75


Кількість безкоштовних годин білд сервера 400


Наявність логів тільки через CLI (доступ до логів через веб інтерфейс доступний тільки в платних версіях)


Наявність логів у веб інтерфейсі


Ресурси RAM 512 МБ, shared CPU


Ресурси RAM 512 МБ, shared CPU


Ціна найдешевшого тарифу $7/місяць


Ціна найдешевшого тарифу $7/місяць

PostgresDB



Heroku


Render


Обмеження на кількість записів 10000


Обмеження на кількість записів -


Обмеження на розмір бази 1GB


Обмеження на розмір бази 1GB


Час життя бази необмежений


Час життя бази 90 днів


Ресурси shared RAM (0 byte), shared CPU, 1GB storage


Ресурси RAM 256 Mb, shared CPU, 1GB SSD


Ціна найдешевшого тарифу $9/місяць


Ціна найдешевшого тарифу $7/місяць

Redis



Heroku


Render


Обмеження на розмір бази 25Mb


Обмеження на розмір бази 25Mb


Ціна найдешевшого тарифу $15/місяць


Ціна найдешевшого тарифу $10/місяць

Static Web Page

Статичні сторінки в Heroku теж використовують Heroku Dynos, тому їх потрібно переносити також, якраз побачив на dou статтю про тестування швидкості веб сторінок.

Для тесту використовувалась пуста react сторінка з логін формою:

Heroku (з першої спроби не спрацювала діагностика, потрібно було почекати 8-10с щоб запустився Heroku Dynos та CDN почав віддавати статичну сторінку)

Render

Висновки
На мою суб’єктивну думку Render має більш простий користувацький інтерфейс з більшою кількістю вбудованого функціоналу (відразу доступні логи, можливість розгортати попередні версії сервісів і тд). Для простих проектів все налаштування реально займає 2 кліки, що сподобається початківцям, оскільки не потрібно витрачати додаткові 2 місяці часу, щоб розібратися як розгорнути свій застосунок. З мінусів — доволі значна затримка на першому запиті (40-60с) та не дуже влучне ім’я Render, оскільки доволі складно щось знайти за такою загальною назвою, тому залишається сподіватися тільки на документацію, яка доволі непогано написана. Найдешевші тарифи мають не вищу ціну за Heroku. Тож, я спробую перевести свої інші пет проекти на Render та буду ділитися подальшими враженнями.

ПС. Хоча я не бачу перспективи використання як Heroku, так і Render в продакшені, але в них є потенціал для пет вроектів і міні стартапів.

ППС. Також веду свій телеграм канал, де розповідаю про технологічні новини, зазвичай це про AI, нові девайси або на космічну тематику, підписуйся :)

👍ПодобаєтьсяСподобалось1
До обраногоВ обраному2
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

На

aws

піднімав свій сервер. Так і не розібрався чому мені кожного дня нараховували по 10 центів, і це я начебто використовував усі безкоштовні сервіси.

В инвойсах показывается.

1. Раніше (років 2-3 назад) було багато випадків що взламували аккаунти і там піднімали різну фігню і тобі приходив рахунок
2. Я розглядав хостинг який можна показати людині без досвіду, aws виглядає не дуже простим для розуміння з першого погляду

Коментар порушує правила спільноти і видалений модераторами.

Коментар порушує правила спільноти і видалений модераторами.

Коментар порушує правила спільноти і видалений модераторами.

VDS(не VPS) за 4 бакса? Де такi цiни?

Коментар порушує правила спільноти і видалений модераторами.

Коментар порушує правила спільноти і видалений модераторами.

Підписатись на коментарі