"Гарантируется ли, что модуль Init будет вызывать один раз для разных пользователей (или другой запрос), а BeginRequest и т. Д. Будут вызывать каждый раз для разных пользователей (или другой запрос)?"
Метод init будет вызываться при запуске пула приложений / при первом запуске приложения.Это когда модуль загружен.
Метод BeginRequest вызывается каждый раз, когда приложение начинает обрабатывать новый HTTP-запрос.
"2) Есть ли вероятность того, что Application_Start (global.asax) может работать более одного раза, потому что может быть более одного объекта приложения"
Нетболее одного приложения в определенной папке.IIS не работает таким образом.Только один global.asax для каждого приложения, и Application_Start будет вызываться только один раз для каждого приложения, если только пул приложений не будет сброшен.
"3) Поскольку объект приложения может отличаться (от пула приложений) В этомСлучай, как данные приложения распределяются между разными пользователями? "
Зависит от того, где вы храните данные этого приложения и что вы используете для его извлечения.Я не уверен, что вы имеете в виду по этому поводу.Данные сеанса должны быть ограничены отдельным приложением (определенно для сервера состояния сеанса в процессе, и, если оно правильно настроено также для сервера состояния сеанса вне процесса)
"4) В методе HttpHandler ProcessRequestбудет вызывать каждый запрос (или каждого пользователя). "
Да, но только для запросов, которые сопоставлены с вашим обработчиком.И наоборот, HttpModule может быть вызван для ВСЕХ запросов.