Отказ от «бесплатного уровня» добавляет еще одну часть наследия Heroku.
Отказ от «бесплатного уровня» добавляет еще одну часть наследия Heroku.

Автор Тина, Лю Чжиюн

25 августа Heroku опубликовала уведомление, в котором говорилось, что в целях предотвращения мошенничества и злоупотреблений она прекратит предоставлять бесплатные планы продуктов и закроет бесплатные динамометры и услуги передачи данных, начиная с 28 ноября 2022 года. В будущем она сосредоточится на основных клиентах.

Бесплатный план Heroku открыл двери для многих людей, которые хотят войти в технологическую индустрию.

Heroku — это платформа как услуга (PaaS), одна из первых облачных платформ, созданных в 2007 году, которая позволяет разработчикам переносить репозиторий git в облако, а затем волшебным образом получать URL-адрес где-то работающего приложения. Один разработчик сказал, что это волшебство сыграло важную роль катализатора в его карьере: «Когда я был студентом, не имел кредитной карты и был беден, бесплатный план Heroku помог открыть дверь к настоящему пониманию того, как работают веб-сайты. Что, если я никогда не буду там, где я есть? сегодня без Heroku, и я действительно не могу выразить, насколько это важно для моей карьеры сейчас!»

Немало таких людей, как он, изучают программирование с помощью Heroku. В ежегодном отчете разработчиков StackOverflow за 2022 год в этом году есть вопрос об «облачных платформах», чтобы понять, какие разработчики облачных платформ в основном разработали в прошлом году. В группе «Обучение программированию» Heroku заняла первое место с 35,24%, обогнав Google, AWS и Microsoft.

Фактически, этот революционный продукт технически застопорился, и его продукт существует только по названию. Бывший сотрудник Heroku написал на HN: «Вам придется вернуться к журналу изменений Heroku, чтобы найти что-нибудь, кроме обновления языковой версии или функции. Удаленный контент. : https://devcenter.heroku.com/changelog Я думаю, что заморозка функций произошла в 2018 году».

В апреле этого года в Heroku также произошел серьезный инцидент с безопасностью, вызвавший бурную реакцию сообщества, когда злоумышленник получил доступ к основной базе данных Heroku (в наши дни называемой core-db) и раскрыл ее содержимое, включая хешированные пароли и секреты для интеграции с GitHub.

Теперь, всего несколько месяцев спустя, Heroku снова огорчила сообщество, отключив бесплатный план.

В связи с этим один разработчик сказал: «Для меня Heroku мертв, и я вижу, как дверь за дверью в технологии прочно закрываются и запираются».

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

Хотя Heroku находится в упадке, он оставил наследие в современной индустрии программного обеспечения.

Каково наследие Heroku?

Heroku была основана в 2007 году тремя разработчиками Ruby (Джеймсом Линденбаумом, Адамом Виггинсом и Орионом Генри) и была приобретена всего три года спустя гигант SaaS Salesforce, наконец, одолел VMware и приобрел Heroku за 212 миллионов долларов. На тот момент в компании работало всего 30 человек. .

В 2011 году соучредитель Heroku Адам Виггинс выпустил знаменитое «Приложение Двенадцати Факторов», основанное на его опыте хостинга и эксплуатации миллионов приложений. В то время они даже не ожидали, что этот манифест станет учебным пособием по разработке SaaS-приложений в последующие годы. В то же время это также укрепило позиции Heroku в области PaaS и стало краеугольным камнем разработки стандартизированных облачных приложений.

Джейсон Уорнер, руководитель технического отдела Heroku, сказал: «Я считаю, что Heroku был самым революционным продуктом в период с 2014 по 2017 год и оказал большое влияние на индустрию веб-разработки. Это также был один из самых противоречивых проектов своего поколения. это настолько опередило свое время, что в то время казалось волшебством, и люди были глубоко впечатлены этим».

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

Heroku Это первый продукт, который называется «ориентированным на приложения» и помогает приложениям мигрировать в облако в больших масштабах. Именно вокруг передовой концепции «прикладно-ориентированности» Heroku Владел им с самого начала и до сих пор Приходить Все очень заманчивоиз Функция:Пользователям не нужно заботиться об инфраструктуре приложения, Heroku Отвечает за поддержание всего, что за этим стоит.

