|
Создание сервера приложений
|
|||
---|---|---|---|
#18+
VladiCh2Terrorist. Я не про маппер, а про использование iAS из OEBS. Если я Вас неправильно понял - приношу свои извинения. Я поэтому и написал, что iAS(apache+mod_plsl+mod_java) это не та трехзвенность, которую мы тут рассматриваем.... Хотя может, и я не правильно что-то понял... Необходимо четко определиться, что считать 3=-х звенной архитектурой ...... тут не раз вылазили названия драйвер и.т.п. .... Я не спец в построении теорий и придумывании определений, но попытаюсь всё таки что-то подобное наваять. Для меня 3-х звенная архитектура: Наличие приложения которое производит бизнесс-процессы с данными на их пути от приложения клиента до СУБД. Конвертация данных не является полноценным бизнес-процессом(так мы действительно до драйвера сетевухи дойдем). Наверное можно чётко сказать на какой диаграмме в УМЛ ... это должно быть вписанно.. я в УМЛ не силен :( Наличие ОРМ для бизнес-данных в таком приложении наверное являеться обязательным, что бы можно было считать его 3-х звенным(ОРМ может быть самописным и специализированным под конкретную задачу). А так же, я считаю, обязательным является полная независимость приложения клиента от СУБД. Просто хочеться выкинуть случаи когда 3-тим слоем называют ВЕБ-сервер( это как раз и делают маркетанты из оракл). ... |
|||
:
Нравится:
Не нравится:
|
|||
14.10.2005, 15:54 |
|
Создание сервера приложений
|
|||
---|---|---|---|
#18+
tygra2 VladiCh Вы пример то будете приводить или все же стесняетсь? молодой, горячий, зеленый (и все в плюс однако) ... |
|||
:
Нравится:
Не нравится:
|
|||
14.10.2005, 16:16 |
|
Создание сервера приложений
|
|||
---|---|---|---|
#18+
Пользователь молодой, горячий, зеленый (и все в плюс однако) Эк вы как о себе! Я бы не стал так на вашем месте ------------- Я смотрю, конкретика всех апологетов ООП_БЛ положила на лопатки. Это хорошо, будем знать, что конкретика - хорошее оружие, массового поражения :) -- Tygra's -- ... |
|||
:
Нравится:
Не нравится:
|
|||
14.10.2005, 16:25 |
|
Создание сервера приложений
|
|||
---|---|---|---|
#18+
tygra tygraКомментарий пожалуйста - что есть такое объектная модель бизнес-логики? Для необъектной СУБД очень даже интересно послушать. Ткните мордой меня - где вы показали то, о чем я спрашиваю Тогда я отвяжусь. Объектная модель бизнес-логики - это объектная модель бизнес-логики. Вам непонятен термин "объектная модель" или "бизнес-логика"? Вы действительно этого термина не знаете или прикидываетесь? Это модель бизнес-логики, выраженная в терминах объектов. Эти объекты могут существовать в среднем слое или на клиенте, в моем случае в среднем слое. Какой вам нужен пример применения? Например CRM, часть, связанная с хранением информации о заказах. Заказ в процессе работы с клиентом проходит несколько этапов: 1. Заявка 2. Счет 3. Заказ Это разные сущности системы, у которых в принципе разный набор атрибутов, есть базовый класс, от которого они все наследуются. Список товаров, которые заказываются, привязаны к базовому классу. Список операций тоже разный, но есть одни и те же операции, существующие на уровне базового класса, например добавить новый товар к списку товаров, откорректировать цену на товар (применимо для счета и заказа). При этом некоторые операции для разных типов объектов действуют по-разному. Например, изменение цены для товара в заказе должно отражаться на статусе заказа, а изменение цены в счете не отражается, т.к. поля “статус заказа” в нем вообще нет. Формы на клиенте тоже разные, но наследуются от одной базовой с добавлением вызовов операций, специфических для данного объекта. В принципе, так как список доступных операций хранится в метаданных с описанием и типами параметров, можно было бы обойтись вообще одной универсальной формой на все случаи жизни, ну или почти на все :). Это конечно утопия, но я думаю здравое зерно здесь тоже есть, надо попробовать что-нибудь сделать в этом направлении. Еще нужны примеры? Вот примеры, которые я уже приводил: /topic/218568&pg=8#1958457 /topic/218568&pg=12#1961995 Вы от меня наконец отвяжитесь? tygraА пока что вы гнете понты и только. И знаете вашу систему не больше, чем я знаю вашу же систему. Ну разумеется, вам наверное виднее... Телепатов и ясновидящих здесь навалом, присоединяйтесь… А вообще вы выбрали довольно некрасивую тактику – после демонстрации убогой архитектуры вашей системы, показать какие-то преимущества которой вы даже и не пытались, обвинять меня в том, что я и в своей-то системе не разбираюсь. Доказать это вы не в состоянии, так хотя бы покричать погромче. Кто громче кричит, того лучше слышно… ... |
|||
:
Нравится:
Не нравится:
|
|||
14.10.2005, 16:33 |
|
Создание сервера приложений
|
|||
---|---|---|---|
#18+
VladiCh Тигра, конечно, молодой, горячий и зеленый. Но! Я, например, тоже никах примеров по вынесению БЛ в СП от Вас так и не увидел. Забейте на Тигру, опишите пример мне :). Про секьюрити леер - это к БЛ отношения, в общем-то, не имеет. Про ценообразование было сказано, что типа "вот оно сложное есть и поэтому мы его в СП вынесли", однако описания конкретной последовательности действий приведено так и не было. Я лично продолжаю полагать, что в СП вы этот расчет вынесли, т.к. не смогли это по каким-то причинам реализовать это в БД, что вовсе не означает, что так делать правильно. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.10.2005, 16:46 |
|
Создание сервера приложений
|
|||
---|---|---|---|
#18+
Епрст ....... Нам не надо читать лекции про теорию ООП. Было спрошено: конкретный пример работы, с вызовом метода, как его вызвать, как его найти и т.д. Это не понятно чтоли? Более того, то вы рассказываете, что все у вас генерится автоматически, то теперь уже не так - Формы на клиенте тоже разные Ладно, не мне, Инженеру расскажите с примером. -- Tygra's -- ... |
|||
:
Нравится:
Не нравится:
|
|||
14.10.2005, 16:55 |
|
Создание сервера приложений
|
|||
---|---|---|---|
#18+
2 Инженер Эх, если бы сейчас туда, когда был молодым, горячим и зеленым........... Столько раз дураком бы не был....... Но не вернуть время. Пока машину времени не сделали :)) С другой стороны хорошо - как саперы, если наступил, то все... :) -- Tygra's -- ... |
|||
:
Нравится:
Не нравится:
|
|||
14.10.2005, 16:57 |
|
Создание сервера приложений
|
|||
---|---|---|---|
#18+
ИнженерЯ, например, тоже никах примеров по вынесению БЛ в СП от Вас так и не увидел. Тигра от меня добивался конкретного примера использования объектов, вы же то меня тут другого добиваетесь :) Ладно, я расскажу, каким образом БЛ вынесена в средний слой. В "тигриной" терминологии, средний слой действительно представляет собой "толстый драйвер", выполняющий преобразование данных в другой формат и кэширование, некоторую внутреннюю оптимизацию . Система имеет 2 пользовательских интерфейса - веб-интерфейс и десктоп-интерфейс. Средний слой функционирует на веб-сервисах и веб-интерфейс работает с ним напрямую, без промежуточного звена. Логически разделение остается на 3 слоя, но физически веб-интерфейс работает с компонентами среднего слоя без сетевого подключения, просто используя ту же .NET-сборку, что и веб-сервисы. Десктопное приложение в результате использует то же API, что и веб-приложение, но данные объектов сериализуются в SOAP и десериализуются на клиенте. Так что, СП у меня фактически виртуальный, по крайней мере в случае веб-интерфейса. Хотя это сделано исключительно из целей повысить производительность веб-интерфейса и в принципе из веб-приложения есть возможность работать также через веб-сервисы. .NET-сборка с интерфейсами объектов живет как на клиенте, так и на среднем слое. На клиенте в случае WinForms для нее создается обертка для клиентской часть веб-сервиса, на сервере - для серверной. В случае WebForms вызов идет напрямую. Как проиходит процесс создания нового объекта: Я описываю в БД новый тип, его атрибуты и методы, при этом могу сгенерить код-заглушку для класса (если требуется, т.к. в принципе, я могу работать с любым объектом через базовый класс Entity, получить у него список методов, список параметров у метода, вызвать нужный метод и т.п., но это неудобно в случае, если на него навешана своя бизнес-логика). Насчет того, как найти метод и вызвать его - зачем мне его искать, когда при выполнении запроса на выбор списка объектов, если например в списке разнотипные объекты, то на клиенте я получу их уже типизированными, с нужными методами, после того как вызову определенный метод будет вызван нужный веб-сервис и т.п. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.10.2005, 17:19 |
|
Создание сервера приложений
|
|||
---|---|---|---|
#18+
Про ценообразование не говорилось, что оно сложное. Там речь совсем о другом шла. Сложным я там называл разбор свеого языка запросов, который в нашей системе используется. Если я хочу выбрать список каких-нибудь объектов, я выполняю запрос на своем языке, который разбирается в среднем слое и конвертируется в соответствующий SQL, при этом м.б. указаны связи, описанные в метаданных, по этим связям могут быть загружены дочерние объекты. Если дочерние объекты по связям не загружены, то в зависимости от того, как происходит обращение, может происходить "ленивая" загрузка при обращении к полю объекта, содержащему ссылку на другой объект. Затем результата выполнения этого SQL преобразуется в список объектов. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.10.2005, 17:29 |
|
Создание сервера приложений
|
|||
---|---|---|---|
#18+
VladiCh Мдя Я Вам про Фому, а Вы мне про Емелю :) Мне не интересно, как (и зачем) устроена обьектная "обертка". Я вполне согласен с тем, что она ("обертка") имеет право на существование . Меня интересует пример (алгоритм взаимодействия СУБД-СП-Клиента) с расчетом цен в СП и дальнейшая судьба расчитанных данных. Или любые другие такие примеры, когда на основании полученного набора данных от СУБД, СП совершает какую-либо обработку (расчет, преобразование) и полученный результат отдает клиенту или на основании результата обработки совершает какие-либо изменения в БД. Все остальное в рамках этой темы меня не интересует (пока ). ... |
|||
:
Нравится:
Не нравится:
|
|||
14.10.2005, 17:34 |
|
Создание сервера приложений
|
|||
---|---|---|---|
#18+
Ну так Вы прочитайте внимательно, я написал, что на настоящий момент расчеты в СП не проводятся. Я неоднократно писал, что в результате логика все равно работает внутри базы данных, а СП выполняет вспомогательные функции + на нем живет объектный слой. В принципе такие расчеты можно проводить, просто в нашем случае возникают проблемы с ними. Например, с тем же ценообразованием. У нас расчет цены производится в момент выборки из БД, потому что иначе очень медленно будет работать поиск/сортировка по полю "цена" на уровне СП, т.к. расчет быстро выполняется для одного товара, но для нескольких тысяч при расчете на уровне СП это будет не быстро. Здесь действительно SQL рулит. Если бы такого требования не было и достаточно было выполнять поиск/сортировку по хранящейся в БД базовой цене, то вполне реально и довольно удобно было бы расчет цены производить в СП и отдавать клиенту. Т.е. загружать список скидок для товара/группы отображаемых товаров и на уровне СП расчитывать цену. Если бы скидки не были индивидуальными для каждого клиента, можно было бы пересчитывать их в момент изменения для всех товаров, т.к. не так часто они меняются и так же хранить в БД. Но этот вариант у нас тоже не проходит. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.10.2005, 17:58 |
|
Создание сервера приложений
|
|||
---|---|---|---|
#18+
Я писал, когда Вашего предыдущего моему поста еще не было - это ж очевидно ;) Мой пост актуален начиная со слов " Или любые другие..." ... |
|||
:
Нравится:
Не нравится:
|
|||
14.10.2005, 18:06 |
|
Создание сервера приложений
|
|||
---|---|---|---|
#18+
В моем предыдущем посте содержится ответ на Ваш вопрос - VladiChЯ неоднократно писал, что в результате логика все равно работает внутри базы данных, а СП выполняет вспомогательные функции + на нем живет объектный слойДобавлю только, что я не исключаю, что какую-то часть расчетов надо будет выносить в СП и пример этого привел в том же посте. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.10.2005, 18:17 |
|
Создание сервера приложений
|
|||
---|---|---|---|
#18+
Гы. Последние пять-шесть-семь страниц препирательств - все впустую Тема СП, я думаю, раскрыта. ... VladiChЕсли бы такого требования не было и достаточно было выполнять поиск/сортировку по хранящейся в БД базовой цене, то вполне реально и довольно удобно было бы расчет цены производить в СП и отдавать клиенту. Т.е. загружать список скидок для товара/группы отображаемых товаров и на уровне СП расчитывать цену. Если бы скидки не были индивидуальными для каждого клиента, можно было бы пересчитывать их в момент изменения для всех товаров, т.к. не так часто они меняются и так же хранить в БД. Наверное, при всех оговорках, действительно удобно и быстро. Только реальность, что в БД еще удобней и быстрее :D Не говоря о накладных расходах на гоняние трафика в обе стороны. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.10.2005, 18:18 |
|
Создание сервера приложений
|
|||
---|---|---|---|
#18+
тот жея не исключаю, что какую-то часть расчетов балин, опять двадцать пять. НАПРИМЕР?!?!?! :D ... |
|||
:
Нравится:
Не нравится:
|
|||
14.10.2005, 18:19 |
|
Создание сервера приложений
|
|||
---|---|---|---|
#18+
Инженер тот жея не исключаю, что какую-то часть расчетов балин, опять двадцать пять. НАПРИМЕР?!?!?! :D этот пост не считается, сорри предыдущего достаточно. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.10.2005, 18:34 |
|
Создание сервера приложений
|
|||
---|---|---|---|
#18+
ИнженерГы. Последние пять-шесть-семь страниц препирательств - все впустую Ну почему впустую? Тут в основном тема объектного слоя обсуждалась, а не СП, несмотря на название топика :). И она, как я понял, еще не закончена :). Инженербалин, опять двадцать пять. НАПРИМЕР?!?!?! :D Ну Вы же сами процитировали. Да, в целом со множествами работать в SQL быстрее и удобнее, но это проявляется на больших объемах. Если же объемы небольшие, а алгоритмически вычисления сложные, то удобнее их выполнять на сервере приложений. Это общие соображения, совсем конкретный пример я сейчас вряд ли приведу, надо подумать. Ну к примеру, если в ходе таких вычислений никак не обойтись без временных таблиц/курсоров и т.п. И не надо говорить про криво спроектированную БД - такие задачи все-таки существуют. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.10.2005, 18:40 |
|
Создание сервера приложений
|
|||
---|---|---|---|
#18+
VladiCh. > ... Это общие соображения, совсем конкретный пример я сейчас вряд ли приведу, надо подумать. Ну к примеру, если в ходе таких вычислений никак не обойтись без временных таблиц/курсоров и т.п. И не надо говорить про криво спроектированную БД - такие задачи все-таки существуют. Здесь: http://www.sql.ru/forum/actualthread.aspx?tid=214017&pg=6 обсуждался аналогичный вопрос. Приведу свой пример. >Здравствуйте, Валентин. >Похоже, мы вряд ли поймем друг друга, но попытка не пытка. Хочу привести >один пример из жизни. Заранее оговариваюсь, то в то время этой задачи не >решил. >В конце 70-х занимался автоматизацией одного хим. процесса. "Горшок", в >него наливают, мешают, добавляют, вообшем варят "кашу", не пшонку >конечно. В колбах все прекрасно, а далее тормоз. >Самой собой, все злые как собаки. Наука требует одно, технологи творят >другое, а аппаратчики как обычно - свое. Никакой воспроизводимости. >Наш главный ногами топает - все технологические данные в базу данных и >хранить. Циклы съема от 2 до 10 секунд. Да и параметров в районе десятка. >Сейчас это ерунда, тогда - другое дело. Горшок в Навои, наука в >Ленинграде. Науке требуются кривые. Передать такой объем данных по тем >линиям связи не смогли. Какая то умная голова выдала, если им требуются >графики, то давайте аппраксимируем сплайном. При этой идее сжатие >тысяче кратное. Очень красиво - передавать только параметры сплайна. >Причем сплайн строится по выборке и её размер можно варьировать, задавая >временной интервал, и можно поднимать точность аппроксимации. Сейчас, >имея прототип, я бы её решил. >База данных, здесь не пуп земли. >Не знаю, на сколько удобно применять, например, T-SQL для задач >вычислительной математики. >Чем хорош здесь .Net - могу применять разные молули из разных языков. >Больше всего интересна связь C# и Fortran. >Смею заметить, что такие задачи есть. Мы просто не умеем их готовить. > >С уважением, Владимир. Меня весьма серьезно интересует вопрос, как разные SQL сервера держат нагрузку при построении страниц из отсортированных выборок из всей таблицы (число записей большое(очень), число одновременных запросов также). Как эту задачу решил для MSSQL опубликовано здесь: http://www.gotdotnet.ru/LearnDotNet/NETFramework/223738.aspx Сейчас склоняюсь к мысли передавать поля (ключ, сортировочное) на сервер приложения и строить страницу там. Посмотрю скорость. С уважением, Владимир. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.10.2005, 00:13 |
|
Создание сервера приложений
|
|||
---|---|---|---|
#18+
ВМоисеев Меня весьма серьезно интересует вопрос, как разные SQL сервера держат нагрузку при построении страниц из отсортированных выборок из всей таблицы (число записей большое(очень), число одновременных запросов также). Cейчас склоняюсь к мысли передавать поля (ключ, сортировочное) на сервер приложения и строить страницу там. Посмотрю скорость. Это чистый оффтоп- тема описывается в FAQ в форуме по MS SQL. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.10.2005, 21:04 |
|
Создание сервера приложений
|
|||
---|---|---|---|
#18+
DrKonito. >Это чистый оффтоп- тема описывается в FAQ в форуме по MS SQL. Почти исчерпывающая информация по данному вопросу для MSSQL представлена здесь /topic/179930&pg=18 Но хотелось получить и по другим, в первую очередь по Oracle, популярным серверам данных. С уважением, Владимир. p.s. Если можно, приводите пожалуйста ссылки. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.10.2005, 23:09 |
|
Создание сервера приложений
|
|||
---|---|---|---|
#18+
ВМоисеевDrKonito. Но хотелось получить и по другим, в первую очередь по Oracle, популярным серверам данных. Офтоп 100%. Для этого есть форумы по соответствующим СУБД. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.10.2005, 13:42 |
|
Создание сервера приложений
|
|||
---|---|---|---|
#18+
Инженер DrKonitoИмхо чтобы необходимость технологии представляющей новый уровень абстракции над "процедурным SQL" ... она действительно должна означать повышение производительности труда Наверное, причина не обязательно д.б. в повышении производительности. Я тут подумал, использование обертки, действительно, может снизить требования к квалификации кодеров. По нынешним временам это важно. А вы пробовали это делать? Я имел возможность сначала наблюдать, а потом заниматься этим на практике :) Вы 400х долларового кодера видели? Обычно это человек год-другой поработавший на штуке типа Ацесса, ПХП или Икселевского ВБА. Бэкграунд совершенно непредсказуем. Например человек может совершенно не знать, что такое реестр. Обычно бывает базовое понятие о синтаксисе SQL, если этого нет - то номер совсем дохлый. Понимание ООП обычно присутствует на уровне рассказывания на собеседовании вызубренных накануне определений наследования, полиморфизма и инкапсуляции. Большой минус- очень трудно выбирать- потому, что все что человек знает вобщем-то не имеет значения :) Ему придется учиться заново. Перед вами стоит задача, получить от такого персножа какую-нибудь пользу для проекта. Как думаете, вы сможете быстро объяснить такому человеку ФирменнуюОченьПростуюОбъектнуюМодель? Или дать ему ПодробныйУчебникПоФирменнойОбъектнойМодели, прочитав который он вольется в работу? Не надейтесь- ВСЕГДА требуется выделенный тренер и несколько недель обучения. Даже если работа организована по принципу "кто выплывет", кто-то все-равно должен будет отвечать на вопросы. Если думаете, что после этого вы получили полноценного кодера для проекта, то ошибаетесь. У таких людей отсутвует самое главное- ПониманиеТогоКакСистемаРаботает. При малейшем отклонении от того, что было в учебных примерах работа встает и наступает либо ДолгийТормоз либо ДоставаниеВсехВстречныхТупымиВопросами. Реально есть у вас выделенный тренер или нет, кто-то подобрее будет большую часть рабочего дня поддерживать ДешевыхКодеров. Первые сдвиги появляются через пол-года\год в зависимости от умственных способностей подопытных. Только тогда человек становится пригоден к реально самостоятельной работе. Это не значит, что они начали ПониматьКакВсеЭтоРаботает. Просто они набрали достаточно опыта, чтобы выход от них стал больше входа :) Соответственно, при любой нетривиальной проблеме они будут отвлекать тех кто реально делает работу. Хорошая новость: через год-полтора-два понимание понимание начнет появляться. Вопрос в том, готовы ли вы ждать столько времени? Так вот я утверждаю, что у вышеописанного специалиста в случае тупой двухзвенки первая веха- "выход больше входа" наступает через несколько недель. Про сроки второй вехи "понимание как это работает" судить значительно труднее, потому, что она по большому счету, уже не столь значима. Просто со временем растет понимание где какие данные хранятся и как используются (достаточно единообразным, сто раз разжеванным в литературе и поддержанным средой разработки способом) - это вобщем-то эволюционный, постепенный процесс. Квалификация как при найме, так и при дальнейшей работе, измеряема стандартными тестами поставщиков по технологиям клиента и SQL (например MCP или брэйндампы для подготовки к нему). Вобщем, это для меня "снижение квалификации кодеров" в случае объектных оберток бизнес-логики- типичный миф. Я это видел своими глазами- не рекомендую. Решайте сами. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.10.2005, 13:46 |
|
Создание сервера приложений
|
|||
---|---|---|---|
#18+
VladiCh ИнженерГы. Последние пять-шесть-семь страниц препирательств - все впустую Ну почему впустую? Тут в основном тема объектного слоя обсуждалась, а не СП, несмотря на название топика :). И она, как я понял, еще не закончена :). Тема объектного слоя рано или поздно приводит либо к логике в клиенте, либо к выделенному СП. Первый вариант, я думаю, малоинтересен :) Так что говоря об "объектном слое" реально приходится говорить о сервере приложений. VladiCh DrKonitoДля меня очевидны проблемы с производительностью, интеграцией, эксплуатацией, незрелостью используемых технологий. Ну-ка поподробнее... Конкретно интересуют проблемы с интеграцией, эксплуатацией и незрелостью технологий. С производительностью - спорный вопрос, хотя с некоторыми оговорками готов согласиться... В принципе я уже предлагал ответить на ряд вопросов на эту тему - я думаю моя позиция стала бы понятнее Ок, мне не жалко переформулирую: 1)Интеграция С интеграцией у СП плохо не в том случае, когда СП скрывает от клиента подлинный источник данных - здесь у СП все хорошо. Плохо у них, когда стороннему приложению надо взаимодействовать с вашим СП. Расскажите, как в вашей системе решаются вопросы 1.1) построения отчетов 1.2) распределенных транзакций 1.3) пакетных заданий Я не говорю, что ни один из этих вопросов не решаем. Каждый из них решаем в том или ином виде. Вопрос в том, что ради этого вам придется писать кучу нетривиального кода, ради того, что в СУБД уже есть и этим надо просто пользоваться. На моей прошлой работе ребята полгода собственный шедулер отлаживали (непростая тема оказывается), стандартные не подходили :) Да еще они хотели писать ОлеДб провайдер к своему СП :) Я понимаю, что это очень полезно и интересно с точки зрения чистого програмизма, но когда мне нужен результат с точки зрения заказчика, сами понимаете. 2)Эксплуатация 2.1) Деплоймент изменений - каждое изменение в СП - это как минимум рестарт СП, возможно обновление всех клиентов. Зависит от фантазии разработчика. При двузвенке - это просто прогрузка измененной процедуры. А если изменений несколько в день. Не пробовали? У вас наверное ежедневные билды и релиз раз в месяц? :) 2.2) Аудит системы, мониторинг производительности. В СУБД уже все есть ;) 2.3) Поиск нетривиальных ошибок в системе, да и тривиальных тоже. Врядли вы в своем СП реализуете, что-нибудь круче обычного SQL-Profiler. Хорошо если у вас есть хотябы БольшойПротокол работы СП. 2.4) Время безостановочной работы системы- как вы думаете, что проработает дольше глючный M$ SQL сервер или даже сто раз вылизанный самодельный СП? 2.5) Кто может поддерживать ваш СП? Только специально сертифицированные по вашему СП специалисты и разработчики. Первые и вторые это одни и те же люди? ;) 3) Зрелость 3.1) Хотели бы в 1980 году внедрять Оракыл у себя на предприятии? Когда еще не было РАДа, ОДБЦ и Оракыл падал и портил данные заказчиков:) Другими словами у меня глубокое ощущение, что идеи СП находятся сейчас примерно на той же стадии развития. 3.2) Поддержка со стороны поставщиков сред разработки. Чтобы они не говорили об Архитектурах Систем Будущего, вытаскивать данные из СУБД в клиента умеют все и умеют хорошо. 3.3) Понимание со стороны разработчиков. За годы клиент-серверной разработки выработались общепринятые приемы использования, с которыми знакомы все. В том числе люди готовые работать за 400 баксов. В области серверов приложений каждый изобретает свой велосипед. И долго будут еще изобретать, пока поставщики не договорятся до какого-то наименьшего общего знаменателя. Велосипеды приходится часто переделывать или вообще выкидывать, например когда поставщик скажет, что он ошибался и у него есть для вас лучшая технология.. Последнее время, кстати, они стали говорить это подозрительно часто. 3.4) Откуда берётся администратор для вашей системы? Просто покупается на рынке и начинает делать свою работу? Покупается на рынке и учится с нуля? Какой вариант ваш? 3.5) Расскажите какой вы видите свою систему через 5 лет. Наверное это вообще самый важный вопрос, когда рассуждаешь о зрелости технологии. Остальные вопросы, честно говоря, риторические - ответьте хотя бы на этот :) ... |
|||
:
Нравится:
Не нравится:
|
|||
16.10.2005, 13:58 |
|
Создание сервера приложений
|
|||
---|---|---|---|
#18+
2 DrKonito Эх, хороший пост написал, ждем ответов от VladiCh с большим нетерпением. Правда боюсь, ответы будут такие же, как и ранее. 2 VladiCh В результате ваших ответов на предыдущей странице так и не прояснилось - каким образом у вас методы вяжутся между друг другом, как они физически вызываются из приложения ... ну и много чего еще. Но стало более запутанно - это точно. авторТигра от меня добивался конкретного примера использования объектов, вы же то меня тут другого добиваетесь :) Ну так пример то будет али нет? А то Тигра лапы уже стер - столько раз ворос писал, а так ничего от вас и не добился. Некарашо! авторВ "тигриной" терминологии, средний слой действительно представляет собой "толстый драйвер",.................. Тут вроде понятно - что-то передает туды-сюды данные. Точно непонятно, зачем именно так (почему вин-клиент не работает напрямую с БД?), но ладно, фиг с ним. авторНа клиенте в случае WinForms для нее создается обертка для клиентской часть веб-сервиса, на сервере - для серверной. В случае WebForms вызов идет напрямую Тут уже проблемы - зачем так, почему и что делается вообще...??? :) авторНасчет того, как найти метод и вызвать его - зачем мне его искать, когда при выполнении запроса на выбор списка объектов, если например в списке разнотипные объекты, то на клиенте я получу их уже типизированными, с нужными методами , после того как вызову определенный метод будет вызван нужный веб-сервис и т.п. Дык!!!!!!!!!!!!! Ёпрст!!!! Ну сколько можно. Отмечено крсным болдом то, о чем разговор. Как вы его вызываете то, метод ваш? В приложении - как? Если его на стадии разработки нет - как его можно вызвать? Вас десятую страницу просят показать пример - вы упорно отказываетесь, каждый раз впадая в теорию ООП. Переведу на русский язык, что у вас спрашивают, что вы отвечаете: Вопрос: Скажите, как вы переключаете передачи в коробке передач вашей машины? Ответ: Коробка передач - это такая штука, в которой есть шестеренки, валы и много чего другого. Когда шестеренки между обой взаимодействуют, от дигателя передается крутящий момент на колеса. Можно переключать передачи и передавать момент по разному. Вопрос: Нет, это понятно, но мы проси вас рассказать, как именно вы именно в вашей машине переключаете передачи? Ответ: Коробка передач - это такая штука................... Вопрос (нервно, с топором руках): да все это знают, давно эти коробки зучены. Вы нам скажите, как вы физически переключаете передачи, с первой на вторую, дальше там.... в какой момент, как... Ответ: Коробка передач - это такая штука........................... Так расскажите или нет? Или прав Тигра - вы это еще не изучили? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.10.2005, 18:20 |
|
Создание сервера приложений
|
|||
---|---|---|---|
#18+
DrKonito Вобщем, это для меня "снижение квалификации кодеров" в случае объектных оберток бизнес-логики- типичный миф. Я это видел своими глазами- не рекомендую. Решайте сами. А вот у меня другая точка зрения. В любой КС системе (неважно сколько там слоев) существует серверная и клиентская часть (GUI). Разработка GUI при этом является достаточно трудоемкой задачей, отнимающей много человеко-часов. Причем практика показывает, что люди, обладающие квалификацией для разработки серверной части, к GUI обычно относятся прохладно, да и вроде бы GUI и есть самый подходящий модуль системы для отдачи "кодерам". И вот здесь очень хорошо, чтобы сервер предоставлял некий ограничивающий framework разработчикам клиентской стороны. При правильной организации этого framework можно не бояться, что человек испортит данные (логически естественно) на сервере, вызвав какую-нибудь ХП (написанную для внутреннего использования), не очень понимая, что она выполняет. Т.е. разработку КС системы желательно вести след. образом: 1. Несколько квалифицированных человек пишут серверную часть + framework для работы с сервером 2. Для разработки GUI возможно привлечение "кодеров", аутсорсинг и т.п. Теперь объясню, что я называю framework: В зависимости от сложности и спецификации системы это может быть: 1. Просто WEB service, предоставляющий методы для доступа 2. Некий объектный mapper (обертка) 3. Более продвинутый СП, с кешированием результатов некоторых запросов, мат. вычислениями и т.п. В любой системе со сроком жизни более 2 лет очень важно сохранить "стройность мысли" на серверной стороне - проектировать похожие вещи одинаково, придерживаться системы именований и т.п. Добиться этого можно, имея одного-двух человек в качестве core-team, и возможности привлечения неквалифицированных разработчиков для клиентской части. Потому что найти одного "гуру" на замену можно, а вот найти быстро 5 вменяемых разработчиков - нереально. В чем полностью согласен с DrCornito, что скорость "въезжания" в детали системы не зависит от того объектная она или нет. Если человек 3 года писал серверную часть на ХП, придумывал удобную ему систему именования процедур и т.п. - он сам в ней найдет все за секунду и никто не докажет ему, что объектный подход поможет ему в разработке системы - потому что действительно не поможет. Сам я за объектный подход. В качестве примера можно взять Win32 API и VCL/.Net framework. Можно сделать одинаковый GUI на WinAPI и VCL? Конечно, можно. Но найдите студента, который вам его сделает на WinAPI - их единицы (если вообще есть). ... |
|||
:
Нравится:
Не нравится:
|
|||
17.10.2005, 00:03 |
|
|
start [/forum/topic.php?fid=33&msg=33325618&tid=1548944]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
129ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
63ms |
get tp. blocked users: |
2ms |
others: | 13ms |
total: | 246ms |
0 / 0 |