Настоящий Флеймер
Зарегистрирован: 16 August 2006
Сообщения: 1510
Примеры кода: 0
|
Re: Реентерабельность хандлеров |
05 December 2007 12:19 |
|
|
|
|
я хочу - точнее не сколько хочу, сколько надо эта сделать, чтобы опять новую работу не искать - надо сделать несколько ИНОЙ движок, чем микрасофтовский
ЛЮБОЙ реквест - обрабатывается ТОЛЬКО МОИМ кодом. Кроме моего кода - ничего. Мой же собственный код САМ делает респонзе-райт в поток браузера и когда надо что-то читает и ПИШЕТ в базу.
Все-все ссылки странички (на ЯваСкрипты, референсы, переходы на другие странички, даже на CSS) выглядят просто как вызовы моего хандлера (хотя я уже понимаю, что если он не имеет встроенного механизма "в очередь-ссукины дети-в очередь" - то тут хандлер не подойдет).
Выглядит такая страничка примерно так.
<td align="center" valign="top">
<a href="X.ashx?I=7B8ED466D68506CFD8F5E97C1198C26C" class="menu">
<img src="X.ashx?I=2DDAA26E62765787AD2D6FEC0BE21CA9" border="0"><br>
Т
</a>
</td>
<td align="center" valign="top" width="55"> </td>
<td align="center" valign="top">
<a href="X.ashx?I=746E254E3FB1530C6436EC7F84FD05C4" class="menu">
<img src="X.ashx?I=9095CEE2E71034A8B87E99BD352D3AD3" border="0"><br>
К
</a>
</td>
<td align="center" valign="top" width="55"> </td>
<td align="center" valign="top">
<a href="X.ashx?I=0F8EE6EA6529B619CA190E8F557B1B7D" class="menu">
<img src="X.ashx?I=A261A786D9A29B7DE79CAE999F1E5512" border="0"><br>
Ш
</a>
</td>
<td align="center" valign="top" width="55"> </td>
<td align="center" valign="top">
<a href="X.ashx?I=0CEF8C20961B5A0F19531DC1B191E7EA" class="menu">
<img src="X.ashx?I=F2D79AAAC9966BEDA7AB0975FB16689A" border="0"><br>
К
</a>
</td>
<td align="center" valign="top" width="55"> </td>
<td align="center" valign="top">
<a href="X.ashx?I=4282DF75CCEB730034E03B87A525FA21" class="menu">
<img src="X.ashx?I=53B6283BAEB22D87EE5B37D47DDF9B65" border="0"><br>
Д
</a>
</td>
Так же вызываются и клиентские скрипты и все-все-все. Мой же механизм обеспечивает переходы со странички на страничку - ну там свой EventValidation формирует, например. Часть защиты я зашифровал и вынес прямо в параметры вызова самому хандлеру.
Сам хандлер этот СЛОЖНЫЙ, ниибацца... Вчера-позавчера больше тысячи строк добавил в него... Конечно, на многопоточность я не рассчитывал - как только начинает это все в несколько потоков одновременно - все мгновенно падает. Ну и база конечна выпадает в блокировку...
Ну это уже я начинаю словесно сделанную тысячу строк кода хандлера. Дело не в них.
А как сделать - "в очередь-ссукины дети-в очередь" - потому что алгоритм слишком сложный, чтобы считатся в несколько потоков.
Может это и можно сделать - но позже. Сейчас сдать это все надо до 10 числа. И код уже готов по идее. И в один поток УЖЕ преотлично работает. Мешает только многопоточность. Тут да - меня сглючило - я на IsReusable рассчитывал.
Ситуация усугубляецца тем, что это ОДИН каталог общего сайта, в остальных подкаталогах всех вполне устраивает стандартный микрасовфтовкий движок ASP2...
|
|