powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ERP и учетные системы [игнор отключен] [закрыт для гостей] / 3-tier своими руками
106 сообщений из 106, показаны все 5 страниц
3-tier своими руками
    #32725017
bizonline
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
По адресу http://www.bizonline.ru/tutorial/html/pub001.html находится статья, описывающая шаги по созданию сервера приложений на основе свободных компонентов. Иллюстрирована работающими примерами и исходными кодами. Первый опыт графоманства, так что строго не судите. По возмжности пишите на почту, указанную в статье, так как на этом форуме бываю редко.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32725559
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну....

Вот это
автор...SQL серверу оставить роль которая ему и предназанчена изначально - хранение и выборка данных..

наводит на некоторые неприятные размышления :)

Дальше я читать перестал - уж слишком много картинок и примеров :)

Могу сказать только одно: берется .net и делается система без так сказать сервера приложений в его обычном смысле - с бизнес-правилами и т.д. - а исполняющего роль передатчика данных от клиента к серверу БД и обратно посредством веб-сервисов. Естественно на БД возложено все, что должно быть там в к-с системах: и безнес-логика, и все ограничения :)

Т.е. системы такого рода, когда нужно дать доступ филиалам, можно сделать без проблем с использованием веб-сервисов, немного изменив клиента и не иметь лишних проблем и гимора с "бизнес-логическим апп-сервером" - как и в обычной к-с, все держится на СУБД, которая как раз и существует для того, чтобы вмещать в себя бизнес-логику, а не только хранить и выбирать данные . (Кстати у нас есть система, которая сделана именно таким способом - диблирует работу с мгазином, но только через вин-приложение. ХП почти все те же, что и используются из веба.)

ЗЫ Не то, чтобы я хотел обидеть - нет, совсем нет.
Просто уже немного отстал данный пример от жизни. Или много. Или даже сразу - зачем и причем тут разгрузка БД от того, что она и должна делать, мне непонятно.

-- Tygra's --
...
Рейтинг: 0 / 0
3-tier своими руками
    #32725801
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> все держится на СУБД, которая как раз и существует для того, чтобы вмещать в
> себя бизнес-логику, а не только хранить и выбирать данные.

Это Вы, уважаемый, мануалов от мелкомягких перекурили. ;)
...
Рейтинг: 0 / 0
3-tier своими руками
    #32725834
Demong
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
guest_20040621>
Это Вы, уважаемый, мануалов от мелкомягких перекурили. ;)


:D :D :D
...
Рейтинг: 0 / 0
3-tier своими руками
    #32725840
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И от Оракла :)

-- Tygra's --
...
Рейтинг: 0 / 0
3-tier своими руками
    #32725887
LSV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Была масса топиков про 3-хзвенку. В основном как принак "плохого тона проектирования".
Прежде чем затевать это - подумайте сто раз. По уму сделать очень сложно. Не по уму вам наверно не нужно... :)
Задач, где реально (!) нужна 3-tier совсем мало.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32725932
Фотография Old Nick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да что вы заладили. Очень даже хороший пример проектирования для масштабируемого приложения. У любого SQL сервера есть проблема, он не может эффективно обрабатывать большое количество коннектов. Жрется много ресурсов. Попробуйте сделать одновременно 10 000 коннектов и увидите.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32725943
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В таком случае - при 10000 коннектов - умрет сервер приложений. Либо нельзя будет работать через него, потому что: 1. Он не сможет сделать 10000 коннектов к БД или 2. Он не сможет одновременно обработать 10000 юзеров, потому что одновременно - это значит запрос в БД, т.е. смотри п1, а если неодновременно, то извините, десятитысячному юзеру придется долго ждать ответа :)

В общем... LSV все уже сказал

-- Tygra's --
...
Рейтинг: 0 / 0
3-tier своими руками
    #32725973
Фотография Old Nick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вебсервис работает по-другому. Он создает экземпляр только по запросу, отрабатывает и убивается, высвобождая ресурсы. При этом одновременных коннекций к серверу будет намного меньше. Этого можно добиться в двухзвенке открывая/закрывая коннекции только по запросу, но сами понимаете о чем я...
...
Рейтинг: 0 / 0
3-tier своими руками
    #32725989
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> Была масса топиков про 3-хзвенку. В основном как принак "плохого тона проектирования".

И о чем это должно говорить, собственно?

> Задач, где реально (!) нужна 3-tier совсем мало.

Да ну? Попрошу обосновать это imho опрометчивое заявление.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32726094
Alexey Sh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"по уму" много вещей сделать сложно, не только трёхзвенки.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32726141
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Old NickВебсервис работает по-другому. Он создает экземпляр только по запросу, отрабатывает и убивается, высвобождая ресурсы. При этом одновременных коннекций к серверу будет намного меньше. Этого можно добиться в двухзвенке открывая/закрывая коннекции только по запросу, но сами понимаете о чем я...

Так это понятно, я как раз не об вебах говорил, а об апп-сервере.

guest_20040621> Задач, где реально (!) нужна 3-tier совсем мало.

Да ну? Попрошу обосновать это imho опрометчивое заявление.

Так это вы уж обосновывайте и примеры приводите, что многозвенка нужна. Никто пока не привел никаких примеров - только некоторые совсем специфические, с которыми никто не спорит. Применение же многозвенной технологии в обычных к-с системах приводит только к усложенению и лишним затратам. Так что ждемс.

-- Tygra's --
...
Рейтинг: 0 / 0
3-tier своими руками
    #32726184
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> Так это вы уж обосновывайте и примеры приводите, что многозвенка нужна.

Дружище, у Вас с логикой проблемы? Я ничего не утверждал и примеров приводить не вижу необходимости. А вот товарищ LSV сказал imho глупость "Задач, где реально (!) нужна 3-tier совсем мало." Очень хочется услышать, почему он так считает. Какие примеры я должен привести в _обоснование его мнения_?

> Применение же многозвенной технологии в обычных к-с системах приводит только
> к усложенению и лишним затратам.

Это Ваше мнение. Оно ошибочно.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32726224
Фотография Old Nick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А я говорил об АппСервере на вебах. О чем статья и вещает.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32726441
funman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем доброго времени суток.
Не знаю как вы, уважаемые, но я понял, что по сути предложен способ соэдания к-с приложений для которых в принципе нет ограничений по ресурсам (насколько я помню Apache ещё и кластеризуется). Соединения тоже не держутся постоянно, а то что автор не используют .net, лично я его очень хорошо понимаю (самого мелкий достал до самых пяток) - попробуйте обратиться за поддержкой даже зарегистрированного продукта ;-) Попробуйте посчитать во сколько обойдется подобная штуковина на платных продуктах :o.
Хотя выбор perl для реализации сервера приложений (автор - большой гурман).
...
Рейтинг: 0 / 0
3-tier своими руками
    #32726472
michael_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Когда, на мой взгляд, нужна 3-х звенка:
1. Тысячи коннектов с простыми запросами, из них много "левых", которые надо отсечь раньше, чтоб СУБД не напрягать (Интернет-торговля).
2. Тысячи коннектов, которые можно распараллелить на разные СУБД, а то один сервер не справляется (информационные системы в Инете)

То есть WEB, WEB и еще раз WEB.

А в КИС, когда одновременных коннектов к базе не более 200, заморачиваться не стоит

НО! Если вам все-таки нужен сервре приложений, то не надо изобретать велосипед. На рынке есть ряд веьма зрелых решений от таких компаний как Sybase, Oracle, IBM, MS. Пишите для них компоненты и юзайте.
А так можно докатиться и до написания своей ОС и СУБД.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32726637
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор1. Тысячи коннектов с простыми запросами, из них много "левых", которые надо отсечь раньше, чтоб СУБД не напрягать (Интернет-торговля).

Странно - что-то я не заметил в нашей интернет-торговле никаких "левых" запросов, все правые

автор2. Тысячи коннектов, которые можно распараллелить на разные СУБД, а то один сервер не справляется (информационные системы в Инете)

Это можно сделать обычным load-balansing серверов БД или IISов

авторНе знаю как вы, уважаемые, но я понял, что по сути предложен способ соэдания к-с приложений для которых в принципе нет ограничений по ресурсам (насколько я помню Apache ещё и кластеризуется). Соединения тоже не держутся постоянно, а то что автор не используют .net, лично я его очень хорошо понимаю (самого мелкий достал до самых пяток) - попробуйте обратиться за поддержкой даже зарегистрированного продукта ;-) Попробуйте посчитать во сколько обойдется подобная штуковина на платных продуктах :o.

.net framework бесплатна. Да и что-то мы не заметили никаких достающих вещей. Наоборот - на столько, на сколько помог, ускорил и облегчил работу с вебом asp.net даже и не пересказать.
Просто автор делал тогда, когда asp.net еще не было. Я так понял.

А кластеризуется и IIS, да еще как, у нас несколько серверов с IIS стоит

-- Tygra's --
...
Рейтинг: 0 / 0
3-tier своими руками
    #32726720
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> Странно - что-то я не заметил в нашей интернет-торговле никаких "левых" запросов, все правые

В какой-такой "вашей интернет-торговле"? Нет в рунете ничего, что хотя бы издалека напоминало интернет-торговлю. Как класса.

> .net framework бесплатна.

M$ SQL тоже бесплатно раздают? И сервера - нахаляву? Тогда о чем речь, дружище?
...
Рейтинг: 0 / 0
3-tier своими руками
    #32726789
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
<Выпады личного характера удалены модератором>
...
Рейтинг: 0 / 0
3-tier своими руками
    #32726792
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да и в рунете нет ничего, похожего на интернет Так что чего тут говорить?

-- Tygra's --
...
Рейтинг: 0 / 0
3-tier своими руками
    #32726795
funman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Можно сколь угодно долго говорить о достоинствах и недостатках Microsoft, но мне что-то на глаза не один вирус в Linux не попадался, а из Win их ведрами черпаю, вот и покажись после этого с Windows-сервером в интернете, тогда уж сразу стоит подписку на патчи оформить - вот веселье, тогда уж не до работы, только и смотри как бы не стукнули. Windows хорош для клиента - клиент к нему прилип (врос), а серверу зачем графика - никто вразумительно сказать не может (так же как и попу пулемет).
А для противников третьего уровня можно сказать одно: если к примеру начали разрабатывать на MS SQL, а затем (не дай бог) захотите (или заставят) сменить БД, то флаг вам в руки и барабан на шею, переписывать процедуры. Третий уровень - нормально спроектированный это абстрактная модель системы без особенностей реализации и вам все равно что стоит справа (связь с клиентом) а что слева - связь с БД, а разрабатывать конечно тяжелее, причем многократно
...
Рейтинг: 0 / 0
3-tier своими руками
    #32726888
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
<Выпады личного характера удалены модератором>
...
Рейтинг: 0 / 0
3-tier своими руками
    #32727089
Фотография рубль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно и я ляпну свою глупость.

Трехзвенка удобна не только в WEB, но и во многих других проектах.
При разрастании проекта, возникает необходимость специализировать
коллектив разработчиков по направлениям - физическая структура данных и ее обработка, логическая (сущности, обобщение физической) и ее обработка (бизнес логика), разработка интерфейса клиент (общение с любимым пользователем).
Очень удобно когда разные разработчики клиентского интерфейса, использующие одинаковые логические структуры данных, имеют возможность получать их из уже сформированных частей проекта, а не описывать логику каждый как понял. Конечно это можно оформить в виде библиотек и "прислюнить" ее к клиенту или на сервере базы логику разместить.
Но трехзвенка дает возможность не только не привязываться к определенной СУБД но и иметь "разношерстного" клиента.
Иногда это бывает удобно, даже очень.
Возьмем к примеру аптечный склад с возможность ведения электронных заказов. Можно клиентам отдать свой интерфейс, но многим нужна возможность получать / обмениваться данными, по средствам своего интерфейса. Позволяющего обобщать информацию и анализировать ее.
Вот здесь и удобно использовать сервер приложений. Доступ к данным разнообразен, а обработка едина.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32727110
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
funmanМожно сколь угодно долго говорить о достоинствах и недостатках Microsoft, но мне что-то на глаза не один вирус в Linux не попадался, а из Win их ведрами черпаю, вот и покажись после этого с Windows-сервером в интернете, тогда уж сразу стоит подписку на патчи оформить - вот веселье, тогда уж не до работы, только и смотри как бы не стукнули. Windows хорош для клиента - клиент к нему прилип (врос), а серверу зачем графика - никто вразумительно сказать не может (так же как и попу пулемет).
Гм, можно подумать в Линуксе багов и дырок нету. Закон природы - на чем работаете, на том и страдаете. Сносите винду, переходите на Линукс, наслаждайтесь, качайте и компильте ядра (можно подумать патчи от Билла и обновления от Торвальда не одно и тоже). У меня знакомый админ - он лет 7 на провайдеров работает, поэтому его основная ОС - Юникс и Линукс. Так вот больше всего на свете он обожает Windows и страстно ненавидит Линукс (терпимость проявляет только к FreeBSD), говоря что ему легче патчи с MS.com качать, чем прилагать усилия для сопровождения ОС Почему ? Да потому что 7 лет плотно работает :)

