В настоящее время у меня есть приложение, которое торгует виртуальными предметами и делает не менее 40 запросов CFHTTP в секунду на сервер хоста.
Проблема, с которой я сталкиваюсь, заключается в том, что мой вызов CFHTTP занимает от 400 мс+, чтобы вернуть ответ, что означает, что мое приложение пропускает 99% сделок, которые оно находит, поскольку существует множество других конкурирующих приложений, которые получают более быстрый ответ.
Я изо всех сил пытался найти причину и / или решение этой ситуации, поэтому я написал сценарий как на CF, так и на C #, который делает 10 HTTP-запросов, каждый из которых синхронизируется, что привело к следующему времени ответа:
В CF с помощью следующих браузеров:
- IE9: 384, 444, 302, 570, 535, 317, 510, 349, 357, 467 — в среднем 423,5 мс
- Firefox 27.0.1: 354, 587, 291, 480, 437, 304, 537, 322, 286, 652 — в среднем 425 мс
- Chrome: 300, 328, 328, 639, 285, 259, 348, 291, 299, 414 — в среднем 349,7 мс.
В консольном приложении С#:
597, 43, 96, 52, 44, 305, 67, 91, 54, 270 — в среднем 161,9 мс
Как вы можете видеть, существует большая разница в производительности при выполнении HTTPWebRequest в консольном приложении C#, что заставляет меня думать, что, возможно, запросы CFHTTP регулируются? Или это может быть связано с браузерами?
Любая помощь будет принята с благодарностью!