Центр конфигурации————Накос
Центр конфигурации————Накос

1: Что такое накос

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

Управление конфигурацией: информация о конфигурации приложения может храниться в центре конфигурации Nacos, а динамическое управление конфигурацией и выпуск оттенков серого могут быть реализованы через Nacos, тем самым реализуя динамическую настройку и развертывание приложения.

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

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

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

Пополнить:Который Служитьбудет использоватьсяnacos

  1. Service Mesh: Nacos можно использовать как сервис Панель управления Mesh реализует управление конфигурацией Служить, контроль потока, ухудшение предохранителей и другие функции.
  2. Даббо: Накос - это Даббо Версия 2.7.x центра регистрации Служить и Центра конфигурации может реализовать динамическое обнаружение и управление конфигурацией Служить через Nacos.
  3. Spring Cloud Alibaba: Nacos — это весна Cloud Один из основных компонентов Alibaba, который можно использовать со Spring. Интеграция с облаком позволяет выполнять обнаружение, балансировку нагрузки, управление конфигурацией и другие функции.

2: Nacos AP или CP?

Nacos поддерживает режимы AP и CP.,Вы можете выбирать в соответствии с конкретными сценариями использования. По умолчанию используется режим AP.,Вы можете переключить AP/CP, изменив файл конфигурации nacos.

В режиме AP Nacos гарантирует высокую доступность и масштабируемость, но не гарантирует строгую согласованность. В режиме CP Nacos гарантирует строгую согласованность, но может снизить доступность и масштабируемость.

В реальных приложениях выбор режима следует принимать на основе характеристик и потребностей бизнеса.

Если в распределенной системе согласованность определенных данных предъявляет очень высокие требования к бизнесу, например, финансы, платежи и другие сценарии, то вы можете выбрать режим CP.существоватьCPрежим,При возникновении сетевого раздела или сбоя,Чтобы обеспечить согласованность данных,Nacos автоматически изолирует и восстановит Служить. но,Это приведет к тому, что некоторые части Служить будут недоступны.,Это повлияет на доступность.

Если для некоторых служб, таких как веб-сайты, онлайн-игры и т. д., доступность важнее стабильности, вы можете использовать режим AP.существоватьAPрежим,Nacos будет уделять приоритетное внимание доступности Служить,Если произошел сетевой раздел или сбой,Nacos обеспечит определенную доступность,Обеспечьте максимальную согласованность данных. Хотя это может привести к несогласованности данных,Но наличие Служить гарантировано.,тем самым уменьшая воздействие на бизнес.

Третий: Каков принцип одновременного внедрения AP и CP в НАКО?

Nacos поддерживает режимы AP и CP в одном кластере. Причина такой конструкции заключается в том, что в настоящее время у Nacos есть два основных приложения в отрасли, а именно центр регистрации и центр настройки.

Центру регистрации необходимо предоставить возможности регистрации и обнаружения услуг. Если используется строгий алгоритм согласованности, это окажет определенное влияние на доступность. Если доступность центра регистрации не будет обеспечена, это повлияет на взаимный вызов всех служб. И если согласованность не может достичь строгой согласованности, самое большее возможно, что определенная служба больше не доступна, но она все равно будет вызвана. Теоретически произойдет сбой, и можно попробовать еще раз.

Для центра конфигурации его основная обязанность — обеспечение единообразия конфигурации. Даже потеря доступности (позднее нажатие) допустима, но разные машины получают разные конфигурации.

Поэтому Nacos поддерживает оба режима одновременно. В плане CP он использует JRaft (1.0 — это Raft), а в плане AP — Distro.

То есть,Nacos, чтобы поддерживать как центр регистрации, так и центр конфигурации, реализует режим CP через протокол JRaft и режим AP через протокол Distro, который может переключаться между двумя режимами.

Четвертый: как nacos реализует изменения в файлах конфигурации, которые может обнаружить облако?

На самом деле существует только два способа взаимодействия данных между клиентом и центром конфигурации: push или pull.

режим нажатияСразуклиенти Служить Создание терминалаTCPдлинная ссылка,Когда меняются данные по окончанию Служить,Немедленно передайте данные клиенту через это уже установленное давно соединение.

Преимущество длинных ссылок заключается в производительности в режиме реального времени. Как только данные изменяются, клиент может сразу это почувствовать. Но недостатком является то, что серверу необходимо поддерживать большое количество TCP-соединений, что отнимает много памяти и ресурсов ЦП, а также подвержено дрожанию сети и другим факторам.

вытащить шаблонСразу是клиентопрос,Проверьте, изменились ли данные, путем непрерывного опроса,Если есть изменения, верните данные обратно.

Преимущество опроса в том, что его относительно просто реализовать, но недостатки также очевидны. Опрос не может гарантировать передачу данных в реальном времени, а метод опроса также оказывает нагрузку на сервер.

Так какой же режим использует Nacos?

В версии Nacos1.x используется длинный опрос. Посмотрите, это не длинное соединение или опрос, а.长опрос(Long Polling)。 В Nacos2.0 используется длинное соединение gRPC.

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

Длинный опрос:

Общий процесс заключается в том, что клиент инициирует длинный запрос на опрос сервера Nacos. Nacos не возвращает результат немедленно, а приостанавливает запрос до тех пор, пока не произойдет изменение конфигурации или не истечет время ожидания ответа. При изменении конфигурации сервер Nacos ответит клиенту измененной информацией о конфигурации, и клиент снова инициирует новый длинный запрос опроса. Таким образом, клиент может воспринимать изменения конфигурации в режиме реального времени.

Этот метод позволяет избежать давления, вызванного непрерывным опросом сервера клиентом, и избежать необходимости поддерживать соединение в течение длительного времени. Он также может обеспечить конфигурацию в режиме реального времени. Однако недостатком длительного опроса является то, что он требует частых HTTP-запросов, что увеличивает нагрузку на сеть, а также может зависеть от таких факторов, как задержка в сети, в результате чего конфигурация не работает в таком режиме реального времени, как длинные соединения.  

Длинный опрос и долгое соединение:

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

Длинное соединение означает установление постоянного соединения между клиентом и сервером.,Благодаря этому соединению вы можете поддерживать статус связи в течение определенного периода времени.,Избегайте дополнительных накладных расходов, вызванных частым установлением и отключением клиента. в долгом разговоре,Между клиентом и устройствами Служить будет поддерживаться определенный механизм биения.,Обеспечить эффективность взаимодействия. поэтому,Процесс длительного соединения заключается в том, что сервер активно поддерживает соединение, а клиент пассивно принимает сообщения от сервера.

С точки зрения восприятия изменений данных в режиме реального времени длинные соединения более точны и быстрее, чем длинный опрос. Длинный опрос также может задерживаться.

На уровне протокола длинные соединения реализуются на основе TCP, а длинный опрос — на основе HTTP.

[ps: Некоторые знания взяты из онлайн-материалов]

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