funmanА для противников третьего уровня можно сказать одно: если к примеру начали разрабатывать на MS SQL, а затем (не дай бог) захотите (или заставят) сменить БД, то флаг вам в руки и барабан на шею, переписывать процедуры. Третий уровень - нормально спроектированный это абстрактная модель системы без особенностей реализации и вам все равно что стоит справа (связь с клиентом) а что слева - связь с БД, а разрабатывать конечно тяжелее, причем многократно
Я эту сказку уже много много лет слушаю. Странно, что когда я сказочникам задаю вопрос - "готова ли Ваша независимая от СУБД 3-х звенная система переползти с MSSQL на Оракл", насколько строго она работает только в пределах ANSI SQL и не пользуется особенностями MSSQL TSQL, как она сможет переключится на другой режим работы с изоляциями и т.д. - вот тут то все начинают тушеваться и говорить - ну мы не пробовали, это надо дорабатывать, вот как понадобиться, так и будем думать и в том же духе. Так что я не верю таким сказкам - или приложение вообще будет не пользоваться возможностями конкретной СУБД и страшно тормозить или же оно будет пользоваться, но тогда ни о какой кросс-платформенности СУБД говорить нельзя.

рубльВот здесь и удобно использовать сервер приложений. Доступ к данным разнообразен, а обработка едина.
Дык куда уж разнообразней к СУБД доступов данных и куда уж единей SQL и языка хранимых процедур обработка ? Потом стоит наверное всегда задумываться о сторонних средствах, например тех же отчетниках. Что им бедным к серверам приложений подключаться, по интерфейсам и классам обьекты гонять, чтобы отчет построить ? Они то как раз все и работают по единому доступу - через SQL. Сколько раз я видел незадачливых разработчиков 3-х звенок, которые все так здорово реализовали (особенно справочники и примитивные входящие данные), а потом когда подошли к отчетам, почесали репу, взяли Crystal Report и напрямую к БД запросами их начали лепить :)
...
Рейтинг: 0 / 0
3-tier своими руками
    #32727125
Фотография рубль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ASCRUSОни то как раз все и работают по единому доступу - через SQL. Какой ? PL или TR.

ASCRUS... взяли Crystal Report и напрямую к БД запросами их начали лепить :) А потом смотриш в разные отчеты, где по идее должны быть одинаковые значения, а нет, один "на прямую" лепил Вася, а другой тоже "на прямую" Федя. Все на прямую, а цифирки разные.

Вапрос где размещать бизнес логику -
а) на сервере базы данных
б) на сервере приложений
в) у клиента.

А дальше кому как нравится.
По большому счету, звена всегда 3 -
1) физические данный
2) логические (сущности, бизнес логика)
3) Интерфейс пользователя

Вопрос только где (2) размешено и как "круто" замешано.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32727162
Фотография рубль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Заходил как то в одну аптеку.
Посмотрел на экран ПК в отделе запасов, все ярлыками заставлено.
Спрашиваю - что за разнообразие?
Отвечают - программы по формированию электронных заказов с поставщиками.
У каждого своя. Спрашивали, как можно зделать что бы информация была в одном месте?
И что можно предложить в замен серверов приложений, размещенных у поставшиков и разношорстных клиентов у заказчиков, формировать SQL запрос напрямую? :)
Пока у нас распределенные системы в зачаточном состоянии, сервера приложений ненужны, это факт, можно и без них. Но торговля уже заинтересована в электронном обмене информации, это тоже факт.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32727192
funman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ASCRUS У меня знакомый админ - он лет 7 на провайдеров работает, поэтому его основная ОС - Юникс и Линукс. Так вот больше всего на свете он обожает Windows и страстно ненавидит Линукс (терпимость проявляет только к FreeBSD), говоря что ему легче патчи с MS.com качать, чем прилагать усилия для сопровождения ОС Почему ? Да потому что 7 лет плотно работает :)

Около 3-х лет у самого стоял Linuх, только у себя в логах я встречал попытки пробить именно Windows а не Linuх

ASCRUS
Я эту сказку уже много много лет слушаю. Странно, что когда я сказочникам задаю вопрос - "готова ли Ваша независимая от СУБД 3-х звенная система переползти с MSSQL на Оракл", насколько строго она работает только в пределах ANSI SQL и не пользуется особенностями MSSQL TSQL, как она сможет переключится на другой режим работы с изоляциями и т.д. - вот тут то все начинают тушеваться и говорить - ну мы не пробовали, это надо дорабатывать, вот как понадобиться, так и будем думать и в том же духе. Так что я не верю таким сказкам - или приложение вообще будет не пользоваться возможностями конкретной СУБД и страшно тормозить или же оно будет пользоваться, но тогда ни о какой кросс-платформенности СУБД говорить нельзя.

Посмотрите архитектуру SAP R/3 - уж там этих слоев, а ведь они развивались эволюционно (если мне не изменяет память с 72 года), ну не с большого же бодуна они пришли к своей сегодняшней архитектуре. А по вопросу реализации, это уж извольте, что в при проектировании заложили, то и получите - слона в барсучью нору не поместишь
...
Рейтинг: 0 / 0
3-tier своими руками
    #32727404
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> ну не с большого же бодуна они пришли к своей сегодняшней архитектуре.

В любом решении такого класса 50% - маркетинговые соображения и 50% - технические.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32727506
LSV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кому нравятся 3-звенки, те пусть и парятся ! Наверно интересен процесс, а не результат. :) А время - деньги. А деньги пожалуй и есть результат. :)
У сложной инф.системы никогда не будет всех(!) необходимых отчетов.
Тем более часть отчетов нужна всего один-два раза. Предлагаете звать разработчиков, чтобы они сделали новую сущность ???
Всё равно часть аналитики делается внешними средствами (ACCESS, Crytal и пр.)
Аргумент про разные цифры несерьёзный. Разные можно получить и из 3-звенки ! :) Просто должны быть единые правила для получения той или иной инфы. Тут 2-х или 3-х уровневость не при чём ! Никакая 3-звенка не сравнится по универсальности с SQL.

Для постоянно развивающихся систем (а их большинство) 3-звенка - настоящий геморрой. Скажете WEB ? Да, пожалуй ! Но от общей (!) массы СУБД-ориентированых программ, используют WEB максимум в 3% случаев,
а 97% это простой LAN.
Модератор: отредактировано
...
Рейтинг: 0 / 0
3-tier своими руками
    #32727570
Фотография рубль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
<Выпады личного характера удалены модератором>
...
Рейтинг: 0 / 0
3-tier своими руками
    #32727896
michael_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторПосмотрите архитектуру SAP R/3 - уж там этих слоев
А какое оборудование должно быть, чтобы все это ворочалось? А сколько мамок и нянек все это обслуживает у клиента? Даже те, у кого хватило денег на покупку продуктов SAP, не всегда могут себе позволить все это .

По поводу многозвенок:

Плюсы
+ Возможность организации работы из браузера (то есть работа в инете)
Можно еще всякого наговорить, типа распределение нагрузок, масштабирование и т. д., но это не очень-то доказуемо

Минусы
- Тяжело кодировать (особенно трудна отладка)
- Тяжело сопровождать
- Тяжело администрировать
- В целом система дороже

То есть, на мой взгляд, в это надо ввязываться, когда нужен по настоящему тонкий клиент, то есть, браузер. А не клиент на Delphi или PB. Может тогда не так будет обидно от полученного гимора.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32727942
funman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
LSV
У сложной инф.системы никогда не будет всех(!) необходимых отчетов.
Тем более часть отчетов нужна всего один-два раза. Предлагаете звать разработчиков, чтобы они сделали новую сущность ???
Всё равно часть аналитики делается внешними средствами (ACCESS, Crytal и пр.)
Да покажите же настоящих пользователей (наших, не программистов), что умеют пользоваться (ACCESS, Crytal или хотя бы MS Query), их в красную книгу занести надо, причем срочно, да и пользователи ли это. Человек, который может самостоятельно подключиться к БД, и по объясненной ему структуре составить SQL-запрос не нуждается в разработчиках чего бы то ни было, ему нужны лишь данные и схема их хранения, остальное дело техники

Модератор: цитата отредактирована
...
Рейтинг: 0 / 0
3-tier своими руками
    #32727962
Фотография рубль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Просто рассуждения в слух "о теории относительности".

Возьмем Oracle Forms. С точки зрения разработчика существует форма и сервер базы данных, т.е. 2 звена. Разработка несложная, отладка тоже.
Но стоит все это поставить в работу получается уже 3 звена - база данных, сервер приложений (servlet, просто servlet) и клиент в виде аплета работающий в браузере пользователя.
Вот и получается с точки зрения разработчика 2 звена, а на самом деле их 3.
И никаких тяжестей в разработке, обслуживании, сопровождении.
Можно сказать, с точности до наоборот.
И подобного рода направления будут развиваться и дальше и наверное не только в произведениях от Oracle и Sun, посматрите на Xdoclet, замарочено немного, но идея в том, что серверную часть (сервера приложений) можно легко генерировать на основании определенного метоописания, не лопатить все ручками а именно генерировать.
Все относительно.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32727969
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
<Выпады личного характера удалены модератором>

Теперь рублю серьезно отвечу:

авторПри разрастании проекта, возникает необходимость специализировать
коллектив разработчиков по направлениям - физическая структура данных и ее обработка, логическая (сущности, обобщение физической) и ее обработка (бизнес логика), разработка интерфейса клиент (общение с любимым пользователем).

Правильно, так и есть. Правда многовато перечислено уж :)

авторОчень удобно когда разные разработчики клиентского интерфейса, использующие одинаковые логические структуры данных, имеют возможность получать их из уже сформированных частей проекта, а не описывать логику каждый как понял. Конечно это можно оформить в виде библиотек и "прислюнить" ее к клиенту или на сервере базы логику разместить.

Это вы про какую такую логику? Вы как проекты пишете? Логика вся в БД лежит - если вы занимаетесь клиентом, то никак вы логику не измените, тем более не выдумаете :) Да и по написанию клиента должны быть общие правила - иначе это не проект

авторНо трехзвенка дает возможность не только не привязываться к определенной СУБД но и иметь "разношерстного" клиента.

Дык СУБД - вы не поверите! - позволяет иметь вообще неограниченное количество типов клиентов! Без проблем с разработкой!

авторИногда это бывает удобно, даже очень.
О чем я и говорю :)

авторВозьмем к примеру аптечный склад с возможность ведения электронных заказов. Можно клиентам отдать свой интерфейс, но многим нужна возможность получать / обмениваться данными, по средствам своего интерфейса. Позволяющего обобщать информацию и анализировать ее.
Вот здесь и удобно использовать сервер приложений. Доступ к данным разнообразен, а обработка едина.

А где вы тут увидели сервер приложений? Тут нужна софтина, которая лезет к данным каждого поставщика (по их правилам), берет данные и пихает в вашу БД Где тут апп-сервер?
<Выпады личного характера удалены модератором>