За этим, казалось бы, простым предложением скрывается огромная сложность. Просто представьте себе дилемму, которую оно ставит перед вами после того, как в определенном программном обеспечении или системе возникает уязвимость безопасности, или вам нужно поддерживать экземпляр базы данных, когда вы хотите использовать службу базы данных. В Heroku вам не нужно беспокоиться обо всех этих неприятностях. Пользователи могут напрямую начать с языка разработки, выбрать соответствующий стек технологий и разместить приложение в облаке с помощью простой команды, такой как Heroku create. Все основные языки разработки можно найти в Heroku. Автоматический запуск развертывания и доставки программного обеспечения в результате изменений кода, четкие рабочие процессы и разнообразные стратегии выпуска — это функции, о которых DevOps мечтали многие годы вперед.

«Что поразительно, так это развертывание Git push», — сказал Линден Баум, соучредитель Heroku, а теперь партнер стартап-акселератора Heavybit. «Это основная идея, которой люди научились у Heroku, и она используется для многих вещей, о которых они думали. Мы были обязаны это сделать. Не волнуйтесь. Наша цель — не мазать свиней помадой, а переосмыслить, как решить эту проблему».

Успешны ли продажи в Salesforce?

Некоторое время назад кто-то задал в Твиттере не очень простой вопрос: «Heroku — это успех или провал?»

Ответ на этот вопрос разделился на два лагеря, и с обеих сторон участвует множество людей. Некоторые люди думают, что Heroku потерпела неудачу, но другие думают наоборот — они думают, что Heroku — это абсолютный успех.

С точки зрения успеха, продажа Salesforce за 212 миллионов долларов была явной победой. Но с точки зрения долговечности продукции и надежных отраслевых технологий она потерпела неудачу.

Самое очевидное в продаже Salesforce за 212 миллионов долларов заключается в том, что в результате приобретения такого масштаба некоторые люди становятся богатыми, а некоторые новые сотрудники получают высокотехнологичные зарплаты и щедрые льготы.

Heroku приживается на удивление хорошо. Учитывая, что продукт практически не менялся в течение многих лет, а также то, что на рынке появилось много новых участников и он принял большую конкуренцию в области облачных вычислений, Heroku по сей день остается надежной платформой. С этим продуктом знакомы многие разработчики, а его привязка к вендору минимальна, поэтому разработчикам не нужно заниматься работой/инфраструктурой непрофильных сервисов предприятия. Каждый крупный поставщик облачных услуг запустил новые сервисы, обслуживающие уровень PaaS (например, Amazon, там не один), но до сих пор лишь немногие могли сравниться с оптимизированными рабочими процессами и простотой операций Heroku.

Помимо этого, эта компания делает много потрясающей работы.

  • Аутсорсинг эксплуатации и обслуживания:длинныйк Приходить,Трудно существовать развертывать программное обеспечение в Интернете. позже,PHP Когда он вышел, он имел краткую грамматику и простой процесс и завоевал весь мир. Однако у него также было много недостатков. развернуть универсальный из стека было очень сложно, и в то время Rails Необходимо установить балансировщик нагрузки для обеспечения обратного прокси-сервера и CGI для каждого сервера. процесса и может отслеживать и выполнять все необходимые операции в любое время. Хероку Эта задача значительно упрощена,Это позволяет разработчику сосредоточиться на создании программного обеспечения.,Вместо существования конфигурации и работающей инфраструктуры. существует сегодняшний мир,Это явно преимущество,Но тогда существование было не таким.
  • Postgres:Postgres Рост Heroku за последнее десятилетие был обусловлен многими факторами, включая развитие ее основных преимуществ и относительный спад ее конкурентов, но благодаря тому, что Heroku стала основной частью предложения платформы и продвигала ее на высоком уровне, Heroku стал важной частью платформы.
  • контейнер:мало кто это помнит,но Heroku Контейнеры запускались с тех пор, как они были еще популярны, с использованием LXC как это Cedar Основная технология стека.
  • CLI:и Git То же, что и он сам, Heroku из CLI Это также очень важная часть продукта. Юникс Инструменты командной строки существуют уже несколько десятилетий, но одна компания запустила специальный CLI Он по-прежнему очень креативен и быстро получил распространение.
  • DX и CLI:CLI к И широкая ориентированность Разработчикизпродукта, семена того, что в конечном итоге превратилось в DX изсемя,сейчассуществовать DX Она стала специализированной отраслью технологической индустрии.
  • Buildpack:Buildpack Как писать из приложения общие формулы на конкретном языке, Dockerfile Его предшественник также можно назвать более подходящим уровнем абстракции. существовать Cedar Стек из Начальный этап, кастомизация Buildpack Пользователям оказана поддержка. В настоящее время Хероку Некоторые другие поставщики облачных вычислений также поддерживают эти технологии, например Digital Ocean и GCP。

