|
Вопросы по реализации 3-х звенного приложения...
|
|||
---|---|---|---|
#18+
Метапрограммист softwarerВ силу этих соображений явление пророка, готового показать легкую дорогу...... Видите ли, Автор топика избрал построение приложения самостоятельно, без использования платформ сторонних производителей. Не вижу оснований для такого суждения. Хотя не скажу что так уж внимательно читал топик. Сколь помнится, ему чем-то не понравился COM, и он хотел использовать не то MIDAS, не то какие-то дельфовые инструменты той же серии. Полагаете, это не есть платформа? МетапрограммистОтсюда я делаю вывод, что у него очень много энергии и сил, а раз так, то хватит осилить и правильную дорогу, Безусловно. Несмотря на то, что например корпорации Oracle сил на эту правильную дорогу не хватает, и последние несколько лет она с оной слезает, Вы уверены, что она правильная, и готовы рискнуть силами и средствами Автора. Уважаю. МетапрограммистДругими словами я говорю как бы сделал я на его месте. Я уверен что я знаю как сделать правильно и я могу это доказать. То есть, Вы так не делали, я правильно понимаю? МетапрограммистВ то же время говорить чтобы он вообще отказывался от создания своего приложения или платформы это неправильно (хотя бы с педагогической точки зрения). Ну и не говорите, никто не просит. Заодно в топике станет меньше демагогии. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.09.2006, 09:11 |
|
Вопросы по реализации 3-х звенного приложения...
|
|||
---|---|---|---|
#18+
iscrafmКакой-то скадальный топик. :) Возвращаясь к теме 3-х звенок... ситуация ниже просто нереальная: автор1 юзер: Запускает транзакцию. 1 юзер: Читает 0, прибавляет 100, записывает 100. Теперь на счете 100 баксов. 2 юзер: Запускает транзакцию. 2 юзер: Читает 100, отнимает 80, записывает 20. Теперь на счете 20 баксов. 2 юзер: Подтверждает транзакцию. 1 юзер: Откатывает транзакцию. Это пример того, как работает транзакция в худшем варианте. Хотя бы потому что после записи 100$ не было подтверждения, а юзер 2 уже положил 100$ в карман. Вы видимо не поняли, что говорил автор. Он похоже имел в виду, что при отсутствии блокировок (а ведь с этого все началось?) возможна ситуация, что 2 юзер сумеет прочитать незакомиченные 100$. И предлагал объяснить, как с этой проблемой справляются безблокировочники (если они есть в природе). iscrafm Этот пример приводится как иллюстрация того, как не нужно делать. Во-вторых, непонятна ситуация "открыл транзакцию....делаю.... думаю... отменяю или подтверждаю". Транзакции открываются не для того, чтобы пойти выпить текилы и потом подтвердить сей факт. А что здесь нелогичного? И как нужно делать? Пользователь пытался положить деньги на счет, они до туда дошли (но не закомитились), сработал какой-нибудь триггер, реализующий хитрую бизнес-логигу, в это время второй пользователь прочитал значение суммы на этом счете (возникло грязное чтение - блокировки-то нет!), а после этого триггер выявил нарушение бизнес-правил и инициировал откат транзакции. Т.е. пользователи не "открывали транзакцию, потом что-то думали, потом откатывали". Каждый из них просто нажал на свою кнопку - первый на "положить деньги", втотрой на "снять деньги". Они знать не знают ни про какие транзакции, вернее в их понимании "транзакция" - это операция со счетом как объектом реального мира. Другое дело, что пример не очень удачен. Со складом наверное было бы ближе к жизни. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.09.2006, 11:54 |
|
Вопросы по реализации 3-х звенного приложения...
|
|||
---|---|---|---|
#18+
Nonsens согласен. Пока никто не показал, как работает безблокировочник - БД. Блокировочник SQL Server я знаю как работает - повышаем уровень изолированности транзакции - следовательно в чё-то теряеи (за бесплатно ничего нет). Так же как и реализация своими ручками механизма транзакций (вместо СУБД) на среднем-третьем звене. ______________________________________________ Вы имеете право хранить молчание! Всё что Вы скажете может быть использовано против Вас в суде! ... |
|||
:
Нравится:
Не нравится:
|
|||
06.09.2006, 12:43 |
|
Вопросы по реализации 3-х звенного приложения...
|
|||
---|---|---|---|
#18+
NonsensВы видимо не поняли, что говорил автор. Он похоже имел в виду, что при отсутствии блокировок (а ведь с этого все началось?) возможна ситуация, что 2 юзер сумеет прочитать незакомиченные 100$. Угу. А еще возможна ситуация, что юзер сумеет прочитать незакоммиченные $100 из-за ошибки софта БД. И это равно вероятные ситуации. Блокировки - одно. Грязное чтение - совсем другое. В общем случае они никак не связаны. NonsensИ предлагал объяснить, как с этой проблемой справляются безблокировочники (если они есть в природе). Хм. А зачем справляться с проблемой, которая не возникает? Допустим, я в молодости (в 97-м году) писал безблокировочник, где такой проблемы не то что не было, а архитектурно не могло возникнуть. То есть там грязное чтение было технически невозможно. NonsensА что здесь нелогичного? И как нужно делать? (возникло грязное чтение - блокировки-то нет!) И откуда оно возникло? Святым духом? Вот это и нелогично. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.09.2006, 12:56 |
|
Вопросы по реализации 3-х звенного приложения...
|
|||
---|---|---|---|
#18+
softwarer NonsensВы видимо не поняли, что говорил автор. Он похоже имел в виду, что при отсутствии блокировок (а ведь с этого все началось?) возможна ситуация, что 2 юзер сумеет прочитать незакомиченные 100$. Угу. А еще возможна ситуация, что юзер сумеет прочитать незакоммиченные $100 из-за ошибки софта БД. И это равно вероятные ситуации. Это должна быть какая-то совсем самопальная СУБД, я полагаю. softwarer Блокировки - одно. Грязное чтение - совсем другое. В общем случае они никак не связаны. Не вполне согласен. Скажем так, с проблемой грязного чтения можно бороться и блокировками в том числе. softwarer NonsensИ предлагал объяснить, как с этой проблемой справляются безблокировочники (если они есть в природе). Хм. А зачем справляться с проблемой, которая не возникает? Автор предположил, что такая проблема в безблокировочнике может возникнуть, и предложил аргументированно опровергнуть. softwarer Допустим, я в молодости (в 97-м году) писал безблокировочник, где такой проблемы не то что не было, а архитектурно не могло возникнуть. То есть там грязное чтение было технически невозможно. Вы сервер БД самостоятельно писали (без сарказма, искреннее любопытство)? softwarer NonsensА что здесь нелогичного? И как нужно делать? (возникло грязное чтение - блокировки-то нет!) И откуда оно возникло? Святым духом? Вот это и нелогично. Повторю, возникло по мнению автора . ... |
|||
:
Нравится:
Не нравится:
|
|||
06.09.2006, 13:06 |
|
Вопросы по реализации 3-х звенного приложения...
|
|||
---|---|---|---|
#18+
Nonsens Вы видимо не поняли, что говорил автор. Я понял :). Это Автор не понял, что имеется ввиду под lock-free архитектурой, раз привел указанный текст в качестве примера. Nonsens А что здесь нелогичного? И как нужно делать? Пользователь пытался положить деньги на счет, они до туда дошли (но не закомитились), сработал какой-нибудь триггер, реализующий хитрую бизнес-логигу, в это время второй пользователь прочитал значение суммы на этом счете (возникло грязное чтение - блокировки-то нет!), а после этого триггер выявил нарушение бизнес-правил и инициировал откат транзакции. Грязное чтение само по себе не возникает . Его инициируют. Пользователь естественно не знает про транзакции, зачем ему это. Но в любом случае он должен прочитать commited сумму. В случае с блокировкой он ждет, пока она будет таковой, в случае lock-free или версионника, получит слепок базы без этой суммы. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.09.2006, 13:48 |
|
Вопросы по реализации 3-х звенного приложения...
|
|||
---|---|---|---|
#18+
Ну вот, все и разъяснилось. Я только не понял про lock-free. С блокировочниками и версионниками все ясно, а где можно про lock-free почитать? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.09.2006, 13:52 |
|
Вопросы по реализации 3-х звенного приложения...
|
|||
---|---|---|---|
#18+
Petro123 Пока никто не показал, как работает безблокировочник - БД. Petro123, я давал ссылки. Не переписывать же сюда все принципы, можно же и почитать. На всякий случай повторяю: это ссылка на документ по одному из lock-free серверу БД . PDF, 400k. Читать детали с 12-й страницы. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.09.2006, 13:55 |
|
Вопросы по реализации 3-х звенного приложения...
|
|||
---|---|---|---|
#18+
iscrafm Petro123 Пока никто не показал, как работает безблокировочник - БД. Petro123, я давал ссылки. Не переписывать же сюда все принципы, можно же и почитать. На всякий случай повторяю: это ссылка на документ по одному из lock-free серверу БД . PDF, 400k. Читать детали с 12-й страницы. я тебя понял, что "на пальцах" ЭТО не объяснить. В своё время изучил блокировочник, думал "на халяву" кто объяснит "версионник". ЗЫ. Версионник это Oracl + какие ещё БД? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.09.2006, 14:42 |
|
Вопросы по реализации 3-х звенного приложения...
|
|||
---|---|---|---|
#18+
Petro123я тебя понял, что "на пальцах" ЭТО не объяснить. В своё время изучил блокировочник, думал "на халяву" кто объяснит "версионник". ЗЫ. Версионник это Oracl + какие ещё БД? :) Насчет "пальцев" ты прав. Много технических тонкостей, не все из них открыты. К версионникам себя относят Oracle, PostgreSQL, MySQL(InnoDB), IB... ... |
|||
:
Нравится:
Не нравится:
|
|||
06.09.2006, 14:52 |
|
Вопросы по реализации 3-х звенного приложения...
|
|||
---|---|---|---|
#18+
NonsensЭто должна быть какая-то совсем самопальная СУБД, я полагаю. Ключевая фраза: вероятность того и другого события в общем случае одинаковы. Because оба означают ошибку в софте БД. NonsensНе вполне согласен. Скажем так, с проблемой грязного чтения можно бороться и блокировками в том числе. Можно. Но это далеко не единственный способ. NonsensАвтор предположил, что такая проблема в безблокировочнике может возникнуть, и предложил аргументированно опровергнуть. Это не есть корректный подход. Точно так же я могу предположить, что в продукте X нельзя решить задачу Y с производительностью хотя бы в 10% от возможной при решении продуктом Z. Ну и предложить всем сомневающимся аргументированно опровергнуть. В силу неконструктивности такого подхода в серьезном разговоре он не употребляется; вместо этого принято, что каждый аргументирует то, что пытается "предположить". NonsensВы сервер БД самостоятельно писали (без сарказма, искреннее любопытство)? Не сервер. Там был довольно необычный проект, я затруднюсь парой слов обрисовать его архитектуру. Скажем так, проект включал в себя специализированную распределенную БД. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.09.2006, 15:35 |
|
Вопросы по реализации 3-х звенного приложения...
|
|||
---|---|---|---|
#18+
iscrafm Petro123я тебя понял, что "на пальцах" ЭТО не объяснить. В своё время изучил блокировочник, думал "на халяву" кто объяснит "версионник". ЗЫ. Версионник это Oracl + какие ещё БД? :) Насчет "пальцев" ты прав. Много технических тонкостей, не все из них открыты. К версионникам себя относят Oracle, PostgreSQL, MySQL(InnoDB), IB... так я и понял :)) - поздно :). Я уже подсел на иглу от MS. IMHO 1. Блокировки не по теме топика. 2. Блокировочник СУБД <---> Версионник СУБД то же самое что: Intel <---> AMD то же самое что: Windows <---> Линукс то же самое что: На марсе есть жизнь <---> На марсе нет жизнь то же самое что: .......... 3-е звено нужно <---> 3-е звено НЕнужно ....... Удачи автору! ... |
|||
:
Нравится:
Не нравится:
|
|||
06.09.2006, 15:55 |
|
Вопросы по реализации 3-х звенного приложения...
|
|||
---|---|---|---|
#18+
"Ro-man" <nospam@sql.ru> wrote in message news:3092236@sql.ru... Hi! > Дмитрий, Вы получили почту от меня или нет? Получил. Сочиняю ответ. Сорри, что так долго. ____________________________ С уважением, Лисеев Дмитрий. http://private.peterlink.ru/dimik/ PGP key fingerprint: 09 28 74 28 6C 39 62 29 2E CB 95 03 4F 04 33 73 Posted via ActualForum NNTP Server 1.3 ... |
|||
:
Нравится:
Не нравится:
|
|||
06.09.2006, 22:15 |
|
Вопросы по реализации 3-х звенного приложения...
|
|||
---|---|---|---|
#18+
"Метапрограммист" <nospam@sql.ru> wrote in message news:3092280@sql.ru... Hi! > Для этого нужно написать свой интерпретатор. При всем страшном > слове "написать свой интерпретатор" стоит это достаточно мало. > Если интересно могу даже сказать почему... Предположим, уже написан еще в 1965 году и полностью устраивает. ____________________________ С уважением, Лисеев Дмитрий. http://private.peterlink.ru/dimik/ PGP key fingerprint: 09 28 74 28 6C 39 62 29 2E CB 95 03 4F 04 33 73 Posted via ActualForum NNTP Server 1.3 ... |
|||
:
Нравится:
Не нравится:
|
|||
07.09.2006, 21:37 |
|
Вопросы по реализации 3-х звенного приложения...
|
|||
---|---|---|---|
#18+
"softwarer" <nospam@sql.ru> wrote in message news:3090867@sql.ru... Hi! > Кстати, "ради искусства" я возьмусь реализовать Ваш простой > пример одним SQL-оператором. Реализуйте. Я придумаю еще пример, потом еще, который Вы рано или поздно не сможете реализовать одним оператором. Я всего лишь утверждаю, что такие сложные задачи существуют. Это не значит, что задачи "неправильные" или заказчики "неправильные". Просто большинство разработчиков с такими задачами не сталкивалось и их вполне устраивает работа с сервером через SQL. А у меня таких задач - в полный рост. Вот iscrafm уже все разведал и представляет, о чем я говорю. > Термин "запрос", который Вы употребляете, представляется мне > неудачным - запрос по идее возвращает данные, и называть > таковым оператор модификации грешно. Строго говоря, если расшифровывать абревиатуру "SQL", заглядывая в словарь, то query - вопрос, сомнение. Однако, его никто почему-то не переводит, как "язык вопросов". Тем не менее, операторы модификации определены именно в стандарте на этот язык, как часть языка. А вот request - просьба, требование, запрос, заявка. Известный еще из радиосвязи термин "request/response", обозначающий способ общения между сервером и клиентом обычно переводят, как "запрос/ответ". Например, есть "HTTP Request", в результате выполнения которого может произойти модификация данных. Не вижу ничего грешного в том, чтобы запрос на изменение данных называть именно "запросом", учитывая что термин "change request" довольно распространен. Так что кроме "SELECT FROM" в нашем очень разнообразном мире много всяких "запросов" бывает. ____________________________ С уважением, Лисеев Дмитрий. http://private.peterlink.ru/dimik/ PGP key fingerprint: 09 28 74 28 6C 39 62 29 2E CB 95 03 4F 04 33 73 Posted via ActualForum NNTP Server 1.3 ... |
|||
:
Нравится:
Не нравится:
|
|||
07.09.2006, 21:37 |
|
Вопросы по реализации 3-х звенного приложения...
|
|||
---|---|---|---|
#18+
"!!!" <nospam@sql.ru> wrote in message news:3096648@sql.ru... Hi! > Открою Вам страшную тайну - такой язык уже есть. Более того, > он довольно широко распространен и худо-бедно стандартизирован > - это Язык Структурированных Запросов. Ну и интерпретаторы этого языка > тоже имеют место быть - про СУБД, надеюсь, слыхали? Открою еще более страшную тайну: есть и другие. Причем реализованные еще в районе 1965 года. То есть за 5 лет до публикации Коддом своей знаменитой статьи по реляционной логике. И за 10 лет до появления первых попыток ее реализации в языке SEQUEL на системе IBM System R, который расшифровывался как Structured English Query Language, и был переименован в SQL только потому, что возник конфликт с торговой маркой одной Британской компании. А стандарт ANSI X11.1-1977 на него был принят 15 сентября 1977 года. То есть примерно за 9 лет до первых попыток стандартизации SQL. Также реализаций этого интерпретатора как коммерческих, так и оупенсорсных под всевозможные платформы сильно больше, чем реализаций SQL. Так что кругозор развивать полезно. ____________________________ С уважением, Лисеев Дмитрий. http://private.peterlink.ru/dimik/ PGP key fingerprint: 09 28 74 28 6C 39 62 29 2E CB 95 03 4F 04 33 73 Posted via ActualForum NNTP Server 1.3 ... |
|||
:
Нравится:
Не нравится:
|
|||
07.09.2006, 21:37 |
|
Вопросы по реализации 3-х звенного приложения...
|
|||
---|---|---|---|
#18+
"softwarer" <nospam@sql.ru> wrote in message news:3100192@sql.ru... Hi! > Это не есть корректный подход. Точно так же я могу предположить, что > в продукте X нельзя решить задачу Y с производительностью хотя бы > в 10% от возможной при решении продуктом Z. Ну и предложить всем > сомневающимся аргументированно опровергнуть. В силу > неконструктивности такого подхода в серьезном разговоре > он не употребляется; вместо этого принято, что каждый аргументирует > то, что пытается "предположить". Ну екарный бабай. Все же русским по белому написано Ж:/ Я ничего не ПРЕДПОЛАГАЛ. Я аргументированно ДОКАЗАЛ, что в операциях создания/изменения/удаления на "сложных" структурах данных блокировки неминуемо возникнут даже на версионнике, а если еще и бизнес-логика "сложная", то блокировки становятся СУЩЕСТВЕННОЙ проблемой. Я продемонстрировал это на примере PostgreSQL. Демонстрировать то-же самое на Oracle, Interbase и всем остальном не вижу смысла. Так что о каких-то конкретных продуктах речи не было. Где тут неконструктивность подхода? Это iscrafm ПРЕДПОЛОЖИЛ существование серверов, которые данную задачу могут решать без блокировок. Но от аргументации публично отказался. Потому это так и осталось ПРЕДПОЛОЖЕНИЕМ. ____________________________ С уважением, Лисеев Дмитрий. http://private.peterlink.ru/dimik/ PGP key fingerprint: 09 28 74 28 6C 39 62 29 2E CB 95 03 4F 04 33 73 Posted via ActualForum NNTP Server 1.3 ... |
|||
:
Нравится:
Не нравится:
|
|||
07.09.2006, 23:41 |
|
Вопросы по реализации 3-х звенного приложения...
|
|||
---|---|---|---|
#18+
"Petro123" <nospam@sql.ru> wrote in message news:3100355@sql.ru... Hi! > 1. Блокировки не по теме топика. Блокировки ровно по теме топика. Топик называется "Вопросы по реализации 3-х звенного приложения...". Я утверждал, что в задачах со "сложными" структурами данных и "сложной" бизнес-логикой блокировки являются СУЩЕСТВЕННЫМ фактором, ограничивающим масштабируемость и производительность информационных систем. Причем, принципиально неустранимым фактором. И как раз грамотный выбор архитектуры на основе трехзвенок (N-звенок) помогает как можно ближе подобраться к теоретическому пределу масштабируемости в таких задачах. Я просто описывал одну из причин для использования многозвенок, поскольку мне эти проблемы "ближе к телу". Я прекрасно понимаю, что у подавляющего большинства и бизнес -логика простая и структуры данных простые и не более 10 юзеров и требования к производительности невелики. Потому они выбирают трехзвенки по другим причинам. Я прекрасно понимаю, что подавляющее большинство никогда больше не услышит фразы "транзитивное замыкание хроматического графа". Я прекрасно понимаю, что большинство никогда не столкнется с проблемой, когда на ориентированном графе в 5 млн. вершин и 100 млн. ребер нужно найти все контуры не более, чем за полсекунды, при условии, что 1000 юзеров одновременно в этом графе что-то меняют. Я прекрасно понимаю, что большинство не волнует вопрос, можно ли такие задачи решать на оракле. Потому никому будет не интересно, что оракл на таких задачах ложится и больше не встает независимо от мощности сервера, количества памяти и процессоров. Так что если проблема блокировок никому больше не интересна, то можно завязать на этом. ____________________________ С уважением, Лисеев Дмитрий. http://private.peterlink.ru/dimik/ PGP key fingerprint: 09 28 74 28 6C 39 62 29 2E CB 95 03 4F 04 33 73 Posted via ActualForum NNTP Server 1.3 ... |
|||
:
Нравится:
Не нравится:
|
|||
07.09.2006, 23:41 |
|
Вопросы по реализации 3-х звенного приложения...
|
|||
---|---|---|---|
#18+
"iscrafm" <nospam@sql.ru> wrote in message news:3099397@sql.ru... Hi! > Грязное чтение само по себе не возникает. Его инициируют. Какое откровение. В мире вообще само по себе мало что возникает. > В случае с блокировкой он ждет, пока она будет таковой, > в случае lock-free или версионника, получит слепок базы без этой суммы. И какой ему толк от слепка базы с закоммиченными данными на начало транзакции? Можно включить воображение и представить те-же яйца, только в профиль. На счете изначально было 100 баксов. Тыща юзеров одновременно стартовали свои транзакции из разных банкоматов и попытались снять по 80 баксов. В слепке базы на начало каждой транзакции будет остаток в 100 баксов, в итоге каждый благополучно возьмет бабки. Вопрос в том, что будет при коммите всех транзакций. 20 баксов в остатке? А если хоть одна откатилась, то остаток опять на 100 вернется? Строго говоря, тут речь идет (как и в предыдущем моем примере) не о "грязном чтении", а о "грязной записи". То есть попытке изменить незакоммиченные данные. Собственно, именно при "грязной записи" транзакции оказываются невозможными, поскольку возникает логическое противоречие с самим определением "транзакции". ____________________________ С уважением, Лисеев Дмитрий. http://private.peterlink.ru/dimik/ PGP key fingerprint: 09 28 74 28 6C 39 62 29 2E CB 95 03 4F 04 33 73 Posted via ActualForum NNTP Server 1.3 ... |
|||
:
Нравится:
Не нравится:
|
|||
07.09.2006, 23:41 |
|
Вопросы по реализации 3-х звенного приложения...
|
|||
---|---|---|---|
#18+
Dmitry V. Liseev Это iscrafm ПРЕДПОЛОЖИЛ существование серверов, которые данную задачу могут решать без блокировок. Но от аргументации публично отказался. Потому это так и осталось ПРЕДПОЛОЖЕНИЕМ. Во-первых я не предполагаю. Если предполагаю, то так и говорю: по моему предположению... и т.д. Во-вторых, статья о том, как это работает выше в топике. Не пойму что Вы хотите? Чтобы я перевел на русский? Вы в примере открыли транзакцию и начали неспешно баловаться операторами. Так не нужно делать. К тому же Вы судя по всему не разделяете совсем читателей и писателей. Dmitry V. LiseevЯ прекрасно понимаю, что большинство никогда не столкнется с проблемой, когда на ориентированном графе в 5 млн. вершин и 100 млн. ребер нужно найти все контуры не более, чем за полсекунды, при условии, что 1000 юзеров одновременно в этом графе что-то меняют. Это где такое? Я даже когда прогнозами погоды занимался не доходил до 100 млн. ребер, одновременно двигаемых 1000 пользователями. Может стоит логику пересмотреть? А то и Deep Blue не хватит. Dmitry V. LiseevНа счете изначально было 100 баксов. Тыща юзеров одновременно стартовали свои транзакции из разных банкоматов и попытались снять по 80 баксов. В слепке базы на начало каждой транзакции будет остаток в 100 баксов, в итоге каждый благополучно возьмет бабки. Вопрос в том, что будет при коммите всех транзакций. 20 баксов в остатке? А если хоть одна откатилась, то остаток опять на 100 вернется? А еще может быть 360 билетов, которые хотят выкупить 1000 пассажиров и что? Ради интереса, хотя бы визуально посмотрите как работает Сирена. И над темой коротких транзакций имхо стоит задуматься. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2006, 00:15 |
|
Вопросы по реализации 3-х звенного приложения...
|
|||
---|---|---|---|
#18+
все это обсуждение, мне напоминает как один человек пытался проектировать систему следующим образом: авторИмеем, к примеру, диалоговое окно для редактирования некого документа. Имеем в этом окне список позиций. Добавляем позицию, делаем сопутствующие изменения в ряде таблиц (усугубим и допустим, что триггеров нет). И после этого мечтаем отменить сделанные на данном диалоговом шаге изменения. Перед открытием окна естественно открывалась транзакция. :) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2006, 12:01 |
|
Вопросы по реализации 3-х звенного приложения...
|
|||
---|---|---|---|
#18+
iscrafmвсе это обсуждение, мне напоминает как один человек пытался проектировать систему следующим образом: авторИмеем, к примеру, диалоговое окно для редактирования некого документа. Имеем в этом окне список позиций. Добавляем позицию, делаем сопутствующие изменения в ряде таблиц (усугубим и допустим, что триггеров нет). И после этого мечтаем отменить сделанные на данном диалоговом шаге изменения. Перед открытием окна естественно открывалась транзакция. :) можно усугубить и пойти на обед, к примеру, пока транзакция открыта. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2006, 12:43 |
|
Вопросы по реализации 3-х звенного приложения...
|
|||
---|---|---|---|
#18+
Petro123можно усугубить и пойти на обед, к примеру, пока транзакция открыта. Это была цитата из старого сообщения на GotDotNet. Такой аргумент ему тоже приводился :) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2006, 12:46 |
|
Вопросы по реализации 3-х звенного приложения...
|
|||
---|---|---|---|
#18+
iscrafmвсе это обсуждение, мне напоминает как один человек пытался проектировать систему следующим образом: авторИмеем, к примеру, диалоговое окно для редактирования некого документа. Имеем в этом окне список позиций. Добавляем позицию, делаем сопутствующие изменения в ряде таблиц (усугубим и допустим, что триггеров нет). И после этого мечтаем отменить сделанные на данном диалоговом шаге изменения. Перед открытием окна естественно открывалась транзакция. :) Это напомнило мне, как некто Merle пытался доказать мне, что спроектированная таким образом система нигде, никогда и ни при каких условиях не сможет нормально работать. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2006, 15:46 |
|
Вопросы по реализации 3-х звенного приложения...
|
|||
---|---|---|---|
#18+
softwarerЭто напомнило мне, как некто Merle пытался доказать мне, что спроектированная таким образом система нигде, никогда и ни при каких условиях не сможет нормально работать. А Вы считаете, что будет нормально работать? Мне даже тяжело представить при каких условиях.. хм. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.09.2006, 16:59 |
|
|
start [/forum/topic.php?fid=33&msg=33968213&tid=1549276]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
159ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
58ms |
get tp. blocked users: |
1ms |
others: | 12ms |
total: | 268ms |
0 / 0 |