Трехзвенная архитектура
От: symantis  
Дата: 08.02.11 13:59
Оценка: 7 (1)
Добрый день!

Посоветуйте. Имеется планы написать специализированную систему электронного документооборота на C#+MSSQL, порядка 500 пользователей. Насколько необходим промежуточный компонент в виде сервера приложений или можно обойтись клиент-серверным вариантом (клиент — десктоп-клиент на C#, БД на MSSQL, клиенты напрямую пишут-читают из БД)?
Re: Трехзвенная архитектура
От: Sshur Россия http://shurygin-sergey.livejournal.com
Дата: 08.02.11 14:03
Оценка:
Здравствуйте, symantis, Вы писали:

S>Добрый день!


S>Посоветуйте. Имеется планы написать специализированную систему электронного документооборота на C#+MSSQL, порядка 500 пользователей. Насколько необходим промежуточный компонент в виде сервера приложений или можно обойтись клиент-серверным вариантом (клиент — десктоп-клиент на C#, БД на MSSQL, клиенты напрямую пишут-читают из БД)?


А сколько пользователей одновременно читают-пишут в БД?
Шурыгин Сергей

"Не следует преумножать сущности сверх необходимости" (с) Оккам
Re: Трехзвенная архитектура
От: Carc Россия https://vk.com/gosha_mazov
Дата: 08.02.11 14:13
Оценка:
Здравствуйте, symantis, Вы писали:

S>Добрый день!


S>Посоветуйте. Имеется планы написать специализированную систему электронного документооборота на C#+MSSQL, порядка 500 пользователей. Насколько необходим промежуточный компонент в виде сервера приложений или можно обойтись клиент-серверным вариантом (клиент — десктоп-клиент на C#, БД на MSSQL, клиенты напрямую пишут-читают из БД)?

Я бы логику БД выносил бы в серверный компонент. А уж клиенты имели бы дело с ним, а он уж разруливал можно\нельзя и.т.п. Имхо, гибче будет архитектура, клиент будет абстрагирован от самого MSSQL.
Aml Pages Home
Re: Трехзвенная архитектура
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 08.02.11 15:14
Оценка: +2
Здравствуйте, symantis, Вы писали:

S>Добрый день!


S>Посоветуйте. Имеется планы написать специализированную систему электронного документооборота на C#+MSSQL, порядка 500 пользователей. Насколько необходим промежуточный компонент в виде сервера приложений или можно обойтись клиент-серверным вариантом (клиент — десктоп-клиент на C#, БД на MSSQL, клиенты напрямую пишут-читают из БД)?


Во-первых веб, во вторых незачем писать, есть SharePoint
Re: Трехзвенная архитектура
От: Sinix  
Дата: 08.02.11 15:28
Оценка:
Здравствуйте, symantis, Вы писали:

S>Посоветуйте. Имеется планы написать специализированную систему электронного документооборота на C#+MSSQL, порядка 500 пользователей. Насколько необходим промежуточный компонент в виде сервера приложений или можно обойтись клиент-серверным вариантом (клиент — десктоп-клиент на C#, БД на MSSQL, клиенты напрямую пишут-читают из БД)?


Зависит от будущих планов.
Мы обошлись без промежуточного слоя, но только за счёт отсоединённого режима работы клиента. Разруливание доступа и проверка на допустимость операций делается силами СУБД. Клиенту доступен только API в виде набора SP/View. Логика, отвечающая за поведение клиента живёт на самом клиенте.

Сейчас ~ 200 пользователей, "сервер" — дохлый P4 2.8 c 2 гигами памяти (в серверной есть нормальное железо, лень переезжать, да и незачем). Проблем с производительностью/надёжностью не наблюдается.
Re[2]: Трехзвенная архитектура
От: symantis  
Дата: 11.02.11 13:58
Оценка:
Здравствуйте, Sshur, Вы писали:

S>А сколько пользователей одновременно читают-пишут в БД?


Думается, 100-200 одновременно будут читать из БД, проверка изменений состояний документов и т.д.
Re[2]: Трехзвенная архитектура
От: symantis  
Дата: 11.02.11 14:02
Оценка: +1 -1 :))
Здравствуйте, gandjustas, Вы писали:

G>Во-первых веб, во вторых незачем писать, есть SharePoint


Мне не нравятся веб-клиенты, и Шарепойнт тоже.
Re[3]: Трехзвенная архитектура
От: avishnyakov  
Дата: 11.02.11 14:06
Оценка:
Здравствуйте, symantis, Вы писали:

S>Здравствуйте, gandjustas, Вы писали:


G>>Во-первых веб, во вторых незачем писать, есть SharePoint


S>Мне не нравятся веб-клиенты, и Шарепойнт тоже.

Вам или клиентам? Или клиенты не знают о вебе?
Re[3]: Трехзвенная архитектура
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 11.02.11 14:16
Оценка: +1 :))
Здравствуйте, symantis, Вы писали:

S>Здравствуйте, gandjustas, Вы писали:


G>>Во-первых веб, во вторых незачем писать, есть SharePoint


S>Мне не нравятся веб-клиенты, и Шарепойнт тоже.


Ваше личное мнение никого не интересует. Есть миллион объективных причин не использовать десктопные клиенты для таких задач.
Re[3]: Трехзвенная архитектура
От: Sshur Россия http://shurygin-sergey.livejournal.com
Дата: 11.02.11 14:22
Оценка:
Здравствуйте, symantis, Вы писали:

S>Здравствуйте, Sshur, Вы писали:


S>>А сколько пользователей одновременно читают-пишут в БД?


S>Думается, 100-200 одновременно будут читать из БД, проверка изменений состояний документов и т.д.


Если все только читают, то это не проблема. Вопрос сколько из них будет вносить изменения? 100 одновременно пишущих в одну таблицу прямой путь к тормозам из-за блокировок. Ну или как минимум, огромная головная боль для разработчика, чтобы их развести таким образом, чтобы они друг другу не мешали.
Шурыгин Сергей

"Не следует преумножать сущности сверх необходимости" (с) Оккам
Re[4]: Трехзвенная архитектура
От: gandjustas Россия http://blog.gandjustas.ru/
Дата: 11.02.11 15:01
Оценка:
Здравствуйте, Sshur, Вы писали:

S>Здравствуйте, symantis, Вы писали:


S>>Здравствуйте, Sshur, Вы писали:


S>>>А сколько пользователей одновременно читают-пишут в БД?


S>>Думается, 100-200 одновременно будут читать из БД, проверка изменений состояний документов и т.д.


S>Если все только читают, то это не проблема. Вопрос сколько из них будет вносить изменения? 100 одновременно пишущих в одну таблицу прямой путь к тормозам из-за блокировок. Ну или как минимум, огромная головная боль для разработчика, чтобы их развести таким образом, чтобы они друг другу не мешали.


Вы систему документооборота представляете? Она соответствует довольно типичному профиилю использования 98 запросов на чтение и 2 на запись. То есть при 500 пользователях реально одновременных записей будет 10. Причем все они пойдут по ключу. В таких условиях схватить эскалацию блокировки очень сложно, даже если пользователей станет в разы больше. Для оптимизации можно SNAPSHOT\NOLOCK применить для большинства выборок.
Re[5]: Трехзвенная архитектура
От: Sshur Россия http://shurygin-sergey.livejournal.com
Дата: 12.02.11 09:51
Оценка:
Здравствуйте, gandjustas, Вы писали:

G>Вы систему документооборота представляете? Она соответствует довольно типичному профиилю использования 98 запросов на чтение и 2 на запись. То есть при 500 пользователях реально одновременных записей будет 10. Причем все они пойдут по ключу. В таких условиях схватить эскалацию блокировки очень сложно, даже если пользователей станет в разы больше. Для оптимизации можно SNAPSHOT\NOLOCK применить для большинства выборок.



Систему документооборота не представляю, потому и спросил. Если все так, то при грамотном подходе у ТС проблем с параллельной работой 500 пользователей не будет.
Шурыгин Сергей

"Не следует преумножать сущности сверх необходимости" (с) Оккам
Re: Трехзвенная архитектура
От: Jolly Roger  
Дата: 12.02.11 14:59
Оценка:
Здравствуйте, symantis, Вы писали:

S>Добрый день!


S>Посоветуйте. Имеется планы написать специализированную систему электронного документооборота на C#+MSSQL, порядка 500 пользователей. Насколько необходим промежуточный компонент в виде сервера приложений или можно обойтись клиент-серверным вариантом (клиент — десктоп-клиент на C#, БД на MSSQL, клиенты напрямую пишут-читают из БД)?


Причины появления трёхзвенной архитектуры следующие

На сегодняшний день значимость этих факторов снизилась, но вряд-ли можно сказать, что преимуществ совсем не осталось. Кроме того, если доступ через web Вам сегодня не нужен, то завтра вполне может потребоваться.