Это довольно впечатляющий список — даже одна или две из них оставят в мире больший след, чем большинство технологических компаний.

Тем не менее, эти проекты также имеют общую тенденцию: хотя их идеи великолепны и оставят неизгладимое впечатление на то, как сервисы будут развертываться в будущем, ни один из них не приносит устойчивой остаточной ценности самому продукту Heroku. Другие платформы ухватились за эти проекты. концепции и пожинали плоды, и даже если оставить в стороне бизнес-аспекты, Heroku не будет приписана никакая конкретная технология. Хотя Docker, возможно, и обречена как компания, на протяжении десятилетий ее будут помнить как дедушку развертывания на основе контейнеров. Будущие истории 2010-х годов будут говорить об эволюции Docker в OCI, но Heroku в лучшем случае был в сноске.

Heroku — это идеальная фабрика идей для облачных вычислений — такие концепции, как «Приложение двенадцати факторов», Resistance и DX, выдержат испытание временем, но среди их бенефициаров мало кто понимает, как они связаны с Heroku.

воображение и реальность

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

Стек «Кедр» — поистине произведение настоящего гения. Предыдущие стеки Aspen и Bamboo были очень ограничены и могли поддерживать только определенные версии определенных стеков со множеством особых условий. Cedar делает Heroku платформой, на которой можно запускать все — пользователи могут использовать свои собственные стеки через Buildpacks и Procfiles, а ее сложный внутренний конечный автомат и уровень маршрутизации делают приложения, работающие на нем, чрезвычайно мощными.

В 2012 году темпы реализации Cedar были очень хорошими, и хотя это был огромный успех, его считали лишь первым шагом в более амбициозном проекте. Вскоре он будет внедрен в программное обеспечение, способное работать с различными формами и размерами, и теперь контейнер объемом 512 МБ — это лишь первый включенный вариант. Даже самые крупные приложения обработки данных могут быть развернуты в контейнерах с 10 или 100 ГБ памяти, вплоть до самых маленьких одноразовых облачных вычислений, требующих всего несколько мегабайт. Настолько быстро и легко, что не использовать Heroku было бы безумием.

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

Уникальность самостоятельного хостинга

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

Это будет анти-Amazon Cloud Technology. Цель Heroku — скрыть тысячи сложных, пересекающихся примитивных концепций от облачных технологий Amazon до того, как новые пользователи впервые войдут в систему. Они начали с базового мастера git push Heroku и одного приложения dyno, но по мере развития их программного обеспечения и усложнения требований появлялись новые примитивы, когда они были нужны, такие как использование VPC с правилами входа/выхода, настраиваемые хосты с альтернативными базовые изображения или архитектуры. Доступ по SSH, статический IP-адрес и многое другое. Как и лук, его можно чистить слой за слоем.

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

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

Проверка не удалась