Ну и funmanу
авторМожно сколь угодно долго говорить о достоинствах и недостатках Microsoft, но мне что-то на глаза не один вирус в Linux не попадался,....
<Выпады личного характера удалены модератором> в Линуксе до фига багов и дыр. Только раньше Линуксы не популярны были, вот никому поэтому на фиг их дыры не нужны были, а теперь пытаются пролинуксовать побольше компутеров, вот хакеры и прочие добрые люди начали и линухов копать - и все больше и больше чего нехорошего находят.

авторА для противников третьего уровня можно сказать одно: если к примеру начали разрабатывать на MS SQL, а затем (не дай бог) захотите (или заставят) сменить БД, то флаг вам в руки и барабан на шею, переписывать процедуры.
Ну если заставят - перепишем. Правда вы можете привести хотя бы десяток случаев, когда такое случалось? :)

авторТретий уровень - нормально спроектированный это абстрактная модель системы без особенностей реализации и вам все равно что стоит справа (связь с клиентом) а что слева - связь с БД, а разрабатывать конечно тяжелее, причем многократно
Не бывает абстрактных систем - либо система работает правильно и так как надо и по максимуму, либо она никуда не годится: какие могут быть системы без особенностей реализации? Т.е. для примера - эта система похожа на запорожец с двигателем от мерседеса, гусеницами и пропеллером на крыше, ковшом и ножом впереди? И далеко на такой системе уедете?

Нет, тут уж извините, я присоединяюсь к ASCRUS : независимость многозвенной системы от данных - это понты. Когда дело доходит до практики, оказывается такая ж.. с многозвенкой, что проще два раза переделать процедуры

ЗЫ Прошу в качестве хороших примеров всякие R/3 не приводить - если только не вы лично и еще пара ваших программеров сделали эти системы
...
Рейтинг: 0 / 0
3-tier своими руками
    #32727980
Alexey Sh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
funmanДа покажите же настоящих пользователей (наших, не программистов), что умеют пользоваться (ACCESS, Crytal или хотя бы MS Query), их в красную книгу занести надо, причем срочно, да и пользователи ли это. Человек, который может самостоятельно подключиться к БД, и по объясненной ему структуре составить SQL-запрос не нуждается в разработчиках чего бы то ни было, ему нужны лишь данные и схема их хранения, остальное дело техники
Видел таких пользователей! Только им данные для отчётов напрямую из хранилища получать напряжённо. Вот здесь и прорисовывается это самое среднее звено как источник данных для продвинутых пользователей.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32728120
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
<Выпады личного характера удалены модератором>
=========================
А теперь серьезно.

Alexey Sh funman LSV
У сложной инф.системы никогда не будет всех(!) необходимых отчетов.
Тем более часть отчетов нужна всего один-два раза. Предлагаете звать разработчиков, чтобы они сделали новую сущность ???
Всё равно часть аналитики делается внешними средствами (ACCESS, Crytal и пр.)
Да покажите же настоящих пользователей (наших, не программистов), что умеют пользоваться (ACCESS, Crytal или хотя бы MS Query), их в красную книгу занести надо, причем срочно, да и пользователи ли это. Человек, который может самостоятельно подключиться к БД, и по объясненной ему структуре составить SQL-запрос не нуждается в разработчиках чего бы то ни было, ему нужны лишь данные и схема их хранения, остальное дело техники
Видел таких пользователей! Только им данные для отчётов напрямую из хранилища получать напряжённо. Вот здесь и прорисовывается это самое среднее звено как источник данных для продвинутых пользователей.

Сразу всем:
во-первых, уж пользователю то точно среднее звено ничем не поможет - откуда его вызывать, из Crystal репорта?
А вот ХП из БД можно дернуть хоть откуда.
Во-вторых, LSV имел ввиду не "домашних" разработчиков, которые в фирме, купившей софт, работают, а разработчиков этого софта: как вы будете делать отчет, если нужной вам информации нет в апп-сервере, вот именно такой, какая нужна - нет. Наверное кто-то должен добавить метод получения этой информации. И уж наверное это разработчик системы.
Да и как можно делать отчет, забирая данные из апп-сервера.... Это уж слишком.

рубльНо стоит все это поставить в работу получается уже 3 звена - база данных, сервер приложений (servlet, просто servlet) и клиент в виде аплета работающий в браузере пользователя.
Вот и получается с точки зрения разработчика 2 звена, а на самом деле их 3.
Так два или три?
Если для разработчика два звена - значит два. Вы среднее звено разрабатывали тут - нет! И не трехзвенная система получается.
Любую систему, имеющую веб-интерфейс, можно назвать трехзвенной. Только с большим натягом - никто из нас броузер не писал. Отчего же его считать звеном? Остается классическая клиент-сервер.
А то так ведь можно и обычного вин-клиента разделить: есть графическая оболочка, а есть исполняемый код внутри нее, который ходит на сервер а потом данные передает окнам

рубль>>>>Тут нужна софтина, которая лезет к данным каждого поставщика (по их правилам)
<Выпады личного характера удалены модератором>
<Выпады личного характера удалены модератором>
в термине "лезет" я отобразил процесс - любой, специфический для каждого поставщика - который, спицифическими для каждого поставщика способами, получает информацию, то бишь данные. Без всякого контроля <Выпады личного характера удалены модератором>? Как поставщик отдает информацию, так у него и забирать. В файлах txt, htm, zip, через вебсервисы или на дискетах... Не важно.
И называется такая вещь - утилита для закачки... <Выпады личного характера удалены модератором> для загрузки информации посредством sql-запросов на сервер, где уж с ней и работают.

Может расскажите, куда вы тут прикрутить хотели апп-сервер <Выпады личного характера удалены модератором>?

<Выпады личного характера удалены модератором>
...
Рейтинг: 0 / 0
3-tier своими руками
    #32728130
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
guest_20040621Дружище, какие аргументы я должен привести? Объяснить, что такое ахинея? Или объяснить, почему бизнес-логики не должно быть в базе данных ? Или рассказать, что мелкомягкие обычно забивают на совместимость версий?

Во-во, именно вот это, я выделил, и не только мне, нам всем объясните. А то мы оказывается неправльно все делаем, так вы нам секрет то откройте. Уже многие пытались - и про то, что СУБД толькор для хранения данных предназначена, и еще кое-чего. <Выпады личного характера удалены модератором>/
А то может зря книгу писать будем - отстали от времени.



-- Tygra's --
...
Рейтинг: 0 / 0
3-tier своими руками
    #32728322
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может быть хватит взаимных обвинений и перейдем к конструктивному обсуждению ?

автор> А то мы оказывается неправльно все делаем, так вы нам секрет то откройте.

Хех, оно вот откуда объяснять надо? Ну, батенька, это клинический случай. И пробовать не буду. Продолжайте, идиотов вокруг достаточно.
Я тоже не понимаю, почему бизнес-логику контроля и обработки данных нельзя хранить в СУБД. Не могли бы Вы все таки уточнить, что конкретно имели ввиду, хотя бы в качестве краткого сжатого ликбеза ?
...
Рейтинг: 0 / 0
3-tier своими руками
    #32728411
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И мне, и мне тоже объясните, почему БД не предназначена для хранения логики!!!

А то вот я, идиот с тяжелым файл-серверным прошлым, всю жизнь страдал от того, что не могу в БД бизнес-логику прописать. А это оказывается счастье мое было

З.Ы. Только при чем здесь ERP? Раньше я дебаты двухзвенщиков и многозвенщиков наблюдал в основном в "Сравнении СУБД" и в "Проектировании БД"
...
Рейтинг: 0 / 0
3-tier своими руками
    #32728414
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лох ПозорныйИ мне, и мне тоже объясните, почему БД не предназначена для хранения логики!!!

А то вот я, идиот с тяжелым файл-серверным прошлым, всю жизнь страдал от того, что не могу в БД бизнес-логику прописать. А это оказывается счастье мое было

З.Ы. Только при чем здесь ERP? Раньше я дебаты двухзвенщиков и многозвенщиков наблюдал в основном в "Сравнении СУБД" и в "Проектировании БД"
В Сравнении СУБД они параллейно продолжаются. Заодно выясняем, когда же умрут триггеры :)
...
Рейтинг: 0 / 0
3-tier своими руками
    #32728451
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ASCRUSЗаодно выясняем, когда же умрут триггеры :)
Блин, а я даже не знал, что они болеют.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32728603
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Судя по тому топику, они уже присмерти

И бизнес-логика в СУБД похоже тоже отжила Пора на пенсию

-- Tygra's --
...
Рейтинг: 0 / 0
3-tier своими руками
    #32728660
Alexey Sh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Господа, а вы не допускаете, что имеет право на жизнь 1,2,3 и более звенные архитектуры и, более того, возможно их мирное сосуществование?
...
Рейтинг: 0 / 0
3-tier своими руками
    #32728666
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
кому на пенсию, а у кого и вторая молодость :)

снесу-ка я у себя скуль сервер
забацаю третий слой (между аксесом-клиентом и аксесом-хранилищем), и будет мне щастья полные штаны - ни триггеров, ни бизнес-логики в СУБД. еще бы на уровне СУБД изничтожить проверку ссылочной целостности, уникальности индексов, обязательности и условий на значения полей - и совсем рай на земле наступит.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32728681
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Alexey Sh

Да почему же, имеет право. Но в очень ограниченных и конкретных случаях. Но никак не взамен обычному клиент-серверному программированию во всех местах, где нужно всего-лишь мало-мальски подумать и нормально реализовать.

Я давным-давно, когда был еще маленький :), тоже думал про 3-звенные технологии: круто, современно, прогрессивно, интересно. Но потом наступила жизнь и все прошло :). А у кого-то нет :)

-- Tygra's --
...
Рейтинг: 0 / 0
3-tier своими руками
    #32728684
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лох Позорныйкому на пенсию, а у кого и вторая молодость :)

снесу-ка я у себя скуль сервер
забацаю третий слой (между аксесом-клиентом и аксесом-хранилищем), и будет мне щастья полные штаны - ни триггеров, ни бизнес-логики в СУБД. еще бы на уровне СУБД изничтожить проверку ссылочной целостности, уникальности индексов, обязательности и условий на значения полей - и совсем рай на земле наступит.
Зачем так сложно ? Запускается терминал-сервер и никаких проблем, даже с индексами, разве что цифру 2 гб Access сильно не любит :)
...
Рейтинг: 0 / 0
3-tier своими руками
    #32728695
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alexey ShГоспода, а вы не допускаете, что имеет право на жизнь 1,2,3 и более звенные архитектуры и, более того, возможно их мирное сосуществование?
вот сторонники двухзвенок готовы такое предположить, и даже постоянно просят примеры у сторонников трехзвенок - когда же введение дополнительного третьего, четвертого, пятого, двадцать пятого слоя жизненно необходимо, т.е. без лишних слоев ну никак. кроме давно придуманного connection pool'а и мифической кроссплатформенности что-то мало примеров.

а вот сторонники трехзвенок - те почему то не способны допустить, что двухзвенки имеют право на существование. потомушта бизнес-логика в СУБД жить не могет. правда не говорят почему. видать это есть страшная тайна.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32728701
Alexey Sh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В каждой шутке есть доля шутки. Имеются живые контрукции использующие аксесс с терминальным сервером.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32728704
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ASCRUSЗачем так сложно ? Запускается терминал-сервер и никаких проблем, даже с индексами, разве что цифру 2 гб Access сильно не любит :)
Борода, не поверишь!
Только сегодня советовал человеку работать через терминал сервер. Человек имел религиозные предубеждения против MS SQL и прочих серверов.
Видать я на полпути к тому, чтобы у меня щастья были полные штаны.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32728708
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А насчет 2Гб - так это на один файл-хранилище
Аксесу пофигу сколько их, он изначально распределенный.
Если таблица в 2Гб влезает - то и хорошо.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32728733
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лох ПозорныйА насчет 2Гб - так это на один файл-хранилище
Аксесу пофигу сколько их, он изначально распределенный.
Если таблица в 2Гб влезает - то и хорошо.
Ну если с умом разбить архивы по базам и делить их например по годам, то вообще на фиг никакие РСУБД и сервера приложений не нужны, все будет на Access прекрасно работать :) В качестве бонуса всегда можно прекрасно помазохизничать, размазывая бизнес-логику по клиенту. Хотя можно хитро вынести ее в отдельный MDB, вместе с стандартной обработкой логики GUI (и даже можно все сделать на классах). Потом подключаешь его к клиентскому MDB и радуешься :) Эээх, прямо молодость вспомнилась, аж Access 2.0 родимый :)
...
Рейтинг: 0 / 0
3-tier своими руками
    #32728757
