Ниже приведены некоторые мысли о том, куда движется корпоративное программное обеспечение. Я начну с того, что мы знаем (фактов), распространю на предположения и наблюдения и сделаю из них возможные результаты. Если изменятся факты и предположения, изменятся и результаты. Я делаю их явными, чтобы мы могли вместе уточнить это.

Давайте начнем.

Что мы знаем?

  • Облако победило - облако было принято в качестве ключевого варианта развертывания. Вопросы конфиденциальности обсуждаются, но принимаются как нормальные, но привязка к поставщику по-прежнему вызывает беспокойство.
  • Контейнеры и Kubernetes (K8s) побеждают.
  • Мы сталкиваемся с острой нехваткой квалифицированных разработчиков и профессионалов DevOps. Этот дефицит будет и дальше усугубляться.
  • Программное обеспечение пожирает мир.

Предположения

  • Большинство приложений будут использовать хотя бы один API.
  • Архитектура микросервисов (MSA) становится архитектурным выбором «де-факто».

Наблюдения

  • Большинство приложений будут использовать хотя бы один API. Это изменит динамику производительности приложения. Хотя полоса пропускания увеличивается, задержка не увеличивается (см. Задержка лагает пропускную способность). Следовательно, для достижения приемлемой задержки большинство приложений лучше разместить в облаке.
  • Бессерверная версия снижает требуемый уровень квалификации программистов, расширяя потенциальный пул разработчиков.
  • По мере того как программное обеспечение берет на себя все более важные роли, уровень требуемых гарантий будет расти. Некоторые сертификаты проще получить в облаке.
  • Архитектуры на основе MSA и контейнеров занимают больше места (больше узлов и сложности). Чтобы они работали, им нужна наблюдаемость и опыт DevOps.
  • Бессерверная среда - естественная среда для развертывания MSA. Архитектуры на основе MSA можно легко перенести на бессерверную, поскольку функциональная декомпозиция уже выполнена.

Возможные результаты

  • Большинство приложений переместятся в облако. - Это вызвано сложностью развертывания k8s, отсутствием разработчиков и опыта DevOps, необходимостью быть рядом с API-интерфейсами для уменьшения задержек и стандартными преимуществами облака (экономия затрат, гибкость, более быстрое время вывода на рынок, самообслуживание).
  • API-интерфейсы и промежуточное программное обеспечение также будут иметь значительные стимулы для перехода в облако, чтобы избежать больших задержек.
  • Широкое распространение Kubunetes (k8s) у большинства поставщиков облачных услуг превратило k8s в уровень переносимости для облачных приложений.
  • У приложений в облаке будет два варианта: бессерверная (удобство использования) или K8s (переносимость) - бессерверная версия обеспечивает более высокий уровень абстракций, отказоустойчивости и масштабируемости. С другой стороны, K8s дает переносимость между облаками. Неясно, в каком из них будет больше всего приложений. Обычно выигрывает удобство использования. K8s пытается соответствовать бессерверному удобству использования.
  • Одно возможное будущее - это как Serverless, так и k8s, соответствующие одному и тому же бессерверному API, но k8s предстоит многое наверстать (особенно с сопоставлением широкого спектра серверов промежуточного программного обеспечения, таких как брокеры сообщений, базы данных и т. Д., Поддерживаемых платформами промежуточного программного обеспечения).
  • Промежуточное программное обеспечение находится под давлением. Хотя k8 оставляет место для сосуществования другого промежуточного программного обеспечения, бессерверное программное обеспечение уничтожит большинство промежуточного программного обеспечения. Даже оставшееся промежуточное ПО должно будет жить в облаке рядом с остальными облачными сервисами, API и приложениями.
  • Появится новый класс промежуточного программного обеспечения, которое работает поверх бессерверного ПО или k8s. Например, большинство промежуточного программного обеспечения представляет собой набор служб, а вместо этого они могут быть набором бессерверных функций. Неясно, будут ли поставщики облачных услуг принять их или бороться с ними. Если они будут бороться, они могут столкнуться с давлением антимонопольного законодательства точно так же, как когда Microsoft приняла Windows. Этот уровень вряд ли будет контролироваться поставщиками облачных услуг. Например, когда Windows взорвалась, Microsoft пыталась управлять приложениями поверх окон, и только частично успешно. Apple не пыталась контролировать разработчиков iOS, создающих приложения, и это было одним из секретов их успеха. Позже сообщество разработчиков становится рвом против ОС Windows Mobile.

Надеюсь, это было полезно. Я хотел бы услышать, что вы думаете, особенно если вы не согласны.

Если вам это понравилось, возможно, вам понравится мой пост Прогнозирование будущего блокчейна: систематический анализ ».

📝 Прочтите этот рассказ позже в Журнале.

🗞 Просыпайтесь каждое воскресенье утром и слышите самые интересные истории, мнения и новости недели, ожидающие в вашем почтовом ящике: Получите заслуживающий внимания информационный бюллетень›