Итак, что случилось? Все составляющие успеха уже заложены, поэтому неспособность реализовать амбициозную концепцию не является чем-то само собой разумеющимся.

  • Операции в беде:Cedar После входа из-за каких-то неконтролируемых факторов (США-Восток-1 были особенно плохими в тот период), а также внутренние факторы (какое-то время Heroku Кажется, каждый день бывает плохойизразвертывать),Вызывали частые поломки продукции.,Оно было модернизировано до такой степени, что стало ответственностью за выживание. продуктиз задание отменено,Вместо этого это верно. Операции из поддержки - настройка метрик, оповещений, процессы развертывания безопасности.,и широко наращивать оперативный потенциал.
  • Цикл продукта:особенно в первые дни,Институциональной основы для реализации новых функций не существует. Это возможно из,Но часто вам нужно сделать запрос на включение самостоятельно или отправить запрос кому-то, чтобы помочь вам внести изменения. Даже если есть сильный стимул продвигать новые функции,Это также часто исходит от организаций / Службы исчезли на границе. Хероку Существуют также отвратительные ситуации деградации, такие как построение ядра организационных функций. API выше,Стал отдельным микросервисом,Это связано с тем, что не существует механизма, позволяющего сделать его более интегрированным.
  • У Docker туннельное видение:Docker Первая версия вызвала такую ​​большую сенсацию и широкий интерес, что касается Heroku У многих людей это порождает нездоровую одержимость. Хероку «Мы усвоили пораженческий настрой», — сказал бывший сотрудник. Docker Контейнеры — это будущее, а то, что мы делаем, — это прошлое. «В некотором смысле это верноиз, но Dockerfile Все-таки очень низкий уровень абстракции, низкий уровень несколько нежелателен. Сейчас мы видим, что контейнерная технология стала краеугольным камнем многих стеков, но в большей степени это примитивная технология со множеством технологий, которые могут повысить ее эффективность. существованиемного способов, Buildpack Верно Разработчик приложений - это лучший уровень абстракции, и им не нужно ничего писать Dockerfile, просто используйте Gemfile、Cargo.toml или go.mod Подождите, пока в стеке появятся общие инструменты, а затем лучший процесс сборки выяснит, как «запечь» его в развернутый образ. С этого момента, если необходимо обновить базовый уровень, какой-либо язык программирования или дополнительный уровень / Обновления на уровне исправлений можно выполнять в широком масштабе без необходимости настройки каждого элемента. Dockerfile。
  • Следующее исправление стека:Heroku изStack — это дерево с именем из. Осина, Бамбук, Кедр. Кедр Сравнивать Bamboo С качественным скачком, Хотя Heroku Следующая цель — построить Сравнивать Cedar Лучше из стека, как Cedar Сравнивать Bamboo Хорошо, но в этом случае сотрудник будет Cedar Поскольку прошлое из семени существования похоронено в их умах, это не позволяет им правильно вкладывать значительные средства. Оглядываясь назад в прошлое, можно сказать, что, судя по нынешней интеграции доступных технологий, возможно, не существует стека, который мог бы Cedar Гораздо лучше, например Cedar верно Bamboo Таким образом. Лучше сосредоточиться на постепенных улучшениях. Cedar вместо того, чтобы искать какую-то «волшебную пулю» на горизонте.
  • зачинатель / Отличия операторов: Как крупная компания с сильными внутренними фондами, так и небольшая компания, было время, когда у нас была довольно уникальная ситуация: мы наняли группу сотрудников, которые тратили много времени на эксперименты, прототипирование и творчество. Это похоже на управление небольшой лабораторией Bell Labs или Xerox внутри компании. PARC。через забор,Эти упрямые сервисные инженеры,Они часто заняты решением операционных проблем.,Редко появляется. У нас нет возможности запустить все в производство,в то же время,Операционному персоналу также не хватает времени и энергии для внесения существенных улучшений. В результате получилась очень классная внутренняя демонстрация.,Но можно ожидать, что,Они ничего не сделают.

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

Ссылки:

Следующая глава о Heroku:

https://blog.heroku.com/next-chapter

https://xeiaso.net/blog/rip-heroku

Как разобраться в 12-факторном приложении, предложенном Heroku?

https://mp.weixin.qq.com/s/EUPo12ZPpBp_P1b7wouYtw

Упадок Хероку:

https://www.infoq.cn/article/gvcgP6XitdHjy169oAk5

https://brandur.org/nanoglyphs/033-heroku

нажмите внизуПрочитайте оригинальную статьюдоступ InfoQ Официальный сайт для более интересного контента!

Рекомендуемые статьи сегодня

Отсутствие культуры разработки программного обеспечения ставит Volkswagen в беду и отстраняет генерального директора

Я рад, что решительно отказался от SwiftUI: он недостаточно зрелый

