Трехзвенная архитектура
От: 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>Ты не прав.
    Ага, конечно. Гораздо лучше привязать поточный сканер к конкретному рабочему месту, хотя он может сотни документов в минуту сканировать.

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