Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Разработка под ASP.NET > .net 2.0 to .net 4.0 problem |
Автор: MFSham 26.2.2014, 20:25 | ||||
Добрый день. Предыстория: обновили версию веб приложения с .net 2.0 на .net 4.0. Перекомпили приложение, соответственно, под новую версию фреймворка. Так же у IIS application pool поставили настройки для 4 фреймвока (полсностью совподающие с настройками 2). Схема работы: есть win-приложение которому на вход подлаживается файл, а оно в свою очередь отправляет этот файл на наше веб-приложение на определенную страницу (asp.net). Код:
Наше веб-приложение из request извлекает файл, и сохраняет его в систему. Проблема: начало появляться мистическая проблема (Internal Server Error), которая локально не повторяется и воспроизвести ее так же не получается. У клиента _иногда_ (может 2 раза в день, может раз в неделю) появляется.
Данный код работал годами, пока мы всего лишь не обновили версию приложения со 2 на 4 версию. Плюс, соответственно, повесили приложение на пул для 4 фреймворка с идентичными настройками. Логи на win и web приложение я добавлял, никакой ошибки кроме представленной выше - нет. Все запросы которые приходили на web приложение - обрабатывались от и до. Интересный момент: В тот момент когда что-то упало/перестало_работать (наше win приложение бесконечно ломится на web страничку) мы может спокойно пользоваться сайтом. Даже если взять этот url (который генерит наше win приложение и ломится на web приложение) и вставить в браузер - все пройдет на ура. Но тут все хорошо, скорее всего, из-за того что в request просто нету файла самого. Если мы рестартанем пул приложения - все заработает (!). Наши запросы, которые так упорно не проходили, чудесным образом вернут 200 код и файлы загрузятся в систему. У меня большие подозрения в сторону IIS настроек. Может там что не так, я не силен в администрировании. Но сама проблема вводит меня в ступор. Локально не воспроизводится, все работает на ура. Если проблема вылазит - простой рестарт пула решает ее. Но, что собственно, рестарт дает? И означает ли это что наш код тут ни при чем? В общем вопросов много, ответов, как таковых нет. |
Автор: jonie 27.2.2014, 19:48 |
а что в логах-то про 500-ую ошибку ? (например в EventLog винды) |
Автор: MFSham 17.3.2014, 11:56 |
Не верю я в чудеса, но ошибка уже не повторяется почти 3 недели. Из последних добавлений в код - только логи, много логов почти на всех методах. А все остальное 1 к 1. Тему можно закрывать, походу. |
Автор: MFSham 17.3.2014, 21:54 |
Нет многопоточности. Но есть много вызовов страницы, в то время когда предыдущий код еще не отработал. |
Автор: jonie 18.3.2014, 09:16 | ||
ну это, конечно, не многопоточность... ага... Попробуйте на досуге-таки изучить как работает контейнер IIS в части вызова managed хендлеров (да и вообще)... |
Автор: MFSham 18.3.2014, 10:05 |
Спасибо, почитаю) |