вход в sql vs файлы vs aws, который быстрее в приложениях c # - PullRequest
0 голосов
/ 01 ноября 2019

Пожалуйста, помогите мне понять, какой из них лучше для ведения журнала производительности. вход в sql vs файлы vs aws, что быстрее в приложениях c #

1 Ответ

1 голос
/ 01 ноября 2019

Если я правильно понимаю, вы хотите записать полезную информацию из своего приложения (C #), где-нибудь, чтобы иметь возможность ссылаться на нее (предположительно, когда что-то идет не так или извлекать информацию для аналитики).

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

В качестве показателя порядка с точки зрения производительности для нескольких случаев будет

  1. Файл журнала на том же диске, что и ваша программа, и записывается в том же процессе
  2. Файл журнала на подключенном диске на том же компьютере, на котором выполняется ваша программа и который записывается в том же процессе
  3. Журнал записывается в базу данных, которая находится на том же компьютере (localhost), что и программа
  4. Журнал записывается в базу данных, которая находится на другом компьютере, но в локальной сети
  5. Журнал записываетсяна AWS, который, очевидно, не будет находиться в вашей локальной сети.
  6. ...

При этом есть и другие соображения. Например, БД в локальной сети с высокой пропускной способностью на мощной машине может писать быстрее, чем машина с низкой конфигурацией (например, обычный ноутбук), имеющая БД и программу. Аналогичным образом, использование Direct Connect или оптоволоконной линии между AWS и локальной сетью повышает производительность во много раз. Таким образом, ответ не является прямым, многие факторы способствуют изменению порядка. Самый безопасный вариант - использовать лог-файлы на одном компьютере. Вы всегда можете запустить отдельный процесс для асинхронного чтения из файла и записи в любое место.

...