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

Вид: 32919|Відповідь: 0

[Джерело] [Архітектура]. net/c# реалізує розподілену конфігурацію Key/Value store на основі Consul

[Копіювати посилання]
Опубліковано 2020-10-16 18:18:06 | | | |
У розподілених додатках часто необхідно змінювати властивості конфігурації, наприклад, оновлювати рядки з'єднання бази даних та адреси кешу. Якщо застосунків небагато, можна змінити їх вручну, коли є багато додатків, розподілена конфігурація дуже важлива. У цій статті пояснюється архітектура зберігання ключів/значення .net/c# на основі Consul для реалізації розподіленої конфігурації.

Встановити консула

Короткий вступ

Consul — це інструмент для виявлення та реєстрації сервісів, який є розподіленим і дуже масштабованим.

Consul переважно включає такі особливості:

  • Пошук сервісів: Підтримка реєстрації та виявлення сервісів як для протоколів HTTP, так і DNS.
  • Моніторинг перевірок: підтримує кілька медичних перевірок.
  • Зберігання ключів/значень: Підтримує розподілене зберігання даних KV через HTTP API.
  • Підтримка мультидата-центрів: підтримується будь-яка кількість дата-центрів.


Установки

Завантажити адресу:

Вхід за гіперпосиланням видно.

У цій статті використовується Windows 10 x64 як тестове середовище.

Після завантаження та розпакування запустіть його за допомогою команди cmd, код виглядає так:



Dev означає роботу в режимі розробки, і параметр -client може використовуватися для вказівки, до якої IP-адреси клієнт дозволено звертатися, наприклад, -client 127.0.0.1 означає, що його можна використовувати, і в режимі розробки дані не зберігаються.

(рекомендується режим розробки, кластерний режим для виробничих середовищ)



Доступ:http://127.0.0.1:8500/ui/dc1/servicesДив. нижче:



Інтерфейс KV

Адреса API-документації:

Вхід за гіперпосиланням видно.

Спочатку я використовую онлайн-веб-сторінку і створюю нову пару ключ/значення.

Отримайте значення через шлях GET запиту /v1/kv/:key.

http://127.0.0.1:8500/v1/kv/test



[
    {
        "LockIndex": 0,
        "Ключ": "тест",
        "Прапори": 0,
        "Value": "aXRzdnNlLmNvbQ==",
        "CreateIndex": 194,
        "ModifyIndex": 194
    }
]


  • CreateIndex — це внутрішнє значення індексу, яке позначає момент створення запису.
  • ModifyIndex — останній індекс, який змінює цей ключ. Цей індекс відповідає значенням заголовка, яке повертає X-Consul-Index у відповідь, і може бути встановлений як ? Параметр індексного запиту використовується для встановлення блокуючих запитів. Ви навіть можете виконувати блокуючі запити до всього піддерева магазину KV: а що як? recurse надає запит, і повернене значення X-Consul-Index відповідає останньому значенню ModifyIndex у префіксі; за допомогою блокуючого запиту ?index чекає, поки будь-який ключ у цьому префіксі не буде оновлено.
  • LockIndex — це кількість разів, коли ключ із замка був успішно отриманий. Якщо замок утримано, ключ сесії надасть сесію, яка володіє замком.
  • Ключ — це повний шлях входу.
  • Прапорці — це непрозорі беззнакові цілі числа, які можна прикріпити до кожного запису. Клієнти можуть обрати цю опцію, але вона має сенс для їхнього застосування.
  • Значення — це закодований блок даних у формі base64.


.NET/C# Ключ/Значення для читання та запису

Спочатку створіть проєкт .NET 4.6.1 і використайте nuget для встановлення необхідних пакетів, наступним чином:



Код виглядає так:



Зображення такі:



  • Ключ чутливий до регістру
  • Дублікат ключів, значення значення будуть перезаписані


(Кінець)




Попередній:Відлагодження .NET-програм за допомогою Notepad вдома на комп'ютері протягом десяти років
Наступний:Архітектура: ASP.NET Core динамічно налаштовує гарячі оновлення на основі Consul
Застереження:
Усе програмне забезпечення, програмні матеріали або статті, опубліковані Code Farmer Network, призначені лише для навчання та досліджень; Вищезазначений контент не повинен використовуватися в комерційних чи незаконних цілях, інакше користувачі несуть усі наслідки. Інформація на цьому сайті надходить з Інтернету, і спори щодо авторських прав не мають до цього сайту. Ви повинні повністю видалити вищезазначений контент зі свого комп'ютера протягом 24 годин після завантаження. Якщо вам подобається програма, будь ласка, підтримуйте справжнє програмне забезпечення, купуйте реєстрацію та отримайте кращі справжні послуги. Якщо є будь-яке порушення, будь ласка, зв'яжіться з нами електронною поштою.

Mail To:help@itsvse.com