В некоторых наших веб-приложениях мы делаем вызовы к API 3-ей части, таким как Twitter и т. Д. Там нет ничего нового.
Мы хотели бы получить некоторую статистику об использовании нашего веб-сайта ->сколько звонков мы делаем каждый час и каждый день на различные бесплатные и платные сторонние API.
Я не уверен, как мы можем это сделать.
Теперь я использовал Счетчики производительности ранее в прошлом с большим успехом, но они очень ограничивают (если я не использую их правильно).Во-первых, они увеличивают / уменьшают значения int.Поэтому, если нам нужно увидеть, сколько трафика идет через определенный API за период времени , нам нужно иметь PerfMon , работающий ..., что невозможно (т.е. нашменеджеры не / не должны / никогда не получат доступ к живому веб-серверу (ам).
Так что я не уверен, что другие люди делают в сценарии?
Должен ли яу вас есть переменная состояния приложения, которая записывает время, когда был сделан запрос? тогда вы можете использовать linq или что-то еще для SUM / COUNT по GROUP? Как насчет веб-фермы сейчас? (Состояние приложения для каждой машины). Затем добавьте AppFabric?
Следующим типичным ответом является использование базы данных. Ну, это нормально ... пока у вас не будет много внешних запросов API ... что означает, что существует большой объем служебного трафика с сервера на БД ... который может замедлиться/ bottleneck вещи.
После этого я подумал, что, возможно, это случай смешивания опций. Использование кэша приложения, а затем каждые 5 минут, создание дампа в БД, если число изменилось. Это может привести кпроблемы с рекламой, но все же добавляет в систему дополнительную сложность.
Итак, я возвращаюсь к идее Performance Counters ... которая мне нравится (потому что она была закодирована в основную ОС для обработки больших объемов данных).трафик, не влияющий (или влияющий на минимально возможное количество) производительности .... но теперь я вернулся к шагу 1 - как я могу использовать счетчики перфорации для получения результатов, основанных на времени.
возможно, снова использовать состояние приложенияи каждый час / каждый раз при фиксированном времени сбрасывать результат в счетчик перфектов (вместо дБ)?
У кого-нибудь есть мысли, пожалуйста:)