Alexey Sh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ASCRUSНу если с умом разбить архивы по базам и делить их например по годам, то вообще на фиг никакие РСУБД и сервера приложений не нужны, все будет на Access прекрасно работать :) В качестве бонуса всегда можно прекрасно помазохизничать, размазывая бизнес-логику по клиенту. Хотя можно хитро вынести ее в отдельный MDB, вместе с стандартной обработкой логики GUI (и даже можно все сделать на классах). Потом подключаешь его к клиентскому MDB и радуешься :) Эээх, прямо молодость вспомнилась, аж Access 2.0 родимый :)

Ещё как вариант на асессе сервер приложений наваять
...
Рейтинг: 0 / 0
3-tier своими руками
    #32728774
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторЕщё как вариант на асессе сервер приложений наваять

И Акцессом же к этому апп-сереверу и ходить

-- Tygra's --
...
Рейтинг: 0 / 0
3-tier своими руками
    #32728785
Alexey Sh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tygra авторЕщё как вариант на асессе сервер приложений наваять

И Акцессом же к этому апп-сереверу и ходить

-- Tygra's --

Конечно аксессом, а как же ещё

Вариация на тему: клиент - Access, хранилище -mdb AppServer - MSSQL
...
Рейтинг: 0 / 0
3-tier своими руками
    #32728836
Фотография Garya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Господа, соблюдайте пожалуйста, правила приличия. Все разборки личного характера, пожалуйста, в привате.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32728885
ЛП
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну вот... стоило аксес вспомнить, как тут же началось "соблюдайте правила приличия"...
...
Рейтинг: 0 / 0
3-tier своими руками
    #32729013
Фотография рубль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tygraДа и как можно делать отчет, забирая данные из апп-сервера.... Это уж слишком.
Вас не смущает, формирование отчетов представлением, на стороне сервера базы данных. То же самое и с использованием сервера приложений, почитайте про EJB.

tygraТак два или три?
Если для разработчика два звена - значит два. Вы среднее звено разрабатывали тут - нет! И не трехзвенная система получается.
Любую систему, имеющую веб-интерфейс, можно назвать трехзвенной. Только с большим натягом - никто из нас броузер не писал. Отчего же его считать звеном? Остается классическая клиент-сервер.
[Выпады личного характера,предназначено для удаления модератором]

<Выпады личного характера удалены модератором> Вам нужно направить, срочно, письмо в компанию Oracle, ведь они глупые думают что у их трехзвенка, а вы откроите им правду.

[/Выпады личного характера,предназначено для удаления модератором]


tygraБез всякого контроля? Как поставщик отдает информацию, так у него и забирать. В файлах txt, htm, zip, через вебсервисы или на дискетах... Не важно.
[Выпады личного характера,предназначено для удаления модератором]
>>Без всякого контроля?
>>Без всякого контроля?
>>Без всякого ...
>>Без ...
>>В файлах txt, htm, zip
>>В файлах txt, htm
>>В файлах txt,
>>В файлах
>>Не важно.
>>Не важно.
>>Не ...
[/Выпады личного характера,предназначено для удаления модератором]

[Выпады личного характера на модератора, не предназначено для удаления модератором]
Почему ерись, каторую несут некоторые товариши, вы не считаете отридцательным явлением, а "показывание пальцем" на это для вас является выпадами.
Если так пойдет и дальше. На какой хрен сюда ходить.
[/Выпады личного характера на модератора, не предназначено для удаления модератором]
...
Рейтинг: 0 / 0
3-tier своими руками
    #32729373
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
<Выпады личного характера удалены модератором>

Очень прошу прощения, что довел человека до такого, обещаю, что больше в его сторону ничего говорить не буду, пущай в себя придет.

=======

Предложение модераторам: а может закроем топик, а? Пока только один пострадавший. А то мало ли что. Больше то тут сказать нечего. Закрывайте нафиг.

-- Tygra's --
...
Рейтинг: 0 / 0
3-tier своими руками
    #32729419
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да уж, опять физики и лирики. Спор можно подолжать до бесконечности. НО, аргументов или примеров, где реально была бы нужна трехзвенка и здесь, впрочем как и в других топиках на эту тему я не увидел.

<Выпады личного характера удалены модератором>

модераторы, закрывайте топик к черту.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32729483
AlTk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сейчас при существующих технологиях нет проблем из 2-х звенки сделать 3-х и наоборот, а реальный пример, когда нужна трехзвенка - слабые ПК пользователей, а расчет, который нужно выполнить, достаточно ресурсоемкий.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32729544
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlTkа реальный пример, когда нужна трехзвенка - слабые ПК пользователей, а расчет, который нужно выполнить, достаточно ресурсоемкий.

Я бы попросил не путать классическую двузвенку, где все расчеты вынесены в субд и, отвратительную реализацию двузвенки, например, в 1с при работе с сиквелом. Так что ваш пример опять мимо кассы.

авторсейчас при существующих технологиях нет проблем из 2-х звенки сделать 3-х и наоборот

А причем тут "из" и "наоборот"?!
...
Рейтинг: 0 / 0
3-tier своими руками
    #32729596
AlTk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
что мимо кассы?
какие расчеты Вы вынесете в СУБД? решение дифференциальных уравнений для построения модели? или генерация образа - например того же отчета?

"А причем тут "из" и "наоборот"?!"
а при том, что стираются грани между 2-х звенными и многозвенными приложениями

ПС. при чем тут 1С???
...
Рейтинг: 0 / 0
3-tier своими руками
    #32729611
Alexey Sh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1с тут при том, что совершенно стирает грани между однозвенными и многозвенныим приложениями
...
Рейтинг: 0 / 0
3-tier своими руками
    #32729627
funman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
pkarklin
Я бы попросил не путать классическую двузвенку, где все расчеты вынесены в субд и, отвратительную реализацию двузвенки, например, в 1с при работе с сиквелом. Так что ваш пример опять мимо кассы.

Это к вопросу о трехзвенке. Работа 1С версии 7.7 с SQL напоминает исполнение классической симфонии на турецком барабане - мотив есть, а карёжет, но так они исправились, как мне кажется, в 8 версии правильная 3-х звенка (вот будет ли при этом клиент "тоньше")
...
Рейтинг: 0 / 0
3-tier своими руками
    #32729628
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да уж, 1С это хороший пример скрещивания кролика с удавом. Или с удавкой

Ну если диффуры у вас используют так много человек, что на них не хватает нормальных компутеров - тогда может и можно считать где-то на третьей стороне. Только какие диффуры и СУБД? Да и в СУБД можно считать - внешними процедурами.

-- Tygra's --
...
Рейтинг: 0 / 0
3-tier своими руками
    #32729701
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlTkчто мимо кассы?
какие расчеты Вы вынесете в СУБД? решение дифференциальных уравнений для построения модели? или генерация образа - например того же отчета?

"А причем тут "из" и "наоборот"?!"
а при том, что стираются грани между 2-х звенными и многозвенными приложениями

ПС. при чем тут 1С???

Причем тут диф. уравнения и тема данного форума - ERP системы? И, уж никак в классической архитектуре клиент-сервер нормативную себестоимость продукции не считают на клиенте. а вот 1с как раз это делает на клиенте. Именно поэтому для нее существует проблемма слабости клиентских машин и ширины канала связи.

И никакие грани не стираются есть 2 звенка (классическая архитектура клиент/сервер) и есть боковой отросток - N-звенка. Именно боковой, потому что, потому что это нельзя назвать развитием в перед. Это просто частный случай развития классической архитектуры под сугубо специальные задачи.

funman но так они исправились, как мне кажется, в 8 версии правильная 3-х звенка (вот будет ли при этом клиент "тоньше")

Вот с чем не сталкивался еще. так это с 8 версией 1с. Уж лучше бы они классиескую двузвенку поуму реализовали.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32729810
Фотография Garya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Господа, прочитайте еще раз правилами . Вот некоторые выдержки:
ПравилаЗапрещается:
публикация грубых, оскорбляющих и унижающих сообщений
...
Рекомендуется:
Быть взаимно вежливыми и уважать других участников форума.
...
При нарушении данных правил возможны следующие действия со стороны администрации форума: удаление топиков и сообщений, редактирование сообщений и заголовков, вынесение предупреждений, блокировка зарегистрированного пользователя, блокировка доступа по IP (при многократном повторении из одной подсети, возможна блокировка всей подсети).
Если кто-то не согласен с требованиями "Правил", значит он ошибся форумом. Если кто-то считает, что модератор не совсем корректно реагирует на нарушение Правил, он может попытаться решить эти вопросы с модератором в привате. Если достичь согласия с модератором не удается, можно обратиться в привате к администратору форума ("judge)." Напоминаю, что модератор не имеет права удалять или редактировать сообщения или блокировать пользователя только по той причине, что его собственное мнение по рассматриваемому техническому вопросу расходится с мнением мембера. Модератор не является обладателем истины в конечной инстанции, обсуждение технических вопросов с его стороны ведется с правами мембера.

Лично я пока не вижу необходимости закрывать тред только по той причине, что у кого-то кончились аргументы. Тема по-существу не исчерпана и в данном треде еще имеется вероятность появления хорошо аргументированных мнений, высказанных по существу и без эмоций.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32729867
AlTk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"Причем тут диф. уравнения и тема данного форума - ERP системы"
а Вы не можете подозревать, что на предприятии какой-то обсчет могут делать как раз именно с помощью диф. уравнений или сиплекс метода?

и грани стираются, все, что больше 1 - это N-звенка. захотим, будем использовать компонент на сервере, а захотим - на клиенте, а захотим еще один сервер поставим и некоторые компоненты туда перенесем.

ПС. почему-то никто на пример с отчетом не отреагировал, хотя это очень актуально. елси отчет формируется достаточно догое время и он регламентирован, то зачем его еще раз формировать. достаточно его сохранить и по запросу пользователя выдавать уже сформированный.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32729869
Фотография Garya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мое ИМХО по рассматриваемому вопросу. Имеет право на существование и 3-хзвенка (многозвенка), и двухзвенка. У каждого из этих подходов имеются свои плюсы и минусы. Невозможно на все случаи жизни один раз дать глобальный рецепт вроде "многозвенка forever!" (либо противоположный, но такой же радикальный). Все зависит от контекста задачи. Для того, чтобы вычислить произведение 2*2=? не нужна ни та, ни другая. Для того, чтобы сортировать и фильтровать табличную информацию, расположенную в одной-единственной таблице, совершенно нет никакой необходимости прикурчивать промежуточный уровень (объясните, зачем, если кто-то не согласен).
Реляционная СУБД уже имеет определенный набор интерфейсов, предлагаемую объектную модель и логику работы с ней. Если задачи хорошо отображаются на эту модель, то какой смысл городить огород?
Совсем другое дело, если для решения какой-либо задачи модель РСУБД подходит хуже, нежели некоторая совсем другая объектная модель. Тогда может возникнуть необходимость сделать "мидлтаер", выполняющий функции "переходника" с одной модели на другую. В "мидлтаер" реализуется модель более близкая к понятиям прикладной области, и инкапсулировано преобразование объектов и действий в рамках этой модели в модель РСУБД.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32729898
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Garya

Ну так об том и речь. Где двухзвенка подходит - там и есть. Где сделать на двухзвенке намного хуже, чем на многозвенке, и многозвенка дает реальный выигрыш - нет проблем, кто же спорит!

Но когда говорится что-то типа: двухзвенка это прошлое, надо все делать на многозвенке; логика вся должна быть в апп-сервере и никогда не в СУБД ... и т.д. - ну это же бред, против этого и шумим :)