Исходя из этого и оцените, нужна-ли Вам трёхзвенка.
"Нормальные герои всегда идут в обход!"
Re[2]: Трехзвенная архитектура
От: Смоляное Чучелко Россия  
Дата: 01.03.11 13:46
Оценка:
Здравствуйте, Jolly Roger, Вы писали:

JR>
  • Может ещё чего забыл

    Имхо, забыл сочетание недостаточной надёжности сети с разбросанностью пользователей и высокой важностью программы. Тогда, может, есть смысл в многозвенной архитектуре -- чтобы при разрыве связи таки как-то можно было работать...
  • Re: Трехзвенная архитектура
    От: Aviator  
    Дата: 03.03.11 09:26
    Оценка:
    Здравствуйте, symantis, Вы писали:

    S>Добрый день!


    S>Посоветуйте. Имеется планы написать специализированную систему электронного документооборота на C#+MSSQL, порядка 500 пользователей. Насколько необходим промежуточный компонент в виде сервера приложений или можно обойтись клиент-серверным вариантом (клиент — десктоп-клиент на C#, БД на MSSQL, клиенты напрямую пишут-читают из БД)?


    Ну ещё как промежуточный вариант смарт клиент с собственным локальным кэшем и заливкой обновлений порциями.
    Re[2]: Трехзвенная архитектура
    От: max-maxtor Россия www.rsdn.ru
    Дата: 28.03.11 05:09
    Оценка:
    Здравствуйте, Jolly Roger, Вы писали:

    JR>Здравствуйте, symantis, Вы писали:


    S>>Добрый день!


    S>>Посоветуйте. Имеется планы написать специализированную систему электронного документооборота на C#+MSSQL, порядка 500 пользователей. Насколько необходим промежуточный компонент в виде сервера приложений или можно обойтись клиент-серверным вариантом (клиент — десктоп-клиент на C#, БД на MSSQL, клиенты напрямую пишут-читают из БД)?


    JR>Причины появления трёхзвенной архитектуры следующие

    JR>
    JR>На сегодняшний день значимость этих факторов снизилась, но вряд-ли можно сказать, что преимуществ совсем не осталось. Кроме того, если доступ через web Вам сегодня не нужен, то завтра вполне может потребоваться.


    JR>Исходя из этого и оцените, нужна-ли Вам трёхзвенка.


    Лично для меня сервер вэб является не 2 а 3 звеном, как и десктопные приложения.
    Re[4]: Трехзвенная архитектура
    От: adontz Грузия http://adontz.wordpress.com/
    Дата: 29.03.11 01:57
    Оценка: +1
    Здравствуйте, gandjustas, Вы писали:

    G>Ваше личное мнение никого не интересует. Есть миллион объективных причин не использовать десктопные клиенты для таких задач.


    Например, из веба удобнее печатать странички без адреса сверху и ещё удобнее сканировать подписанные документы.
    A journey of a thousand miles must begin with a single step © Lau Tsu
    Re[5]: Трехзвенная архитектура
    От: gandjustas Россия http://blog.gandjustas.ru/
    Дата: 29.03.11 08:29
    Оценка:
    Здравствуйте, adontz, Вы писали:

    A>Здравствуйте, gandjustas, Вы писали:


    G>>Ваше личное мнение никого не интересует. Есть миллион объективных причин не использовать десктопные клиенты для таких задач.


    A>Например, из веба удобнее печатать странички без адреса сверху и ещё удобнее сканировать подписанные документы.


    Формы для печати отлично делаются и в вебе, а сканеры умеют отправлять сканы на email или складывать в папки. Причем в случае поточного сканера другого варианта и нету.
    Re[6]: Трехзвенная архитектура
    От: adontz Грузия http://adontz.wordpress.com/
    Дата: 29.03.11 09:01
    Оценка:
    Здравствуйте, gandjustas, Вы писали:

    G>Формы для печати отлично делаются и в вебе


    ActiveX'ами.

    G>а сканеры умеют отправлять сканы на email или складывать в папки.


    О да, это весьма информационно-безопасно.

    G>Причем в случае поточного сканера другого варианта и нету.


    Ты не прав.
    A journey of a thousand miles must begin with a single step © Lau Tsu
    Re[7]: Трехзвенная архитектура
    От: gandjustas Россия http://blog.gandjustas.ru/
    Дата: 29.03.11 09:50
    Оценка:
    Здравствуйте, adontz, Вы писали:

    A>Здравствуйте, gandjustas, Вы писали:


    G>>Формы для печати отлично делаются и в вебе


    A>ActiveX'ами.


    Не говори глупости. в css указываются стили для печати.

    G>>а сканеры умеют отправлять сканы на email или складывать в папки.

    A>О да, это весьма информационно-безопасно.
    Не понимаю о чем ты.

    G>>Причем в случае поточного сканера другого варианта и нету.

    A>Ты не прав.
    Ага, конечно. Гораздо лучше привязать поточный сканер к конкретному рабочему месту, хотя он может сотни документов в минуту сканировать.

    Собственно поточные сканеры и были придуманы для того чтобы не ставить сканеры конкретным пользователям, а использовать один на организацию\этаж\отдел.
    Re[8]: Трехзвенная архитектура
    От: adontz Грузия http://adontz.wordpress.com/
    Дата: 29.03.11 09:54
    Оценка:
    Здравствуйте, gandjustas, Вы писали:

    G>>>Формы для печати отлично делаются и в вебе

    A>>ActiveX'ами.
    G>Не говори глупости. в css указываются стили для печати.

    Сам не говори глупости. Везде печатать делается через ActiveX, потому что обеспечить точное отображение печатной формы за счёт HTML невозможно (а иногда ведь надо не печатать, а впечатывать). Ты не можешь из веба задать ориентацию листа, отступы, напечатать на не дефолтный принтер.

    G>>>а сканеры умеют отправлять сканы на email или складывать в папки.

    A>>О да, это весьма информационно-безопасно.
    G>Не понимаю о чем ты.

    Ну так подумай о том что все документы попадут на один и тот же e-mail, в том числе секретные.

    G>>>Причем в случае поточного сканера другого варианта и нету.

    A>>Ты не прав.
    G>Ага, конечно. Гораздо лучше привязать поточный сканер к конкретному рабочему месту, хотя он может сотни документов в минуту сканировать.
    G>Собственно поточные сканеры и были придуманы для того чтобы не ставить сканеры конкретным пользователям, а использовать один на организацию\этаж\отдел.

    Теперь предлагаю вернуться из 1991-го в 2011-й и узнать что сканеры бывают сетевыми, как и принтеры.
    A journey of a thousand miles must begin with a single step © Lau Tsu
    Re[8]: Трехзвенная архитектура
    От: Sinix  
    Дата: 29.03.11 11:14
    Оценка:
    Здравствуйте, gandjustas, Вы писали:

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


    Если мы говорим о девайсах до 2х килобаксов (чисто о сканерах, не МФУ), у них средняя скорость сканирования 20-40 страниц в секунду. За 250 килорублей можно найти и 100 ppm, но они, заразы, безумно капризны, сдыхают от пары степлерных скрепок и обожают жрать бумагу 200 ppm — это уже несколько миллионов. Дороговато для рабочего места, не?

    В любом случае, куда больше времени занимает доставание листов и складывание их обратно. Особенно если кто-то умудрился заверить сшитый документ у нотариуса.

    G>Собственно поточные сканеры и были придуманы для того чтобы не ставить сканеры конкретным пользователям, а использовать один на организацию\этаж\отдел.

    В соседнем отделе обитает мфу xerox 5225 (вроде бы), временами приходится помогать разбираться в его настройках. Несмотря на заявленную скорость сканирования в 55 страниц/мин в реальности на документ уходит от половины минуты до двух (с момента взял в руки до момента получения пдф). Ещё столько же — на переименование и размещение документов по назначению. Это после кратких курсов "как пользоваться" и то, если человек не боится техники.

    В пользовании этот чудо-девайс весьма прихотлив, отправляет отсканированные документы либо на почту (сетевому пришлось немножко повозиться с настройками на приём почты), либо на шару по SMB, но далеко не на все машины (явной закономерности не выявили). Twain|WIA драйвера есть, но не работают. Драйвера для печати ужасны — временами самопроизвольно меняют лотки и ориентацию бумаги, забывают настройки, или, наоборот, не хотят их сбрасывать. Часть настроек делается только с самого аппарата, часть — через кошмарный веб-интерфейс. Официальный саппорт печально мнётся и предлагает ограничиться пдф на шаре (и то, только после того, как я им прислал требуемые настройки винды, с которыми оно иногда работало).

    Это один из лучших девайсов для небольшого офиса (до 150 000 р.), если что. Как чисто сетевой/для копицентра он крут. Как довесок к рабочему месту — увы.
    Re[9]: Трехзвенная архитектура
    От: gandjustas Россия http://blog.gandjustas.ru/
    Дата: 29.03.11 13:29
    Оценка:
    Здравствуйте, adontz, Вы писали:

    A>Здравствуйте, gandjustas, Вы писали:


    G>>>>Формы для печати отлично делаются и в вебе

    A>>>ActiveX'ами.
    G>>Не говори глупости. в css указываются стили для печати.

    A>Сам не говори глупости. Везде печатать делается через ActiveX, потому что обеспечить точное отображение печатной формы за счёт HTML невозможно (а иногда ведь надо не печатать, а впечатывать). Ты не можешь из веба задать ориентацию листа, отступы, напечатать на не дефолтный принтер.


    Не знаю как в твоем мире, а в моем ActiveX работает только в IE и использовать его для печати — идиотизм. Если нужно печатать страницы, то делают это с помощью CSS (посмотри как работают сайты авиаперевозчиков), или генерируют документы на сервере, которые печатаются клиентскими программами: pdf, xls, doc итп.


    G>>>>а сканеры умеют отправлять сканы на email или складывать в папки.

    A>>>О да, это весьма информационно-безопасно.
    G>>Не понимаю о чем ты.

    A>Ну так подумай о том что все документы попадут на один и тот же e-mail, в том числе секретные.


    А разве все документы, в том числе и секретные будут пихать в один сканер?
    Разные сканеры вполне на разные email могут отправлять.

    G>>>>Причем в случае поточного сканера другого варианта и нету.

    A>>>Ты не прав.
    G>>Ага, конечно. Гораздо лучше привязать поточный сканер к конкретному рабочему месту, хотя он может сотни документов в минуту сканировать.
    G>>Собственно поточные сканеры и были придуманы для того чтобы не ставить сканеры конкретным пользователям, а использовать один на организацию\этаж\отдел.
    A>Теперь предлагаю вернуться из 1991-го в 2011-й и узнать что сканеры бывают сетевыми, как и принтеры.
    А я тебе про какие говорю?
    Re[9]: Трехзвенная архитектура
    От: gandjustas Россия http://blog.gandjustas.ru/
    Дата: 29.03.11 13:30
    Оценка:
    Здравствуйте, Sinix, Вы писали:

    S>Здравствуйте, gandjustas, Вы писали:


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


    S>Если мы говорим о девайсах до 2х килобаксов (чисто о сканерах, не МФУ), у них средняя скорость сканирования 20-40 страниц в секунду. За 250 килорублей можно найти и 100 ppm, но они, заразы, безумно капризны, сдыхают от пары степлерных скрепок и обожают жрать бумагу 200 ppm — это уже несколько миллионов. Дороговато для рабочего места, не?


    Иронию не понял?
    Re[10]: Трехзвенная архитектура
    От: adontz Грузия http://adontz.wordpress.com/
    Дата: 29.03.11 13:33
    Оценка:
    Здравствуйте, gandjustas, Вы писали:

    A>>Сам не говори глупости. Везде печатать делается через ActiveX, потому что обеспечить точное отображение печатной формы за счёт HTML невозможно (а иногда ведь надо не печатать, а впечатывать). Ты не можешь из веба задать ориентацию листа, отступы, напечатать на не дефолтный принтер.

    G>Не знаю как в твоем мире, а в моем ActiveX работает только в IE и использовать его для печати — идиотизм. Если нужно печатать страницы, то делают это с помощью CSS (посмотри как работают сайты авиаперевозчиков), или генерируют документы на сервере, которые печатаются клиентскими программами: pdf, xls, doc итп.

    после того как ты советовал использовать SharePoint ограничиться ActiveX/IE не представляются таким уж странным. Что касается идиотизма, этот идиотизм — объективная реальность.

    G>А разве все документы, в том числе и секретные будут пихать в один сканер?

    G>Разные сканеры вполне на разные email могут отправлять.

    Решение с двумя сканерами дорого и нежизнеспособно.

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

    G>>>Собственно поточные сканеры и были придуманы для того чтобы не ставить сканеры конкретным пользователям, а использовать один на организацию\этаж\отдел.
    A>>Теперь предлагаю вернуться из 1991-го в 2011-й и узнать что сканеры бывают сетевыми, как и принтеры.
    G>А я тебе про какие говорю?

    Не знаю, потому что сетевые сканеры (с драйверами которые позволяют сканировать по сети) не привязываются к одному рабочему месту.
    A journey of a thousand miles must begin with a single step © Lau Tsu
    Re[10]: Трехзвенная архитектура
    От: Sinix  
    Дата: 29.03.11 13:42
    Оценка:
    Здравствуйте, gandjustas, Вы писали:

    G>Иронию не понял?

    Неа
     
    Подождите ...
    Wait...
    Пока на собственное сообщение не было ответов, его можно удалить.