Почему хранилище сеансов Node.js оказывает такое влияние на производительность? - PullRequest
1 голос
/ 12 февраля 2012

С включенным следующим:

  app.use(express.session({
    store: sessionStore,
    secret: 'secret',
    key: 'express.sid'}));

Во время тестирования моего приложения Node.js пропускная способность запросов составляет 650 запросов в секунду.

Когда я не использую express.session, пропускная способность запросов составляет 2200 запросов в секунду.

Тестирование на Apache Bench со следующими параметрами:
-k -c 256 -n 50000 http://localhost:3000/.

Я проверяю следующее:

app.get('/', function(req, res)
{
  res.redirect('/login');  
});

Вопрос: Это нормальное падение производительности или есть что-то, на что я должен обратить внимание?

1 Ответ

0 голосов
/ 12 февраля 2012

Я бы сказал, это "нормально". У меня нет никаких тестов для сравнения с вашими, но, поскольку вы создаете идентификатор сеанса из крипто, а также ищите в своем хранилище (которое я надеюсь, это memcache или redis или какое-то хранилище ключей / значений), такое падение кажется естественным. Без сессии вы абсолютно ничего не делаете и не ожидаете ввода-вывода.

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