Я и сам трехзвенку недавно делал :) - только на основе вебсервисов (.net помогла): вин-клиент (vb.net) идет на вебсеврисы.net, которые идут в БД. В принципе вебсервисы никакой логики не содержат - просто перенаправляют потоки данных и все. Это тот случай, когда больше никак - хотя и не обычная многозвенка, нет тут никакой бизнес-логики в среднем слое, как было в БД, так там и осталось.

-- Tygra's --
...
Рейтинг: 0 / 0
3-tier своими руками
    #32729990
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlTk
ПС. почему-то никто на пример с отчетом не отреагировал, хотя это очень актуально. елси отчет формируется достаточно догое время и он регламентирован, то зачем его еще раз формировать. достаточно его сохранить и по запросу пользователя выдавать уже сформированный.

На счет отчетов. А по что вы пытаетесь строить отчеты в OLTP системе? Ставьте OLAP и вытаскивайте всю аналитику туда. Но это не третье звено. И выигрыш большой и основную систему разгрузим и аналитики быстрее результат получат. А при смешении OLTP и OLAP оба участника остануться недовольными.

2 Garya

ну, а мы с tygra о чем всем твердим. Ведь не говорим, что трехзвенка не нужна. Просто в этом и в других топиках на эту тему не было приведено РЕАЛЬНОГО примера, где это было бы действительно нужно.

А на счет закрытия топика. Хм... его ждет такая же судьба Странные мысли о 3-звенном приложении , если ты его не закроешь.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32730020
AlTk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
оффтопик:
а что же, в OLTP системе отчеты не строятся?

и опять, причем здесь OLAP, нужен именно регламентный отчет по первичным данным.

ПС. прочитайте еще раз внимательно то, что сказал Garya.
мне проще реализовать простенький компонент на сервере, который, например, работает по принципу Singleton (если есть отчет в виде файла, то выдать его, иначе создать его, сохранить и выдать) - несколько строк кода. и мне для этого не надо ставить OLAP, заботиться о проектировании кубов, их наполнении и т.д.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32730039
Alexey Sh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторСтавьте OLAP и вытаскивайте всю аналитику туда. Но это не третье звено

Вот собственно и ответ на массу вопросов.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32730078
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlTkоффтопик:
а что же, в OLTP системе отчеты не строятся?

и опять, причем здесь OLAP, нужен именно регламентный отчет по первичным данным.

Строятся!!! Но это не те отчеты, о которых вы говорили:

AlTkелси отчет формируется достаточно догое время и он регламентирован, то зачем его еще раз формировать. достаточно его сохранить и по запросу пользователя выдавать уже сформированный.

А таким отчетам - прямым ходом на вынос из OLTP систем.

AlTkоффтопик:
ПС. прочитайте еще раз внимательно то, что сказал Garya.
мне проще реализовать простенький компонент на сервере, который, например, работает по принципу Singleton (если есть отчет в виде файла, то выдать его, иначе создать его, сохранить и выдать) - несколько строк кода. и мне для этого не надо ставить OLAP, заботиться о проектировании кубов, их наполнении и т.д.

Проще - это не значит корректнее для OLTP системы. а хранить расчитанные отчеты в OLTP системах - тоже нонсен. Ибо представляю, во что выливаються проблемы с созданием бэкапов. Видел я тут такую реализацию в одной аптечной сети. Сама система так себе, но из-за хранения расчитанных отчетов в OLTPшной базе - ее размер перевалил за 100 гигов. Хотя первичной информации там и 1/3 нет. Ну, а если вы нехотите заботиться о проектировании кубов (совсем не сложная штука, если со сводными таблицами работал) и об ихзаполнении (все это автоматизируется с помощью нескольких кликов мыши), то тем хуже для вашей OLTP системы. Это болезнь роста, IMHO.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32730125
AlTk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
как обычно, на 3-й странице начинаем обсуждать совсем другую тему.
pkarklin,
откуда Вы знаете, что надо, а что не надо.
я еще раз повторяю, нужен отчет именно по первичным данным.

в БД отчеты не хранятся. они хранятся в виде файлов с расширением rpt.

ПС. как находясь за 1000 километров Вы по двум сообщениям определили, что хуже, а что лучше для нашей системы?
...
Рейтинг: 0 / 0
3-tier своими руками
    #32730157
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlTkкак обычно, на 3-й странице начинаем обсуждать совсем другую тему.
pkarklin,
откуда Вы знаете, что надо, а что не надо.
я еще раз повторяю, нужен отчет именно по первичным данным.

в БД отчеты не хранятся. они хранятся в виде файлов с расширением rpt.

ПС. как находясь за 1000 километров Вы по двум сообщениям определили, что хуже, а что лучше для нашей системы?

Позвольте, позвольте. Не вы ли, в предыдущем своем ПС намекали что я ушел от ответа на вопрос про отчет? Я еще раз вам потворяю что все отчеты строяться по первичным данным. И вы же завели разговор про отчет, который "долго выполнятеся и делается по регламенту". Именно для таких отчетов и создают DataWarehouse, а не хранят их в виде кучи отдельных файлов. А вы говорите, что я "обсуждаю совсем другую тему". Не хорошо, однако. А на счет того, откуда я знаю что надо - что не надо. Я говорил об общем подходе к разделению транзакционных и аналитических систем именно в контексте поставленного вами вопроса о регламентированном и сложном отчете. И я нигде не говорил о ВАШЕЙ системе, хотя свое IMHO о ней я все-таки высказал. И, если мое IMHO про болезнь роста задело ваше самолюбие, то значит так оно и есть.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32730183
AlTk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я уже объяснял, что мне дешевле построить отчет, который строится один! раз в месяц, опечатывается и кладется в сейф, чем городить ради этого OLAP хранилище.
кстати файлов получается совсем не куча, а всего-навсего 12 за год.

да, я признаю, что Вы меня задели, но задели тем, что Вы, наблюдая частный случай, позволяете себе делать выводы о всей системе.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32730194
pkarklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторя уже объяснял, что мне дешевле построить отчет, который строится один! раз в месяц, опечатывается и кладется в сейф, чем городить ради этого OLAP хранилище.

А вот когда у вас будет большая такая куча (несколько сотен) отчетов, котрые надо строить с периодичность от 12 часов до квартала, то вы поймете, что для каждого отчета городить объект на сервере приложения, это маразм. И вы сядите и измениете свой подход, создав Datawarehouse.

Прошу извинения, если мои слова действительно вас задели, но это не со злого умысла, просто я через все это проходил сам. И не хочу, чтоб на эти же грабли другие наступали.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32730215
AlTk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"И вы сядите и измениете свой подход"
не факт. я еще раз повторю, отчет надо строить по первичным данным (правило такое).

ПС. а OLAP хранилище у нас вообще-то есть.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32731456
_pyбль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Трех уровневая архитектура и ее использование.
Рассмотрим небольшой пример.
Предприятие занимается добычей, транспортировкой и переработкой нефти.
Головная кантора находится в городе “Н”, подразделения разбросаны по
области и не только. В головной канторе СУБД и сервер приложений.
На сервере приложений размещена вся бизнес логика, клиент тонкий,
либо аплет, либо клиентское приложение размещенное на сервере приложений,
на выбор, хоть так, хоть этак. Отчетность JSP.
Приложение написано в соответствии со спецификацией J2EE, J2SE, СУБД
используется только как хранилище данных. Для ввода его в работу достаточно
иметь Web сервер, EJB контейнер, контейнер сервлетов и любую СУБД
поддерживающую спецификацию SQL-92.
ПО размещенное на сервере приложений имеет интерфейс не только работы
с пользователем но с аналогичным по структуре ПО размещенным на других
серверах приложений.
Имеем структуру состоящую из нескольких серверов приложений связанных
между собой и обслуживающих своих пользователей. Связанных по мере необходимости,
возможно это разовые сеансы связи для синхронизации данных или объединение в
единую систему, работающую в режиме реального времени.
Учетные функции системы не ограничиваются только финансовым,
бухгалтерским учетом, крутятся тоже на апп., но под другим “крылом”.
В подразделениях управление оборудованием, технологическим процессом,
автоматизировано, программное обеспечение разработано и сопровождается
поставщиками оборудования. В разных подразделениях оборудование от разных поставщиков.
ПО формирует свои базы данных производственных показателей на низком уровне,
показания контрольно измерительных приборов и т.д.
Отчетность в стандартном ПО скупая, достаточна для технологического
процесса управления, но для анализа работы непригодна. СУБД разношерстны,
возможность “залезть” в их и разместить там бизнес логику формирования
отчетности есть, но делать этого не нужно.
Так как технологические операции одинаковые, информационная сущность их показателей
имеет одинаковую структуру. Бизнес логику формируем и размещаем на
сервере (серверах) приложений, данные берем из СУБД технологов и только на чтение,
на выходе единая по структуре информационная сущность.
Для клиента безразлично какая физическая структура исходных данных,
он работает с ее представлением сформированным на сервере (серверах) приложений.
ОТЧЕНТОСТЬ ФОРМИРУЕТСЯ ТОЛЬКО НА ОСНОВАНИИ ДАННЫХ СЕРВЕРОВ ПРИЛОЖЕНИЙ.
При соединении серверов приложений инженеры технологи в режиме реального времени
могут легко контролировать(именно контролировать, управление только с рабочих мест
в подразделении) ход технологических процессов любых подразделений,
и неважно где расположено оборудование, и где находятся инженеры.

Объединение того, что само по себе не объединится.
Тем более что одним из условий объединения является изоляция одного от другого.
Размещение логики, логики которую нельзя (или нет смысла) размещать на одной из сторон.

О том что на сторону сервера БД (серверов БД) логику не разместить, это уже объяснил.
Теперь попробую передать ее на сторону клиента.
Приняли, к примеру, специалиста по управленческой отчетности, умница,
в уме считает в трех валютах, к тому же на трех языках программирования
все что посчитал интерпретирует.
А мы ему что? Нет парень, подожди. Вот тебе число “пи”,
вот диаметры труб, площадь круга и показания датчиков с подразделений...
Вот и я думаю, что нафиг ему это нужно. Т.е. логике прямая дорога на сервер приложений.


“СЕТЬ ЭТО КОМПЪЮТЕР” (С) Sun Microsystems

P.S. По аптечному складу немного другая ситуация.
Вот отойду немного, оклемаюсь.
А то сильно пострадал, очень сильно, чуть было не потерял веру в человечество.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32732596
Фотография Garya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я в командировке. Строчу из отеля... Извините за сумбур, спешу...
_рубльПО размещенное на сервере приложений имеет интерфейс не только работы с пользователем но с аналогичным по структуре ПО размещенным на других
серверах приложений.
MS SQL Server 2000 имеет интерфейс не только для работы с пользователем, но и с аналогичным MS SQL Server 2000 по структуре БД. "Репликация" называется. Что самое интересное, в отличие от сервера приложений, MS SQL Server 2000 нет необходимости писать. Он уже написан, и написан неплохо.

_рубльДля клиента безразлично какая физическая структура исходных данных, он работает с ее представлением сформированным на сервере (серверах) приложений. ОТЧЕНТОСТЬ ФОРМИРУЕТСЯ ТОЛЬКО НА ОСНОВАНИИ ДАННЫХ СЕРВЕРОВ ПРИЛОЖЕНИЙ
Для клиента безразлично, в файле с каким расширением и в каком именно формате находятся данные. Он работает с представлениями (View), сформированными на SQL-сервере (серверах) всегда с SQL-запросами. Отчетность формируется ТОЛЬКО НА ОСНОВАНИИ ДАННЫХ SQL-серверов (а не какого-то двоичного файла).

_рубльПри соединении серверов приложений инженеры технологи в режиме реального времени могут легко контролировать(именно контролировать, управление только с рабочих мест в подразделении) ход технологических процессов любых подразделений, и неважно где расположено оборудование, и где находятся инженеры
При соединении SQL-серверов инженеры технологи в режиме реального времени могут легко контролировать(именно контролировать, управление только с рабочих мест в подразделении) ход технологических процессов любых подразделений, и неважно где расположено оборудование, и где находятся инженеры.

