Производительность BoltDB в качестве внутренней базы данных

Я думаю об использовании BoltDB в качестве основной базы данных и у меня мало вопросов с моим кодом Go; Также нужно ваше мнение об использовании BoltDB в качестве основной внутренней базы данных.

  1. Я использую Go / net / http, и использую boltDb в качестве глобальной переменной.
  2. Когда программа запускается, она будет читать BoltDB, и файл будет открыт, пока программа не завершится.
  3. Когда запросы (http) отправляются программе, она получает доступ к BoltDB. (HandleFunc)
  4. Я не использовал ни одного канала.

Q1. Самый важный вопрос, способен ли BoltDB к производству с 1000 одновременных соединений? Q2. Если были параллельные запросы на запись, будет ли BoltDB автоматически обрабатывать один за другим?

Огромное спасибо. Я новичок в Go и BoltDB, и мне интересно, правильно ли я использую DB.

1 ответ

Решение

A1. Да, мы используем его для более чем 1000 одновременных подключений.

A2. Да, bolt является поточно-ориентированным, когда вы вызываете db.Update, он блокирует базу данных, поэтому вы знаете, что ваши данные всегда будут согласованы.

Также подсказка, никогда не делайте никакой тяжелой работы внутри функции обновления.

Другие вопросы по тегам