Nvidia в ответ «сократила поставки некоторых высокопроизводительных графических процессоров в Китай»; инженер с месячной зарплатой в 36 000 долларов был уволен за написание в среднем 7 строк кода в день, а босс взломал более 40 финансовых учреждений в 12 странах; лет и заработал миллионы, был приговорен Q News |

После четырех лет работы над базами данных в Alibaba Damo Academy позвольте мне рассказать о реальной ситуации. Интервью с превосходной технической командой |

boy illustration
Неразрушающее увеличение изображений одним щелчком мыши, чтобы сделать их более четкими артефактами искусственного интеллекта, включая руководства по установке и использованию.
boy illustration
Копикодер: этот инструмент отлично работает с Cursor, Bolt и V0! Предоставьте более качественные подсказки для разработки интерфейса (создание навигационного веб-сайта с использованием искусственного интеллекта).
boy illustration
Новый бесплатный RooCline превосходит Cline v3.1? ! Быстрее, умнее и лучше вилка Cline! (Независимое программирование AI, порог 0)
boy illustration
Разработав более 10 проектов с помощью Cursor, я собрал 10 примеров и 60 подсказок.
boy illustration
Я потратил 72 часа на изучение курсорных агентов, и вот неоспоримые факты, которыми я должен поделиться!
boy illustration
Идеальная интеграция Cursor и DeepSeek API
boy illustration
DeepSeek V3 снижает затраты на обучение больших моделей
boy illustration
Артефакт, увеличивающий количество очков: на основе улучшения характеристик препятствия малым целям Yolov8 (SEAM, MultiSEAM).
boy illustration
DeepSeek V3 раскручивался уже три дня. Сегодня я попробовал самопровозглашенную модель «ChatGPT».
boy illustration
Open Devin — инженер-программист искусственного интеллекта с открытым исходным кодом, который меньше программирует и больше создает.
boy illustration
Эксклюзивное оригинальное улучшение YOLOv8: собственная разработка SPPF | SPPF сочетается с воспринимаемой большой сверткой ядра UniRepLK, а свертка с большим ядром + без расширения улучшает восприимчивое поле
boy illustration
Популярное и подробное объяснение DeepSeek-V3: от его появления до преимуществ и сравнения с GPT-4o.
boy illustration
9 основных словесных инструкций по доработке академических работ с помощью ChatGPT, эффективных и практичных, которые стоит собрать
boy illustration
Вызовите deepseek в vscode для реализации программирования с помощью искусственного интеллекта.
boy illustration
Познакомьтесь с принципами сверточных нейронных сетей (CNN) в одной статье (суперподробно)
boy illustration
50,3 тыс. звезд! Immich: автономное решение для резервного копирования фотографий и видео, которое экономит деньги и избавляет от беспокойства.
boy illustration
Cloud Native|Практика: установка Dashbaord для K8s, графика неплохая
boy illustration
Краткий обзор статьи — использование синтетических данных при обучении больших моделей и оптимизации производительности
boy illustration
MiniPerplx: новая поисковая система искусственного интеллекта с открытым исходным кодом, спонсируемая xAI и Vercel.
boy illustration
Конструкция сервиса Synology Drive сочетает проникновение в интрасеть и синхронизацию папок заметок Obsidian в облаке.
boy illustration
Центр конфигурации————Накос
boy illustration
Начинаем с нуля при разработке в облаке Copilot: начать разработку с минимальным использованием кода стало проще
boy illustration
[Серия Docker] Docker создает мультиплатформенные образы: практика архитектуры Arm64
boy illustration
Обновление новых возможностей coze | Я использовал coze для создания апплета помощника по исправлению домашних заданий по математике
boy illustration
Советы по развертыванию Nginx: практическое создание статических веб-сайтов на облачных серверах
boy illustration
Feiniu fnos использует Docker для развертывания личного блокнота Notepad
boy illustration
Сверточная нейронная сеть VGG реализует классификацию изображений Cifar10 — практический опыт Pytorch
boy illustration
Начало работы с EdgeonePages — новым недорогим решением для хостинга веб-сайтов
boy illustration
[Зона легкого облачного игрового сервера] Управление игровыми архивами
boy illustration
Развертывание SpringCloud-проекта на базе Docker и Docker-Compose