_рубльОбъединение того, что само по себе не объединится. Тем более что одним из условий объединения является изоляция одного от другого. Размещение логики, логики которую нельзя (или нет смысла) размещать на одной из сторон.
Репликация объединяет то, что само по себе не объединяется. Разместив логику на одном из SQL-серверов, можно из этой логики управлять данными других SQL-серверов.
ЗЫ. А что ты будешь делать с 20-ю серверами приложений, когда выяснится, что одновременно на всех в одинаковом русле нужно исправить код? Примерно то же самое, что на 20-ти SQL-серверах, верно? Только в репликации можно еще задействовать репликацию хранимых процедур, и писать для этого заумного кода не треба... Получается, вроде как, проще...

_рубльО том что на сторону сервера БД (серверов БД) логику не разместить, это уже объяснил. А я не понял. Где объяснил?
А про число "пи" вообще нифига не понял.

_рубльОтчетность в стандартном ПО скупая, достаточна для технологического процесса управления, но для анализа работы непригодна. СУБД разношерстны, возможность “залезть” в их и разместить там бизнес логику формирования отчетности есть, но делать этого не нужно.
Если СУБД разношерстны, и базы данных разношерстны, то это, конечно же, проблема. Достаточно серьезная. И тогда действительно без сервера приложений - никак. Правда, трудно догадаться, кто и зачем создал себе такие проблемы. Примерно с таким же успехом он мог натворить для себя разношерстных серверов приложений, которые между собой связать еще труднее, чем разношерстные СУБД. Разношерстные СУБД хоть в какой-то мере поддерживают ANSI-92, а вот разношерстные сервера приложений - это уже неизлечимо...


2 _рубль. Не обижайся, это я так шучу... :) Безо всякой злобы м ехидства, по-дружески. Не надо терять веру в человечество. Нужно всего лишь напрячь лобную мышцу и привести какие-то более существенные аргументы, нежели те, в которых словосочетание "сервер приложений" с легкостью заменяется на словосочетание "SQL-сервер" практически без искажения смысла.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32733162
Фотография рубль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MS SQL Server 2000 бог, а VB пророк его на земле ...
Ну теперь все довольны? Считайте что я так искренне думаю.

У меня вопрос к аудитории:
Если тема называется "3-tier своими руками", то здесь нужно обсуждать ...?
Правильно, все что угодно, только не "3-tier". Сам спросил и сам ответил.

>> словосочетание "сервер приложений" с легкостью заменяется на словосочетание "SQL-сервер" практически без искажения смысла

Можно заменить на словосочетания - pascal, asm, C/C++ и т.д. Кто на что лудше умеет "напрячь лобную мышцу".
Или его можно сравнивать с чем угодно, можно со всем что знаешь.
Или с первым, что придет в голову.

авторА что ты будешь делать с 20-ю серверами приложений, когда выяснится, что одновременно на всех в одинаковом русле нужно исправить код? просто нужно, что бы архив с кодом, в нужное время оказался в определенном каталоге на апп. сервере, даже не на апп. сервере физически, а так что бы он его видел. Разве это сложно?

авторПравда, трудно догадаться, кто и зачем создал себе такие проблемы. Примерно с таким же успехом он мог натворить для себя разношерстных серверов приложений, которые между собой связать еще труднее, чем разношерстные СУБД. Разношерстные СУБД хоть в какой-то мере поддерживают ANSI-92, а вот разношерстные сервера приложений - это уже неизлечимо... Оборудование для разных технологических операций производят разные организации. Не я, все это строил, перестраивал, модернезировал, продовал, скупал и т.д. И наличие СУБД поддерживающее ANSI-92, это еще хорошо, но есть и просто лог файлы. А вот сервера приложений наши и они полность под контролем.


авторПри соединении SQL-серверов инженеры технологи в режиме реального времени могут легко контролировать(именно контролировать, управление только с рабочих мест в подразделении) ход технологических процессов любых подразделений, и неважно где расположено оборудование, и где находятся инженеры. Пощадите меня, не надо, прошу вас. Ведь если что то делаеш, то с намерением в дальнейшем это улудшить и расширить, а не загонять работу в тупик. Упровлять то же с использованием SQL-серверов? Если время придет. Ведь это вполне реально. И что тогда делать с всей этой софтиной замешанной на SQL-серверах и только?

Репликация это не панацея. У Oracle есть и другие способы объединения и слияния. Мало того, можно запихать логику описанную на PL,java,pro c.
Но если бы я хотель обсудить это, угодайте куда нужно пойти?

Люди! Можете себе представить, хотя бы гипотетически, что мне нужен выделенный "движок" с кодом, не замешанный на данных, в смысле хранения и обработке, т.е. БД оnдельно, а код отдель по ресурсам и по смыслу. И мне не нужен "MS SQL Server 2000", прастите за богохульство.
И у меня есть желание обсудить, то как лудше это сделать, а не на что его заменить.

Я умер. Все.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32733211
Фотография рубль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Убиваясь в предсмертных судорогах, ляпну еще на прощание ...

Народ ... !
Операционная система, это по сути и есть сервер приложений!
Вапрос, только в том где, на каком ее уровне оно, приложение размещено.
На уровне ядра, модулей (работа с производственными контроллерами) и т.д.

Прошу, умоляю, не предлагать заменить ее на "MS SQL Server 2000", я в горобу от этого перевернусь.

Аминь! Счастья вам.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32733245
авторДля клиента безразлично, в файле с каким расширением и в каком именно формате находятся данные. Он работает с представлениями (View), сформированными на SQL-сервере (серверах) всегда с SQL-запросами. Отчетность формируется ТОЛЬКО НА ОСНОВАНИИ ДАННЫХ SQL-серверов (а не какого-то двоичного файла).
На небесах меня научили многому и быстро.
Теперь я умею делать так -
Код: plaintext
select * from /root order by date;
я продолжаю учиться.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32733330
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Призрак рубля авторДля клиента безразлично, в файле с каким расширением и в каком именно формате находятся данные. Он работает с представлениями (View), сформированными на SQL-сервере (серверах) всегда с SQL-запросами. Отчетность формируется ТОЛЬКО НА ОСНОВАНИИ ДАННЫХ SQL-серверов (а не какого-то двоичного файла).
На небесах меня научили многому и быстро.
Теперь я умею делать так -
Код: plaintext
select * from /root order by date;
я продолжаю учиться.
Ая яй яй - чего то плохо Вас на небесах учили или Вы сами плохо учитесь. Вообще то вот так вот:
Код: plaintext
select * from god."/root" order by date;
или хотите сказать, Вам там прямо так и дали доступ по овнеру :)

P.S. А вообще то не очень понятно все то, что Вы выше написали, особенно Ваши стенания по поводу MSSQL и VB. Разве Вас кто то заставлял на них переходить ?
...
Рейтинг: 0 / 0
3-tier своими руками
    #32733391
ASCRUSили хотите сказать, Вам там прямо так и дали доступ по овнеру :) В своей бодсети :)

ASCRUS... MSSQL и VB. Разве Вас кто то заставлял на них переходить ?Нет, не заставляют, на этом в преисподнии "ваяют". Греха много :)
...
Рейтинг: 0 / 0
3-tier своими руками
    #32733788
Введука я еще раз народ во искушение ...

В 2000 году делали задачу, расчет ЗП на MS SQL, всю логику расчета описали на TR-SQL.

Через годик от скуки, отчасти для пробы, часть расчетов свояли используя EJB+MySQL и по Linux запустили.

Задача на EJB+MySQL крутилась быстрее, обработка транзакций тоже работала нормально, немно "потресли".

Вполне возможно, что не такие уж мы были специ в MS SQL. Запросто, не спорю.
Дело в другом. Если сравнить гибкость задачи, усилий затрачиваемых на ее модернизацию на java с TR-SQL. Как земля и небо.
Может от туда пошли, эти остаточные явления, но всю логику описывать на стороне сервера нехочется дол сих пор.
Хотя у Oracle, пожалуйста java, бери да юзай. А все равно нехочется.
Наверное превычки и предрассудки. Ну и ладно, никто не совершенен.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32734017
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Призрак рубляВведука я еще раз народ во искушение ...

В 2000 году делали задачу, расчет ЗП на MS SQL, всю логику расчета описали на TR-SQL.

Через годик от скуки, отчасти для пробы, часть расчетов свояли используя EJB+MySQL и по Linux запустили.

Задача на EJB+MySQL крутилась быстрее, обработка транзакций тоже работала нормально, немно "потресли".

Вполне возможно, что не такие уж мы были специ в MS SQL. Запросто, не спорю.
Дело в другом. Если сравнить гибкость задачи, усилий затрачиваемых на ее модернизацию на java с TR-SQL. Как земля и небо.
Может от туда пошли, эти остаточные явления, но всю логику описывать на стороне сервера нехочется дол сих пор.
Хотя у Oracle, пожалуйста java, бери да юзай. А все равно нехочется.
Наверное превычки и предрассудки. Ну и ладно, никто не совершенен.
И что же на Java можно гибче сделать, чем на SQL даже в той же зарплате ? Прямо интересно стало мне. Очень примитивно, как у меня зп считается:
1. Строится список сотрудников, кого считать (тех, кого затребовали и кто еще не рассчитан), по ходу блокируя их для предотвращения проведения по ним параллейного расчета другими сессиями или изменения по ним входящей информации (благо централизованно все это в одно место сходится)
2. Строится список расчетных месяцев (если есть сторно, то естественно там не только текущий расчетный).
3. Производится предварительное кэширование некоторых входящих и справочных данных в глобальные времянки с целью более удобной формы доступа к этим данным.
3. Организуется курсор от самого дальнего месяца
4. Организуется курсор по обьектам начислений, который автоматом вытаскивает обьекты, их свойства и ХП в упорядоченном виде (ориентируясь по dependence обьектов)
5. Запускается ХП, внутри которой алгоритм расчета начисления, состоящий примерно из такого запроса:
авторINSERT INTO АрхивНачислений
SELECT Тариф * ОтработанноеВремя // или чего там надо
FROM ...ВходящиеИРасчетныеДанныеПоСотрудникам...
WHERE Сотрудник IN (Буфер кого считать для рассчитываемого месяца);для более сложных алгоритмов естественно может быть и еще парочка запросов для предварительных расчетов, но финишный будет именно приведенный мною.
6. Цепляем следующее начисление и ее ХП, переходим на пункт 4
7. Прогоняем аналогичные пунктам 4,5,6 для подоходнего и ЕСН (сторнируются же они).
8. Как все месяца просчитаны в том же духе на текущий месяц считаем удержания и сумму на руки.
9. Устанавливаем флаги готовности на посчитанных сотрудников и снимаем с них установленные блокировки.

Вуаля - алгоритм расчета зп такой, что ему как то до фени, сколько и кого считать - одного, тысячу, сто тысяч сотрудников - вот сколько есть начислений, удержаний и налогов, столько примерно запросов и будет выполнено. А нука теперь расстолкуйте мне, как это Вы все на Java быстрее сделали - уж не по каждому ли сотруднику все считали то, уж не алгоритмически то ? :) Или может у Вас на TSQL малость процедура расчета зп на код VBA смахивала, типа получаем сотрудника, все по нему конкретно тащим, считаем, ветвимся, потом пишем и так далее ... Ню ню - давайте будем колоться, что делал, как убивал MSSQL, почему на Java переходил :)

P.S. И вот я что Вам скажу про ХП мои расчетные - они абсолютно автономны и легко сопровождаются - на вход подается информация, в буферах (времянках) лежит информация, на выходе они в архив пишут, больше ничего не знают, ничего не ведают. Думаете если в ТК порядок расчета больничного с 1 января 2005 года изменится, мне долго будет ХП новую на основе старой по больничному создать и в табличке указать, что с 01.01.2005 будет она использоваться в расчетах ? И кстати если уж придется в январе 2005 сторнировать человеку пару прошлых месяцев, как Вы думаете, будут ли у меня сложности рассчитать ему больничный по старому алгоритму, действительному на тот момент времени, или это будет похоже на что то типа:
авторSELECT Proc_Name
INTO @Proc_Name
FROM CalcObject_History
WHERE @CalcDate BETWEEN SaveDate AND SaveCloseDate;

