Начало работы с Cloud Native Series 01. Что такое Cloud Native?
Начало работы с Cloud Native Series 01. Что такое Cloud Native?

Что такое облачное решение?

Простое понимание

У Cloud Native есть простое понимание: «облако» относится к облачному серверу, а «родное» — к прикладному программному обеспечению, поставляемому с облачным сервером. Это прикладное программное обеспечение может эффективно и эластично расширяться и сокращаться (имеется в виду увеличение или уменьшение количества серверов) и автоматически адаптироваться к новой среде с количеством серверов без необходимости эксплуатации, обслуживания или разработки.

Сценарии применения

Представьте себе сценарий: имеется система электронной коммерции, которая включает в себя модуль просмотра продуктов, модуль корзины покупок и модуль оплаты продуктов. Каждый модуль развертывает в общей сложности 10 000 серверов, всего 30 000 серверов. Потом придет Double 11, и этих серверов точно не хватит. Так как же это организовать, чтобы удовлетворить потребности Double 11? Тогда деятельность Double 11 можно разбить на:

  • Перед мероприятием: перед Double 11 предложите пользователям просмотреть товары и добавить их в корзину.
  • Активно: начиная с Double 11 пользователям предлагается размещать заказы непосредственно из корзины покупок.

После описанной выше декомпозиции нагрузка на доступ перед событием концентрируется на модулях просмотра продуктов и корзины покупок, а нагрузка на платежный модуль относительно невелика. Таким образом, на данный момент можно выделить половину серверов в платежном модуле. для просмотра продуктов и корзин покупок. А как насчет использования модуля? Ответ определенно да. Напротив, во время активности нагрузка на корзину и платежный модуль увеличивается. Мы также можем выделить половину сервера модуля просмотра товаров для корзины покупок и модуля оплаты. Благодаря разумному развертыванию, описанному выше, вы обнаружите, что мы можем обеспечить высокий уровень параллелизма без добавления новых серверов.

Облачный прототип

Если описанный выше сценарий будет реализован, необходимо обратить внимание на несколько ключевых моментов. Фактически, это прототипные характеристики облачных технологий.

  • Программу сначала следует разделить на модуль просмотра товаров, модуль корзины покупок и модуль оплаты товаров — позже эта идея развилась в микросервисы.
  • При десятках тысяч серверов строительство от компьютерного зала до сервера — довольно крупный проект. Более дешевый способ — использовать облако (инфраструктуру).
  • Серверы можно разворачивать произвольно, уменьшать с 10 000 до 5 000 и превращать в программы для других модулей — в этом и есть проявление контейнерной технологии.

Переопределение облачных возможностей

через вышеизложенное,мы знаеммикросервисы、инфраструктура、контейнер Изменениеоблачный Состав родной. На самом деле это не облачно Все определения родного, потому что Переопределение облачных Возможности привели к развитию архитектуры программного обеспечения в Интернете, которое быстро и широко развивалось. Не будет преувеличением сказать, что облачный. родной вызвал новые технологические инновации в Интернете. Поэтому у него должно быть более строгое определение:

Основные компоненты

Области, связанные с облачными технологиями, все еще развиваются быстрыми темпами, но шесть аспектов, показанных на рисунке выше, в целом согласованы в отрасли и могут быть выражены с помощью формул:

Облачный вариант =

Контейнеры + Микросервисы + бессерверные технологии + сервисная сетка Mesh) + непрерывная доставка/интеграция (DevOps) + облачная основа (Cloud)

  • контейнер(Containers): контейнер — это легкая технология виртуализации, которая облегчает быстрое создание и запуск операционных систем в облаке.
  • микросервисы (микросервисы): разделение большой системы на несколько независимо работающих подмодулей, чтобы облегчить настройку количества серверов в подмодулях в зависимости от трафика в облаке.
  • Бессерверность: Бессерверность не означает, что нет необходимости в сервере, но это означает, что нет необходимости уделять внимание Развертывание серверов, расширение и т. д., фокус разработчика на Бизнеса достаточно
  • Service Mesh: позволяет пользователям более точно и интеллектуально коррелировать связь между службами.
  • Непрерывная поставка/интеграция (DevOps): это руководящая идеология для эффективной совместной разработки, эксплуатации, обслуживания и тестирования, которая, конечно же, включает в себя ряд инструментов.
  • Облако: это форма крупномасштабного строительства компьютерного зала и сервера. Фундамент родной, без облака не было бы облачного родной

