powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Переход на ASP.NET 2.0
13 сообщений из 13, страница 1 из 1
Переход на ASP.NET 2.0
    #33563282
Фотография judge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем привет.

Пересобрал наш форум (с небольшими изменениями) под 2.0, залил на sql.ru (в отдельную папку). Скорость заметно упало - вместо, практически мгновенной загрузки, каждая страница грузится секунды по 3 (при этом cpu usage подскакивает до 50%) :-\

Где копать в первую очередь?

Alex
...
Рейтинг: 0 / 0
Переход на ASP.NET 2.0
    #33563358
Spiage
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Пересобрал - туманное слово :)
Первое, что в голову приходит - у тебя используется code behind page
А под пересобрал ты имеешь в виду, что сборку сделал в VS
Проверь, не стоит ли опция debug :)
...
Рейтинг: 0 / 0
Переход на ASP.NET 2.0
    #33563371
Фотография hDrummer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня до "пощупать" ASP.Net 2 руки так и не дошли.
WinForms 2.0 использовал в одном проекте, понравилось.

А в свете того, что обещают выпустить к VS2005 SP1 в первом полугодии как-то пока даже и пробовать не хочется.

Так что, м.б., эта скорость "by design", как любят говорить в Microsoft. Пока. А с выходом SP1 дело поправится.

Но это только догадки. М.б. дело в особенностях реализации + особенности конвертации.
...
Рейтинг: 0 / 0
Переход на ASP.NET 2.0
    #33563851
Фотография judge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>> Первое, что в голову приходит - у тебя используется code behind page

Да используются. А что это проблема? сами страницы по-минимуму содержат:

Код: plaintext
1.
<%@ Page language="c#" Inherits="ActualForum.ActualThread"  enableViewState="False" CodeFile="actualthread.aspx.cs" %>

Debug вроде отключал, но проверю. Удивляет, что "на столько" медленно.


Alex
...
Рейтинг: 0 / 0
Переход на ASP.NET 2.0
    #33564228
Фотография judge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да - для сравнения

sql.ru/ forum20
(не выделил как линк, чтобы не проиндексировали)
...
Рейтинг: 0 / 0
Переход на ASP.NET 2.0
    #33564489
Spiage
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Попробуй трассировку отключить
Файл web.config
<configuration>
<system.web>
<trace enabled="false" <-----

Включеная трассировка гарантировано тормозит открытие страницы...

А вообще, как видно из трейса - проблема в коде, формирующем страницу
На отработку Page_Load уходит 1,3443498490 секунд
Проверь, что в обработчике происходит
Ну и DEBUG конечно же проверь

И еще - у тебя фреймуорк 2.0.50215, смахивает на Beta 2
Рекомендую поставить 2.0 release, т.к. бета вполне может работать сама по себе со включеным дебаг-модом для возможности отправки более детальной информации в случае сбоя
...
Рейтинг: 0 / 0
Переход на ASP.NET 2.0
    #33564670
Фотография judge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Без трейса было тоже самое - включил, что бы понять в чем дело.
Дебаг выключен.
Откуда 2.0.50215? Снизу написано:
Microsoft .NET Framework Version:2.0.50727.42; ASP.NET Version:2.0.50727.42

В обработчике слишком много всего происходит. Видимо придятся кучу трассировочных флагов понаставить.


А вот на Framework 1.1 (текущая версия) с трейсом: sql.ru /forum11/

Alex
...
Рейтинг: 0 / 0
Переход на ASP.NET 2.0
    #33564742
Фотография judge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Путем профайлинга вроде удалось найти узкое место.

Почему то в 2.0 все RegExp стали работать в разы медленнее. Никто с этим не сталкивался?

Alex
...
Рейтинг: 0 / 0
Переход на ASP.NET 2.0
    #33564872
Фотография greenapple
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Static methods are the only ones that participate in the caching.

см. последний пост by David Gutierrez, из MS BCL Team: собственно поменяли реализацию методов.
...
Рейтинг: 0 / 0
Переход на ASP.NET 2.0
    #33564926
Фотография judge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я использую только статические функции класса Regexp, так что не должно было повлиять.
...
Рейтинг: 0 / 0
Переход на ASP.NET 2.0
    #33565071
Spiage
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Попробуй тогда вместо статических методов сделать статический член в своем классе типа Regex и им пользоваться...
Кто знает, может быть при каждом вызове статического метода происходит автосоздание класса для инициализации таблицы виртуальных методов?
...
Рейтинг: 0 / 0
Переход на ASP.NET 2.0
    #33565147
Фотография Max Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот моё мнение.
Есть гипотеза, что при переходе на новую версию VC++, VB и других языков корпорации Microsoft, скорость выполнения EXE-шников падает как минимум на 5%. Это при том, что во-первых строки кода почти один к одному совпадают и во-вторых используется то же самое железо. Бороться с этим можно только путём апгрейда железа.
Но в данном конкретном случае, так как скорость упала гораздо больше, чем на 5 процентов, видимо мы имеем дело с временными ошибками, которые будут исправлены одновременно с выходом 1-го сервиспака. Это могут быть и регулярные выражения, как ты заметил, и ещё куча других алгоритмов.
Пременительно к Фраймеворку, ошибки связанные с RegExp должны лечиться, как мне кажется, переходом с C# на VB и использованием оператора Like, так как этот оператор - старый проверенный оператор, поддерживающий маленький набор основных регулярных выражений, работает всегда на хорошем уровне.
Общая рекомендация по 2005-й студии - давайте дождёмся, друзья, выхода 1-го сервиспака. И нам ничего не остаётся, как раскошелиться на новое железо.
...
Рейтинг: 0 / 0
Переход на ASP.NET 2.0
    #33566569
Фотография greenapple
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
можно посмотреть реализацию и в рефлекторе.

Вообще, порывшись, народ пишет все же, - вызов статических методов - постоянная перекомпиляция. имхо, народ прав.

м.б. все же собрать их все в кучу, кто его знает как там этот "some internal caching " кэшинг работат? хранить в коллекции, так чтобы не компилировать, или еще лучше вот это попробовать Regex.CompileToAssembly , C# Regular Expressions, Revisited , сам не делал, не знаю - не было ботленеков с этим.
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Переход на ASP.NET 2.0
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]