EXECUTE IMMEDIATE 'CALL ' || @Proc_Name || ' ();';
...
Рейтинг: 0 / 0
3-tier своими руками
    #32734026
Фотография ASCRUS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И кстати чет я вообще сомневаюсь, что Вы на "TR-SQL" много работали. Я лично больше с TSQL привык на MSSQL общаться по причине его там присутствия.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32734121
_рубль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ASCRUSА нука теперь расстолкуйте мне, как это Вы все на Java быстрее сделали - уж не по каждому ли сотруднику все считали то, уж не алгоритмически то ? :) Или может у Вас на TSQL малость процедура расчета зп на код VBA смахивала, типа получаем сотрудника, все по нему конкретно тащим, считаем, ветвимся, потом пишем и так далее ... Ню ню - давайте будем колоться, что делал, как убивал MSSQL, почему на Java переходил :)
Примерно также, в результате один курсор и расчет пробежкой по ему.
По ходу формируя накапительные значения по группам расчетов,
Для расчета типа "процент от суммы".

А разницу понимаеш когда попробуеш.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32734260
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
<вырезано модератором>
Вот ведь, сделают чего люди или увидят чего, такое кривое-кривое - и все, значит по-другому, по правильному, делать уже невозможно, технология дрянь, софт дрянь......

Еееееэээээээхххххххх.......

-- Tygra's --
...
Рейтинг: 0 / 0
3-tier своими руками
    #32737881
Фотография Garya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TSQL, конечно, не самый лучший язык программирования. В нем нет даже цикла FOR. В нем нет возможности создать пользовательский класс и в принципе нет возможности реализовать принципы ООП. Тогда, когда бизнес-логика сложна, когда эта бизнес-логика плохо ложится на реляционную модель, когда для ее реализации начинаются всерьез ощущаться ограничения TSQL, тогда - и тут я согласен - может возникнуть соблазн сотворить собственный сервер приложений.

И у меня он тоже возникал. Но я вовремя себя одернул. Такие "пустяки", как взаимодействие данных при большом количестве одновременно открытых сессий, их непротиворечивость, проблемы грязного чтения и блокировок, проблемы пропускной способности (чтобы сервер приложений не стал узким местом)... Нужно самому организовать пулы очередей. Нужно самому отслеживать непротиворечивость информации, которая буферизирована на уровне сервера приложений, нужно быть готовым к тому, что информация в переменных, в пулах и очередях сервера приложений уже не соответствует той информации, которая находится в СУБД (потому что кто-то ее мог изменить в другой сессии, через другой сервер приложений или вообще напрямую с помощью SQL-запроса), может не соответствовать тому, что пользователь видит на экране. В одной сессии могут выполняться действия, которые противоречат действиям, запущенным в другой сессии, сервер приложений может оперировать неактуальными данными и -... получить отлуп от СУБД . Или НЕ получить отлуп, а получить кашу вместо достоверных данных. В том случае, если сервер приложений на своем собственном уровне игнорирует такие понятия как "уровни изоляции", "транзакции", "блокировки", "логическая целостность (DRI, в частности)". Обработать на сервере приложений все возможные совокупности ошибок, которые могут возникать по подобным причинам, очень и очень не просто. Еще сложнее избежать их появления. Точнее, можно избежать их появления, если сессии допускать к данным СУБД только по очереди, а не одновременно. Но тогда упадет пропускная способность. А чтобы она не падала, необходимо предусмотреть параллельную обработку данных, практически вынеся на уровень сервера приложений ту работу, которой обычно занимается SQL-сервер. То есть, реальная трудоемкость написания такого приложения, оказывается соизмерима с трудоемкостью написания самого ядра СУБД (например, MS SQL Server). Если же все функции, необоходимой для многосессионной параллельной обработки данных НЕ переносятся на сервер приложений, то разработчику сервера приложений так или иначе приходится затрачивать усилия, продумывая все комбинации всех возможных фаз параллельных действий пользователей, экстраполируя их через собственную бизнес-логику (которая на сервере приложений) и тщательно продумывая - а не возникнут ли дедлоки, например, на уровне СУБД. И получается, что никакого существенного выигрыша в плане трудоемкости разработки от сервера приложений нет. Не удастся в достаточной степени абстрагироваться от тех вопросов, с которыми обычно приходится работать на уровне TSQL, работая над разработкой приложений в мидлтаер.

Вопрос обработки ошибок тоже может добавить головной боли. Всем известно, что в любом более-менее сложном ПО наверняка содержатся какие-то ошибки. В приложении, работающем по технологии "клиент-сервер" сообщение выводится прямо на экран пользователя. Сообщения СУБД тоже могут выводиться на экран пользователя. Если клиентское приложение в плане обработки ошибок СУБД плохо спроектировано, ошибки можно отследить на самом SQL-сервере. При использовании сервера приложений как можно быть уверенным, что вообще вся информация об ошибках попадет во-время и по адресу? Одни мои знакомые зафигачили вывод сообщений об ошибке в системный журнал приложений. В их приложении возникла циклическая ошибка, которая вызвала переполнение журнала приложений. А в это время юзер продолжал работать, ни сном, ни духом не ведая о происходящем.
Допустим, о факте возникновения ошибки мы уже знаем, даже не смотря на то, что на экран пользователя информация о ней не выводится. На SQL-сервере можно запустить хранимые процедуры или триггеры в режиме отладки, пошагово, посмотреть, что поступает на сервер, как он на эту информацию реагирует. С сервером приложений процесс отладки может существенно усложниться. Особенно, если отладка выполняется на "живом", запущенном в работу приложении (например, когда выявилась какая-то ошибка в процессе текущей работы). Особенно, если ошибка возникает только при большом количестве параллельных сессий и именно на уровне СУБД. При этом нужно каким-то образом сопоставить конкретные действия конкретного пользователя с реакцией на эти действия сервера приложений (отфильтровав эту реакцию в куче реакций на все остальные действия во всех остальных сессиях), и затем на следующем уровне искать телодвижения на уровне СУБД, которые соответствуют только некоторой части отфильтрованных действий сервера приложений, запуская некоторые фильтры уже на уровне СУБД. Но как вы будете производить эту многоуровневую фильтрацию? Я знаю программистов, которые вот таким образом намучилившись с отладкой мидлтаер и уже десяток раз прокляли тот день, когда им в голову стукнуло делать сервер приложений.

Еще раз, чтобы не возникло недопонимания. Я не против сервера приложений. Но не считаю, что "3-tier своими руками" нужно делать в большинстве случаев. Только в некоторых, исключительных случаях, заранее тщательно продумав, предварительно взвесив все "за" и "против", осознав и заведомо согласившись на те проблемы, которые при этом возникнут. Потому что, плюсы трехзвенки совершенно точно перевесили ее минусы. И не забывая о том, что многие поставщики СУБД развивают свои продукты и вводят непосредственно в них все более развитые возможности, в частности, в MS SQL Server 2005 уже можно будет на уровне сервера вкусить прелести ООП, а в Oracle они давно есть. Но почему-то как-то редко и мало используются. Кстати, почему? Не потому ли, что быстродействие и пропускная способность как правило проигрывают при переходе на более высокие уровни абстрагирования? Игнорировать же вопросы быстродействия, логической целостности, пропускной сопсобности и т.п. на сегодня врядли удастся...

ИМХО
...
Рейтинг: 0 / 0
3-tier своими руками
    #32738167
_рубль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Garyaв Oracle они давно есть. Но почему-то как-то редко и мало используются. Кстати, почему?Ресурсы машин имеют свое конечное значение, физические ресурсы.
Какая основная, стратегическая задача серверов СУБД (Систем Управления Баз Данных)?
Все таки УПРАВЛЕНИЕ.
Но есть и задачи по работе с данными, именно работе.
Допустим, эконометрика, иследование операций. Размешая всю логику на сервере БД мы загружаем его не совсем характерной для его работой и тем самым отвлекаем от прямых обязанностей. Все мы люди, и те кто писал сервера и те кто пишет под их. Что будет если упадет сервер приложений расчитывающий задачу по оптимизации маршрутов поставки на основании полученных заказов? Ничего страшного, задачу можно запустить заново. А что будет если упадет при этом и сервер БД? Тем более задачи на апп. серверах можно физически разнести по своей значимости и влиянию на управление данными.
J2EE и EJB это не конкуренция серверам баз данных, это движение на разделение ресурсов прикладных задач по обработке и работе с данными.
Возьмем тот же Oracle, есть СУБД и есть сервер приложений с поддержкой сессий транзакций, а блокировки это работа сервера БД.
Структура серверов приложений на основании J2EE, построена на основании контейнеров под управлением которых и работают приложения.
Писать сложные задачи с "чистого листа" не всегда есть смысл.
Приложение можно разработать под определенный "движок". Там и обработка ошибок, сессии, транзакции, многое то что есть в СУБД.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32738350
_рубль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ранее упомянул по поводу аптечного склада.
А именно по системе обработке электронных заказов.

Чаше всего сейчас заказы "оформляются" средствами предоставленными поставщиком. Клиентская программа получающая данные и на основании их пользователь формирует заказ. Единственная кализия может быть в том, что при получении заказа товара не будет в наличии. Но допустим мы переходим к определенному формату заказа, формируемого сторонним ПО. Возможны лексические несовпадения. У нас "Аспирин упса N10", а пришол заказ на "Аспирин упс. №10". Нужно проводить лексическое распознование. Есть необходимость проведения расчетов по аптимизации маршрутов поставок и анализа - кому в первую очередь.
Далее сбор информации от поставщиков, лексическое сопоставление данных, расчет стоимости с учетом транспортно-заготовительных расчетов, оптимизация маршрутов поставок, определение потребности.

Нельзя забыть и про саму передачу и получение данных.

Сколько из данной работы имеет отношение к УПРАВЛЕНИЮ данными, то чем призваны заниматься сервера БД и сколько связано с их предварительной обработкой, работой с данными?

И если эта логика, по сути своей, различна. Где ее разместить?

Если вы расчитываете на коммерческую рентабельность, то навряд ли захотите привязываться к конкретной СУБД.

Но опять же. Можно ли все это зделать используя только СУБД Oracle? Да можно.
А можно и использовать сервер приложений.

P.S. Поехал в командировку, модератору будет меньше работы. :)
...
Рейтинг: 0 / 0
3-tier своими руками
    #32738875
Фотография Garya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_рубльИ если эта логика, по сути своей, различна. Где ее разместить?Конкретно в рассматриваемом случае лично я бы разместил ее на сервере BizTalk. Он как раз очень хорошо приспособлен для решения подобных задач. В некотором смысле это мидлтаер. В некотором смысле он даже лучше, чем традиционный сервер приложений. Потому что позволяет автоматизировать многие операции по преобразованию плохо стыкующихся форматов данных поставщика и клиента. А также позволяет реализовать на его стороне ту часть логики, которая не реализована внутри взаимодействующих приложений через этот центр их интеграции.
Наконец, поставщик может предоставить портал в виде WEB-служб. А мы у себя можем осуществить стандартные процедуры установки соответствий данных нашего справочника и справочника поставщика. В конце концов, разработаны (и продолжают разрабатываться) стандарты E-Commerce, для обмена B2B и B2C. Правда, я не слышал о том, чтобы в этих стандартах шла речь о СОДЕРЖИМОМ справочников. Все больше об их структуре (например, оговаривается XML-схема по составу полей для обмена информацией о контрагентах). ИМХО, эти стандарты еще очень и очень сырые (например, они не учитывают, что предприятие может сменить название, оставшись прежним предприятием, к которому должны оставаться привязанными все прежние связанные с ним движения ресурсов). Но время идет, и светлые мысли все чаще посущают наши светлые головы... :)
Во всяком случае, во всех тех случаях, когда нам на практике предлагали использовать многоуровневое приложение, находя для этого достаточно веские основания, мы выходили из ситуации с помощью MS BizTalk Server, с помощью которого все задачи решались быстро и изящно. Самое главное - это минимум ручной работы. МИ-НИ-МУМ.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32738936
bizonline
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо за советы и конструктивную критику.
Что касается противопоставления 3-tier - SQL, то SQL сервера 3-tier отменить никак не может. 3-tier необходим в основном для выполнения несвойственных SQL серверу операций (например последовательной обработки данных от записи к записи, обращение к системным или сетевым функциям, выполнение сторонних запросов к другим компонентам). В двухуровневой архитектуре некоторые действия приходится выполнять на стороне клиента, что во первых небезопасно, а во вторых увеличивают трафик.
Как дополнение к примерам сатьи по адресу http://www.bizonline.ru/Exe/Example.zip расположена небольшая свободная программа складского учета. В ближайшем будущем мы выложим все исходные коды.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32739239
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я вот что-то не пойму: т.е. если вдруг появляется какой-то минимум действий, ктоторый на SQL сервере делать ... тяжело, вместо того, чтобы делать это внешней утилитой или на клиенте, люди готовы перекорежить все приложение, перевести всю систему на апп-сервер только из-за какой-то малости!!! Но смысл!!! Смысл то где???