Краткая история облачной разработки

  • В 2010 году Пол Фримантл впервые написал в блоге о облачном родной, описывая это как написание приложения, которое ведет себя как облачная система;
  • В 2013 году Мэтт из Pivotal Первый крупный промоушен Стайна «облачного» нативная (CloudNative) концепция;
  • 2015, Мэтт Стайн в «Переезде в облачный» Книга родной Архитектуры определяет соответствие облачному. Несколько характеристик родной архитектуры: 12 факторов, микросервисы, гибкая архитектура, совместная работа на основе API и устойчивость к уязвимостям;
  • Фонд CNCF, основанный в 2015 году под руководством Google, в настоящее время объединяет более 100 компаний и учреждений, включая Amazon и Microsoft. Гиганты, такие как Cisco;
  • В 2017 году был запущен последний официальный сайт Pivotal. родной сводится к 4 ключевым моментам: DevOps+непрерывная доставка+микросервисы+контейнер;
  • В 2018 году CNCF обновил облачный роднойопределение,Пучок Сервисная сетка (Сервис Mesh) и декларативный API;

Разница между облачными и традиционными приложениями

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

boy illustration
Учебное пособие по Jetpack Compose для начинающих, базовые элементы управления и макет
boy illustration
Код js веб-страницы, фон частицы, код спецэффектов
boy illustration
【новый! Суперподробное】Полное руководство по свойствам компонентов Figma.
boy illustration
🎉Обязательно к прочтению новичкам: полное руководство по написанию мини-программ WeChat с использованием программного обеспечения Cursor.
boy illustration
[Забавный проект Docker] VoceChat — еще одно приложение для мгновенного чата (IM)! Может быть встроен в любую веб-страницу!
boy illustration
Как реализовать переход по странице в HTML (html переходит на указанную страницу)
boy illustration
Как решить проблему зависания и низкой скорости при установке зависимостей с помощью npm. Существуют ли доступные источники npm, которые могут решить эту проблему?
boy illustration
Серия From Zero to Fun: Uni-App WeChat Payment Practice WeChat авторизует вход в систему и украшает страницу заказа, создает интерфейс заказа и инициирует запрос заказа
boy illustration
Серия uni-app: uni.navigateЧтобы передать скачок значения
boy illustration
Апплет WeChat настраивает верхнюю панель навигации и адаптируется к различным моделям.
boy illustration
JS-время конвертации
boy illustration
Обеспечьте бесперебойную работу ChromeDriver 125: советы по решению проблемы chromedriver.exe не найдены
boy illustration
Поле комментария, щелчок мышью, специальные эффекты, js-код
boy illustration
Объект массива перемещения объекта JS
boy illustration
Как открыть разрешение на позиционирование апплета WeChat_Как использовать WeChat для определения местонахождения друзей
boy illustration
Я даю вам два набора из 18 простых в использовании фонов холста Power BI, так что вам больше не придется возиться с цветами!
boy illustration
Получить текущее время в js_Как динамически отображать дату и время в js
boy illustration
Вам необходимо изучить сочетания клавиш vsCode для форматирования и организации кода, чтобы вам больше не приходилось настраивать формат вручную.
boy illustration
У ChatGPT большое обновление. Всего за 45 минут пресс-конференция показывает, что OpenAI сделал еще один шаг вперед.
boy illustration
Copilot облачной разработки — упрощение разработки
boy illustration
Микросборка xChatGPT с низким кодом, создание апплета чат-бота с искусственным интеллектом за пять шагов
boy illustration
CUDA Out of Memory: идеальное решение проблемы нехватки памяти CUDA
boy illustration
Анализ кластеризации отдельных ячеек, который должен освоить каждый&MarkerгенетическийВизуализация
boy illustration
vLLM: мощный инструмент для ускорения вывода ИИ
boy illustration
CodeGeeX: мощный инструмент генерации кода искусственного интеллекта, который можно использовать бесплатно в дополнение к второму пилоту.
boy illustration
Машинное обучение Реальный бой LightGBM + настройка параметров случайного поиска: точность 96,67%
boy illustration
Бесшовная интеграция, мгновенный интеллект [1]: платформа больших моделей Dify-LLM, интеграция без кодирования и встраивание в сторонние системы, более 42 тысяч звезд, чтобы стать свидетелями эксклюзивных интеллектуальных решений.
boy illustration
LM Studio для создания локальных больших моделей
boy illustration
Как определить количество слоев и нейронов скрытых слоев нейронной сети?
boy illustration
[Отслеживание целей] Подробное объяснение ByteTrack и детали кода