Эта статья является зеркальной статьёй машинного перевода, пожалуйста, нажмите здесь, чтобы перейти к оригиналу.

Вид: 28399|Ответ: 1

[Источник] Архитектура: ASP.NET Core динамически настраивает горячие обновления на основе Consul

[Скопировать ссылку]
Опубликовано 16.10.2020 18:25:34 | | | |
ASP.NET Core реализует микросервисы, необходимо решить проблему конфигурационного центра. Независимо от того, микросервис это или нет, менять конфигурационный файл по одному с большим количеством узлов очень сложно, и сегодня я поделюсь лёгким решением для центра конфигурации на базе Consul. Горячие обновления профилей осуществляются без повторного размещения.

фон

Обычно конфигурации в .NET-приложениях хранятся в конфигурационных файлах, таких как App.config, Web.config или appsettings.json. Начиная с ASP.Net Core, появилась новая расширяемая конфигурационная структура, позволяющая хранить конфигурации вне файлов конфигурации и получать их из командной строки, переменных среды и других параметров.

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

Поэтому мы используем Consul для онлайн-настройки в реальном времени, что достигает цели реагирования в реальном времени, меняя только конфигурацию без перезапуска сервиса. Идея реализации основана на ключе/значении Consul, и несколько узлов Consul можно автоматически синхронизировать и настраивать, а наша программа — реализовать ConfigurationProvider и прослушивать изменения Consul.

Конфигурация консула

Для скачивания и установки вы можете обратиться к следующему:

[Архитектура]. net/c# реализует распределённую конфигурацию хранилища ключ/значение на основе Consul
https://www.itsvse.com/thread-9420-1-1.html

ASP.NET Конфигурация ядра

Сначала установите пакет nuget со следующей командой:



Измените Program.cs файл следующим кодом:



Для получения дополнительной информации о конфигурации, пожалуйста, обратитесь к следующему разделу:

Вход по гиперссылке виден.

Настройте адрес сервисного центра Consul и измените appsettings.json файл следующим образом:



Код контроллера следующий:



Начните проект, как показано ниже:





Поскольку мы в Consul не настраиваем значение теста, сборка пуста.

ОткройтеВход по гиперссылке виден.Настройте нужные файлы для проекта.

Адрес профиля, который читает проект:

"/WebApplication1/appsettings. Development.json»

Поэтому нам нужно создать новую папку «WebApplication1» и «appsettings». Development.json» файл, как показано ниже:



Значение следующее:



После сохранения мы обновляем сайт, как показано ниже:



Протестировали китайские иероглифы без проблем, как показано ниже:



Видно, что значение теста успешно получено, что реализует функцию динамической конфигурации, и файл конфигурации обновляется без перезапуска сайта.




Предыдущий:[Архитектура]. net/c# реализует распределённую конфигурацию хранилища ключ/значение на основе Consul
Следующий:【Архитектура】ASP.NET Core широко доступен на базе услуг Consul
Опубликовано 05.01.2022 14:42:56 |
Учитесь учиться
Отказ:
Всё программное обеспечение, программные материалы или статьи, публикуемые Code Farmer Network, предназначены исключительно для учебных и исследовательских целей; Вышеуказанный контент не должен использоваться в коммерческих или незаконных целях, иначе пользователи несут все последствия. Информация на этом сайте взята из Интернета, и споры по авторским правам не имеют отношения к этому сайту. Вы должны полностью удалить вышеуказанный контент с компьютера в течение 24 часов после загрузки. Если вам нравится программа, пожалуйста, поддержите подлинное программное обеспечение, купите регистрацию и получите лучшие подлинные услуги. Если есть нарушение, пожалуйста, свяжитесь с нами по электронной почте.

Mail To:help@itsvse.com