Ну если человек ездит иногда - пару раз в год - в лес, на природу, вы предлагаете ему купить LandRover или Nissan Terrano и все остальное время ездить только на нем??? Ну как так? А не проще ли купить себе легковую машину, обычную, для города, и УАЗик или БРДМ :) или трактор :)) для своих пары раз в год??? Ну епрст!!!

Ну неужели людям больше делать нечего? Или времени девать некуда? Ну тогда бы занялись изучением - глядишь, и двухзвенки бы получились путевые.

Ну когда никак больше - ну тогда понятно, тогда и я делал клиент-вебсервис-бд. Но когда просто так.....


-- Tygra's --
...
Рейтинг: 0 / 0
3-tier своими руками
    #32739388
FYI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
FYI
Гость
>> Смысл то где???

А иначе кина не будет, картинки. Приятно красиво и долго рассказывать про серьезные вещи для настоящих пацанов, например, "130 слинкованных таблиц на Байконуре" или "утечку памяти в NT-сервисах при перекачках данных через сервер" и т.п. Послушаешь - красиво, слов нет, глобально, с размахом. Потом подумаешь "Ну и что?" и вернешься к своим делам, потому что инфы-то полезной для себя никакой не получаешь. А разговоры про 3-tier и BizTalk более актуальны были лет несколько назад, когда эти концепты созревали. С чем согласен, это с тем, что вендоры ПО быстрее разрулят многие проблемы, чем это у девелопера в голове срастется как конфликты конкурирующих процессов развести при большой нагрузке и т.п. Тогда имеет смысл рекомендации вендора читать, а не на текстовой барахолке толкаться мессагами. /* IMHO */
...
Рейтинг: 0 / 0
3-tier своими руками
    #32740058
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tygraНу если человек ездит иногда - пару раз в год - в лес, на природу, вы предлагаете ему купить LandRover или Nissan Terrano и все остальное время ездить только на нем??? Ну как так? А не проще ли купить себе легковую машину, обычную, для города, и УАЗик или БРДМ :) или трактор :)) для своих пары раз в год??? Ну епрст!!!
где-то я такие аргументы (танк против мотоцикла) уже видел :)
наверное в топике про файлмейкер в "Сравнении СУБД"
схожесть аргументации заставила меня призадуматься... а может это мы тут все такие, с высоты поросячьего полета не видим всего величия и глубины мысли про 3-ий слой?
...
Рейтинг: 0 / 0
3-tier своими руками
    #32740729
Alexey Sh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И ещё один вопросик про средний слой: на какой платформе его реализовывать? Писать свои СУБД вроде как из моды вышло, а ваять на коленке средний слой - вроде как поток не иссяк
...
Рейтинг: 0 / 0
3-tier своими руками
    #32741451
funman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Alexey ShИ ещё один вопросик про средний слой: на какой платформе его реализовывать? Писать свои СУБД вроде как из моды вышло, а ваять на коленке средний слой - вроде как поток не иссяк

Это вопрос предпочтений и наличия необходимых средств, лучше за основу взять готовый модуль (как-то сам писал под PYTHON сервер приложений, вроде все хорошо, но беда в том что для скорости нужно постоянное соединение с БД а для возможности обработать больше соединений, постоянный коннект вроде как и не нужен в сети было 20 таких клиентов. Что было бы если их количество стало расти так и не узнал). Поэтому web-сервис кажется более предпочтительным, особенно кэшируемый (чтобы время на соединение с СУБД не тратить). А выбор платформы скорее всего за разработчиками, на чем проще, на том и стоит делать (ИМХО), перспективы тут угадать сложно.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32747524
Фотография рубль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tygra...Ну неужели людям больше делать нечего? Или времени девать некуда? Ну тогда бы занялись изучением - глядишь, и двухзвенки бы получились путевые.
Сказано сделано, будем делать путевую двухзвенку, классический клиент сервер.

Получили мы заказы в электронном виде, на аптечном складе. Как, это упустим. Все в базе данных, и по структуре и по смыслу согласовали.
Теперь заказы нужно обработать.
Если содержимое заказа отсутствует в наличии, его нужно на рассмотрение менеджеру по работе с поставщиками, пускай разбирается, это его работа.
Если заказ может быть выполнен, но заказчик еще не расплатился за прошлые поставки и исчерпал уже кредит доверия, отправим к менеджеру по работе с заказчиками, пускай разбирается.
И те что остались в оперативную обработку. Отгрузка формируется не только на основании электронных заказов, по телефону, кто то лично приехал, и у электронных заказов приоритет последний. Получается очередь. Можно провести предварительные расчеты по маршруту поставки, решать будет менеджер, а мы ему предварительный расчет предложим.
Можно еще и статистику с аналитикой просчитать.
У многих товаров есть сопутствующий товар, т.е. Если клиент заказал «шприцы» и только, но что ими «колят» не заказал и не заказывал ранее, нужно взять на заметку и менеджеру, пускай работает.
Есть сезонность спроса, простудные зимой, аллергические весна – лето и т.д., можно посмотреть из клиентов кто не по сезону заказывает и выяснить почему, опять выявили и менеджеру на заметку. И таких расчетов полно, все что нужно данные в базе и алгоритмы в программе.
Вот и сделали. Классическая двухзвенка, мало того человек нужен только для «Вкл./Выкл.», а так все само.
Правда некоторые алгоритмы ресурсы не «нюхают», а «жрут», но ведь это не проблема, для дела и железо найдем и сетевой проводок «по прямее».
Красота, все крутится и вертится, классика. Внутреннюю диспетчеризацию организовали, если заказов много статистикой и аналитикой можно на досуге ночью заняться.
Но ведь софтина может подвиснуть или упасть, не будешь же сидеть перед ей. Ну что мы без рук? Хлопнули в ладоши и вот за ей уже со стороны присматривают, если упадет ее подымут, мол нехрен на диске без дела валяться и в логи паганить,иди работать.
Итог:
- для работы софта нужны данные и алгоритмы
- работает под присмотром другого софта
Так что же это получилось?
Не классический ли сервер приложений?
С чем боролись на то и напоролись?
...
Рейтинг: 0 / 0
3-tier своими руками
    #32747525
Фотография рубль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FYI "Ну и что?" и вернешься к своим делам, потому что инфы-то полезной для себя никакой не получаешь. ответ также прост, как и очевиден – ваш опыт и знания на порядок, или порядки, превосходят тех кто здесь что ни будь ляпнул. Поделитесь им и инфа полезная добавится.

FYI разговоры про 3-tier и BizTalk более актуальны были лет несколько назад, когда эти концепты созревали. за это время многое созрело и иногда интересны не только сами голые концепты, но и их применение на практике.

FYI Тогда имеет смысл рекомендации вендора читать, а не на текстовой барахолке толкаться мессагами. /* IMHO */ где бы мне найти такую песню, что строить и жить помогает.
Я, бы все перечитал. Вот только в сутках 24 часа, 8 нужно работать, я пытался говорить, что мне почитать хочется, безполезно, работать надо, работать и весь ответ, часа 2-3 семье уделить, что бы не удивляться потом, откуда взялись рога при недостатке кальция в организме, а с 24.00 до 6.00 спать очень хочется.

У меня из того, что нужно прочитать первым делом, уже очередь образовалась и что бы что то передвинуть с последнего места не первое приходится доводы веские самому себе находить.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32747526
Фотография рубль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Garya _рубльИ если эта логика, по сути своей, различна. Где ее разместить?Конкретно в рассматриваемом случае лично я бы разместил ее на сервере BizTalk.Все может быть, все.
Только при разработке серверных решений, очень не хочется ориентироваться только на определенную платформу, как операционки так и СУБД.
Не по тому что одна лучше, а другая хуже, потому, что есть и другие.
Есть желание ориентироваться на стандарты, а не на платформы, и сочетание J2EE & SQL, тоже не плохо.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32747558
Фотография рубль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Был еще интересный пример.
Два студента диплом делали.
А смысл заключался в следующем: все пользователи рано или поздно косячат.
Обработчики ошибок это перехватывают и предупреждают.
Эти двое предложили вести журнал косяков, для каждого поименно и на основании его анализа разрабатывать индивидуальные вопросники для пользователей. Достигли косяки критической массы, пользователю предлагается минут на пять, десять в день по отвечать на вопросы, составленные таким образом, чтобы ответы на их обеспечили его, пользователя, информацией о смысле того, как и что нужно делать. Если успехов нет, докладная на стол руководству, с последующей аттестацией.
Запустили, эту полностью автономную софтину. Результат был положительный.
Правда когда верхнее руководство стало само косячить безбожно, выключили.
...
Рейтинг: 0 / 0
3-tier своими руками
    #32749105
Фотография tygra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
рубльСказано сделано, будем делать путевую двухзвенку, классический клиент сервер.

Получили мы заказы в электронном виде, на аптечном складе. Как, это упустим. Все в базе данных, и по структуре и по смыслу согласовали.
Теперь заказы нужно обработать......
Ну чтож, хорошо получилось! :)

авторВот и сделали. Классическая двухзвенка, мало того человек нужен только для «Вкл./Выкл.», а так все само.
Вы про какого человека? Про программера? Ну так он везде нужен для «Вкл./Выкл.» , если систему он не пишет а поддерживает готовую :))

авторПравда некоторые алгоритмы ресурсы не «нюхают», а «жрут», но ведь это не проблема, для дела и железо найдем и сетевой проводок «по прямее».
Ну это уж кто как может сделать - у кого нюхают, а у кого и жрут :)

авторНо ведь софтина может подвиснуть или упасть, не будешь же сидеть перед ей. Ну что мы без рук? Хлопнули в ладоши и вот за ей уже со стороны присматривают, если упадет ее подымут, мол нехрен на диске без дела валяться и в логи паганить,иди работать.
Зачем со стороны? Есть шедулер виндовозный стандартный - пусть он и следит.

авторИтог:
- для работы софта нужны данные и алгоритмы
Хороший вывод
автор- работает под присмотром другого софта
Например, под присмотром операционной системы

авторТак что же это получилось?
Неужели подводная лодка?

авторНе классический ли сервер приложений?
С чем боролись на то и напоролись?
Точно, подводная лодка!!!

Расскажите пожалуйста свои логические рассуждения, которые привели вас к такому результату - сереверу приложений. А то явно никому непонятно - как так система вдруг оказалась апп-сервером.
Ааааа, или для вас все, что использует данные и алгоритмы, является сервером приложений???!!!

Вы уж тогда разницу напишите - что на ваш взгляд сервер-приложений, а что клиент-серверная система, а то может мы с вами не о том говорим.

-- Tygra's --
...
Рейтинг: 0 / 0
106 сообщений из 106, показаны все 5 страниц
Форумы / ERP и учетные системы [игнор отключен] [закрыт для гостей] / 3-tier своими руками
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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