|
|
|
Альтернативные компоненты для WebForms
|
|||
|---|---|---|---|
|
#18+
Кстати, что под UNIX посоветуете? Для web, не PHP. Можно ASP.NET под MONO использовать. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2012, 16:19 |
|
||
|
Альтернативные компоненты для WebForms
|
|||
|---|---|---|---|
|
#18+
Недавно по оптимизации дискутировали: Как правильно реализовать высоконагруженное веб-приложение У чела записей всего-то 200 - 600 тыс, 1000 пользователей примерно в одно время обращаются к ресурсу. Всё тормозит. А если такую нагрузку дать под рекурсионные запросы, это ж пипец просто :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2012, 16:21 |
|
||
|
Альтернативные компоненты для WebForms
|
|||
|---|---|---|---|
|
#18+
AHTOH_LКстати, что под UNIX посоветуете? Для web, не PHP. Можно ASP.NET под MONO использовать. :) не-не, под никсы наверн перл лучше будет (раз не рнр), а моно извратом попахивает :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2012, 16:44 |
|
||
|
Альтернативные компоненты для WebForms
|
|||
|---|---|---|---|
|
#18+
Кстати, небольшой офтоп, если не ошибаюсь, в FB рекурсия ограничена вложенностью была (если есть знатоки, прошу подтвердить или опровергнуть) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2012, 16:46 |
|
||
|
Альтернативные компоненты для WebForms
|
|||
|---|---|---|---|
|
#18+
SanSYSКстати, небольшой офтоп, если не ошибаюсь, в FB рекурсия ограничена вложенностью была (если есть знатоки, прошу подтвердить или опровергнуть) По огнептице не скажу, но у скуля так: http://msdn.microsoft.com/ru-ru/library/ms175972.aspx Неправильно составленное рекурсивное ОТВ может привести к бесконечному циклу. Например, если определение запроса рекурсивного члена возвращает одинаковые значения как для родительского, так и для дочернего столбца, то образуется бесконечный цикл. Для предотвращения бесконечного цикла можно ограничить количество уровней рекурсии, допустимых для определенной инструкции, с помощью подсказки MAXRECURSION и значения в диапазоне от 0 до 32 767 в предложении OPTION инструкции INSERT, UPDATE, MERGE, DELETE или SELECT. Это дает возможность управлять выполнением инструкции до тех пор, пока не будет разрешена проблема с кодом, из-за которой происходит зацикливание программы. Серверное значение по умолчанию равно 100 . Если указано значение 0, ограничения не применяются . В одной инструкции может быть указано только одно значение MAXRECURSION. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2012, 16:55 |
|
||
|
Альтернативные компоненты для WebForms
|
|||
|---|---|---|---|
|
#18+
Если речь о рекурсии в хранимых процедурах, то ограничение-таки есть: 32 лупа. http://msdn.microsoft.com/en-us/library/aa175801(SQL.80).aspx http://www.techrepublic.com/article/using-recursion-in-stored-procedures/5700193 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2012, 16:58 |
|
||
|
Альтернативные компоненты для WebForms
|
|||
|---|---|---|---|
|
#18+
МСУЕсли речь о рекурсии в хранимых процедурах, то ограничение-таки есть: 32 лупа. http://msdn.microsoft.com/en-us/library/aa175801(SQL.80).aspx http://www.techrepublic.com/article/using-recursion-in-stored-procedures/5700193 Да.. вот сейчас проверил сам: Maximum stored procedure, function, trigger, or view nesting level exceeded (limit 32). Рекурсия при недальновидности может стать большим злом ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2012, 17:20 |
|
||
|
Альтернативные компоненты для WebForms
|
|||
|---|---|---|---|
|
#18+
SanSYSРекурсия при недальновидности может стать большим злом Да она, собственно, и является злом. Причем, беспощадным. Разумеется, для ряда задач она является незаменимым инструментом, но лишь в крайних случаях. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2012, 17:42 |
|
||
|
Альтернативные компоненты для WebForms
|
|||
|---|---|---|---|
|
#18+
Иерархические таблицы прекрасно селектятся не рекурсией, а итерацией. Причём, в несколько сотен раз быстрее. Запросы надо уметь писать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2012, 17:45 |
|
||
|
Альтернативные компоненты для WebForms
|
|||
|---|---|---|---|
|
#18+
ShSergeИерархические таблицы прекрасно селектятся не рекурсией, а итерацией. Причём, в несколько сотен раз быстрее. Запросы надо уметь писать. Что такое "таблица селектится итерацией"? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2012, 17:46 |
|
||
|
Альтернативные компоненты для WebForms
|
|||
|---|---|---|---|
|
#18+
МСУShSergeИерархические таблицы прекрасно селектятся не рекурсией, а итерацией. Причём, в несколько сотен раз быстрее. Запросы надо уметь писать. Что такое "таблица селектится итерацией"? А что такое рекурсией? Я имею ввиду получения набора данных (датасета, по-русски). Я и сам одно время использовал рекурсивные функции, пока мне не показали, как просто это делается итерацией. Причём, без ограничения вложенности. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2012, 17:51 |
|
||
|
Альтернативные компоненты для WebForms
|
|||
|---|---|---|---|
|
#18+
я так понялъ это топег обо всем http://msdn.microsoft.com/en-us/library/aa172799%28v=sql.80%29.aspx ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2012, 17:53 |
|
||
|
Альтернативные компоненты для WebForms
|
|||
|---|---|---|---|
|
#18+
ShSergeМСУпропущено... Что такое "таблица селектится итерацией"? А что такое рекурсией? http://msdn.microsoft.com/ru-ru/library/ms186243.aspx ShSergeЯ имею ввиду получения набора данных (датасета, по-русски). Причем тут датасет? ShSergeЯ и сам одно время использовал рекурсивные функции, пока мне не показали, как просто это делается итерацией. Причём, без ограничения вложенности. Какой "итерацией"? Выбросьте в ведро это слово, оно только путает. Почти любую рекурсию можно написать циклом, но не всегда это будет оптимально. Более того, иногда в угоду перфомансу денормализуют деревья в линейную плоскость и лайком ищут ветки по индексированному полю. P.S. Так о чем речь, бать? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2012, 20:38 |
|
||
|
Альтернативные компоненты для WebForms
|
|||
|---|---|---|---|
|
#18+
МСУ...Почти любую рекурсию можно написать циклом... Ашипка у Вас, сертифицированного специалиста. Не "почти", а совсем любую. Почитайте какой-нибудь учебник для начинающих по дискретной математике для студентов ВМК МГУ, то есть для закоренелых ламеров. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2012, 20:46 |
|
||
|
Альтернативные компоненты для WebForms
|
|||
|---|---|---|---|
|
#18+
ShSergeМСУ...Почти любую рекурсию можно написать циклом... Ашипка у Вас, сертифицированного специалиста. Не "почти", а совсем любую. Почитайте какой-нибудь учебник для начинающих по дискретной математике для студентов ВМК МГУ, то есть для закоренелых ламеров. А вот тут Вы ошибаетесть. На эту тему не мало дров порублено, вот, например: Любую ли рекурсию можно заменить циклом? Мне понравился вот этот ответ: поток сознанияVvicПозвольте замечания. Теоретически ДА, безусловно! Любая рекурсивная программа может быть заменена на эквивалентную ей нерекурсивную. Что на практике... 1. Да, рекурсивные алгоритмы стройны и просты для понимания и сопровождения в сравнении с нерекурсивными аналогами. 2. Но! Накладные расходы на вызов почти во всех современных архитектурах несравнимо больше,чем при локальной передаче управления. А в таких сложных архитектурах, как архитектуры семейства EPIC (IA64, E-3M, etc.) это разница еще заметнее. 3. Хороший компилятор в состоянии выполнить преобразование хвостовой рекурсии (tail recursion), что может существенно повысить эффективность кода. Попробуйте хотя бы написать вычисление факториала через рекурсию, а затем переписать с помощью внутрипроцедурного цикла (как это бы сделал компилятор). Разницу в скорости выполнения вы почувствуете и без утилиты time. Вся исключительность этого частного случая (tail recursion) в том, что как не требует стека: live-range никакого объекта не переживает точку рекурсивного вызова. Это на заметку тем, кто пишет, что Рекурсия - это, по сути, стек. Хотя, в общем случае, они правы. 4. На практике tail recursion срабатывает крайне редко. Подумайте хотя бы над тем, как преобразовывать в нерекурсивный вид вычисление функции Аккермана - она занимает 5 строчек, но содержит два рекурсивных вызова. Если поняли, попробуйте подумать над тем, как научить этому компилятор. Это непросто. 5. Дальше все еще хуже: рекурсия далеко не всегда бывает прямой f( ) f( ). Для случая f( ) g( ) f( ) еще можно подумать об inline-подстановке. Когда же длина рекурсивного цикла составляет 3-4-5-... функций, ситуация усложняется колоссально. Но и это еще не самое страшное. Вход в рекурсивный цикл (читай: сильно-связная компонента графа вызовов программы) может осуществляться не через одну функцию, другими словами, у рекурсивного цикла может быть множество голов. Вообще, на практике, рекурсивные циклы, как правило, не являются сводимыми, а цена за сведение, как и во внутрипроцедурном случае - многократное дублирование кода. Добавьте к этому такую возможность современных языков программирования, как вызов по косвенности и факт возникновения рекурсии вообще может стать очевидным только во время исполнения. Хорошо, если в этом случае вас спасет девиртуализация... Я еще знаю пару серьёзных препятствий на пути избавления от рекурсии... 6. Самое ужасно, что иногда, несмотря на все описанные (и неописанные) проблемы, от рекурсии необходимо избавляться во чтобы то ни стало. Будучи сотрудником Intel Compiler Lab, я полгода потратил на переписывание рекурсивных алгоритмов в компиляторе, так как на стресс-тестах компилятор высаживал стек. Рекурсия - красивая языковая конструкция, но в приложениях, надежность которых критичная, использовать ее надо исключительно аккуратно!! Так что не говорите гоп, пока не перепрыгните. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2012, 21:00 |
|
||
|
Альтернативные компоненты для WebForms
|
|||
|---|---|---|---|
|
#18+
МСУ, Не читайте всякую ерунду. Я даже, если поднапрягусь, доказательство теоремы вспомню, только лень. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2012, 21:27 |
|
||
|
Альтернативные компоненты для WebForms
|
|||
|---|---|---|---|
|
#18+
ShSergeМСУ, Не читайте всякую ерунду. Я даже, если поднапрягусь, доказательство теоремы вспомню, только лень. Почему я должен больше доверять Вам, нежели тому мемберу, который представился сотрудником Intel Compiler Lab? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2012, 21:31 |
|
||
|
Альтернативные компоненты для WebForms
|
|||
|---|---|---|---|
|
#18+
МСУShSergeМСУ, Не читайте всякую ерунду. Я даже, если поднапрягусь, доказательство теоремы вспомню, только лень. Почему я должен больше доверять Вам, нежели тому мемберу, который представился сотрудником Intel Compiler Lab? Потому что я - сотрудник более крутой конторы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2012, 21:32 |
|
||
|
Альтернативные компоненты для WebForms
|
|||
|---|---|---|---|
|
#18+
ShSergeПотому что я - сотрудник более крутой конторы. Тогда верю и преклоняюсь перед Вами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2012, 21:36 |
|
||
|
Альтернативные компоненты для WebForms
|
|||
|---|---|---|---|
|
#18+
МСУ, Принято. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2012, 21:40 |
|
||
|
Альтернативные компоненты для WebForms
|
|||
|---|---|---|---|
|
#18+
Сержа позлить захотелось :) http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=927349&msg=12289896 ShSergeЕсли юный неофит начнёт изучать вэб-технологии с какого-то фреймворка, а базы данных с ОРМа, то мои умения будут ещё долго востребованы. :) МСУВаши умения скоро окажутся в мусорном ящике. Практически в каждой вакансии мелькают букавки: Entity Framework, Linq to SQL, HNibernate. Умение писать масштабируемые решения на MVC и т.д. и т.п. ShSergeА я и не говорю про вакансии, я говорю про продукт, за который плотют денюжку. http://www.sql.ru/forum/actualthread.aspx?tid=929350 Опа! Тут те и мвц, и неродивый линкю, и вцф, и аякс, и юнит тесты, ... И реально отличные бабки на руки для простого девелопера. Вот оно чё, Серега. А Вы всё про цги с триггерами песни на балалайке поёте Так что про "востребованность" тут еще вопрос... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.04.2012, 16:29 |
|
||
|
Альтернативные компоненты для WebForms
|
|||
|---|---|---|---|
|
#18+
МСУ, Всё путём. Сегодня утром пришёл на работу, а потом, через некоторое время, пошёл домой спать, потому что не спал в субботу и воскресенье. Типа, "время Ч" наступило (сдачи проекта). Вроде бы, не выгнали. Вроде бы, заказчик более-менее доволен. А Вам всё хиханьки да хаханьки. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.04.2012, 19:53 |
|
||
|
Альтернативные компоненты для WebForms
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.04.2012, 19:54 |
|
||
|
Альтернативные компоненты для WebForms
|
|||
|---|---|---|---|
|
#18+
МСУ, ПС. Я как-то кого-то нанимал, типа студентов. Нихрена не идут. Им сразу стольник подавай. У нас (в СПб, это Вам - не Москва) такая зряплата - этакруто. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.04.2012, 20:01 |
|
||
|
Альтернативные компоненты для WebForms
|
|||
|---|---|---|---|
|
#18+
ShSergeМСУ, ПС. Я как-то кого-то нанимал, типа студентов. Не, студенты это зло. Пущай их кузницы куют, а мы потом возьмем. ShSergeИм сразу стольник подавай. За шиворот и в канаву его. ShSergeУ нас (в СПб, это Вам - не Москва) такая зряплата - этакруто. Да и в Москве для обычного разраба это не хило. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.04.2012, 20:10 |
|
||
|
|

start [/forum/topic.php?fid=18&msg=37718488&tid=1359746]: |
0ms |
get settings: |
6ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
156ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
| others: | 199ms |
| total: | 432ms |

| 0 / 0 |
