Ця стаття є дзеркальною статтею машинного перекладу, будь ласка, натисніть тут, щоб перейти до оригінальної статті.

Вид: 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# реалізує розподілену конфігурацію Key/Value store на основі 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# реалізує розподілену конфігурацію Key/Value store на основі Consul
Наступний:【Архітектура】ASP.NET Core дуже доступний на основі послуг Consul
Опубліковано 05.01.2022 14:42:56 |
Вчитися вчитися
Застереження:
Усе програмне забезпечення, програмні матеріали або статті, опубліковані Code Farmer Network, призначені лише для навчання та досліджень; Вищезазначений контент не повинен використовуватися в комерційних чи незаконних цілях, інакше користувачі несуть усі наслідки. Інформація на цьому сайті надходить з Інтернету, і спори щодо авторських прав не мають до цього сайту. Ви повинні повністю видалити вищезазначений контент зі свого комп'ютера протягом 24 годин після завантаження. Якщо вам подобається програма, будь ласка, підтримуйте справжнє програмне забезпечення, купуйте реєстрацію та отримайте кращі справжні послуги. Якщо є будь-яке порушення, будь ласка, зв'яжіться з нами електронною поштою.

Mail To:help@itsvse.com