Самый быстрый способ записи данных журнала / статистики - файла, базы данных или URL-адреса во внешний сервис - PullRequest
0 голосов
/ 31 августа 2010

Я использую веб-службу большого объема и хочу отслеживать количество вызовов службы (на одного клиента).Однако я хочу, чтобы запись / запись этих данных оказала минимальное влияние на общее время, затрачиваемое на обработку запроса на обслуживание.

Я подумал о трех способах:

  1. Запись вфайл (потребуется открыть файл, прочитать «счетчик обращений», увеличить и записать обратно)
  2. Запись в базу данных (запись в таблицу и увеличение «количества обращений» к данному клиенту)
  3. Выключить URL-вызов в какой-либо другой сервис, который может беспокоиться о сохранении данных

Мне нравится третий вариант архитектуры и согласованности, но запуск HTTP-запроса будет более «дорогостоящим», чемлюбой из первых вариантов 1 или 2?

1 Ответ

2 голосов
/ 31 августа 2010

Вы можете подключить WebService к серверу Apache HTTP и регистрировать запросы непосредственно оттуда.В этом случае запросы на регистрацию будут на 100% вспомогательными для контейнера приложения, что означает отсутствие связи с самим приложением.Вы можете отслеживать каждого клиента, просматривая заголовки запросов и / или анализируя / переписывая URL.

Проверьте «Журнал доступа» здесь: http://httpd.apache.org/docs/2.2/logs.html

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