Отзывчивость / производительность сайта IIS - PullRequest
1 голос
/ 27 января 2011

Я использую HttpModule на веб-сайте IIS и запускаю 14 000 POST-запросов за 8 секунд. которые вставляются (регистрируются) в базу данных сервера Sql (таблица без индекса).

Однако регистрируется только 1200 запросов, очевидно, что все остальные так или иначе пропущены и Я не знаю почему.
Когда я добавляю Thread.Sleep (10) после UploadStringAsync (..), я пропускаю только прибл. 50-70 сообщений из 14 000. Это проблема IIS (5.1 на этой машине), или идея 14000/8 сек. абсурдным?

Edit @ DForck42:
Оператор select нигде не используется; оператор вставки (сохраненный процесс):

Entlib.Cmd.Parameters["@datetime"].Value = timestamp;
Entlib.Cmd.Parameters["@url"].Value = url;
Entlib.Cmd.Parameters["@body"].Value = postdata;

using (DbConnection connection = Entlib.Db.CreateConnection())
            {
                Entlib.Cmd.Connection = connection;
                connection.Open();
                Entlib.Cmd.ExecuteNonQuery();
                connection.Close();
            }

1 Ответ

1 голос
/ 28 января 2011

Это может быть проблема ограничения соединения.Существует ограничение на количество одновременных подключений, которые IIS будет обрабатывать (например, 5.1 в XP Pro будет обрабатывать только 10).При достижении лимита очереди соединений IIS начнет отклонять запросы.Проверьте журнал HTTPERR на наличие отклоненных запросов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...