К списку форумов К списку тем
Регистрация    Правила    Главная форума    Поиск   
Имя: Пароль:
Рекомендовать в новости

Проектирование клиент-серверного приложения

Гость
0 - 28.07.2014 - 23:23
Доброй ночи, форумчане!
Прошу поделиться опытом в следующем вопросе:
Имеется сервер с СУБД (MS SQL). Есть клиент (десктопный на C#). Вопрос как лучше реализовать обмен информацией (select, delete, update, insert и т.д.) между клиентом и СУБД???

P.S. Сейчас обращение происходит непосредственно в самом коде клиента - формируем SqlCommand и т.д. в общем весь T-SQL в коде клиента. Слышал что можно замутить прослойку WCF, что то типа C#->WCF->MS SQL.

Ткните носом, дайте ссылки или просто наведите, остальное найду по терминам.

Заранее спасибо!



Гость
1 - 29.07.2014 - 08:20
Сервер локальный или нет?
А почему Вас сейчас не устраивает данный способ обмена? Объясните, пожалуйста.
Гость
2 - 29.07.2014 - 08:53
Доброго утра!
Сервер локальный. Одна из причин - безопасность - хотелось бы чтобы все запросы как бы "шли через одну щель". Во вторых кто-то советовал делать все через WCF. Но вот и хочу поглубже разобраться
Гость
3 - 29.07.2014 - 09:30
Т.е. как я понимаю "один клиент = один доступ к SQL Server".
У меня как-то было подобная задача, но с WCF я плохо знаком. Придумал концепцию:
Клиентское приложение (обращение через сокеты к "шлюзу") ->
-> Приложение-"шлюз" на машине, где находится SQL Server (проверка правил в "шлюзе") ->
-> обращение к SQL Server
Гость
4 - 29.07.2014 - 09:42
Не совсем понял выражение "один клиент = один доступ к SQL Server"))) Программа-клиент создает коннэкшн к БД под логином и паролем прописанным в этой же СУБД, копий программ не мало - до 1000 штук. Просто интересует сама концепция разработки и обмена данными.
Гость
5 - 29.07.2014 - 11:19
Ну вот это я и хотел уточнить - сколько копий программы обращается к БД, не правильно выразился. Тогда я думаю нужно смотреть не в сторону безопасности подключения, а
Может Вам тогда посмотреть в сторону SSH, SSL, VPN?
Гость
6 - 29.07.2014 - 13:55
Цитата:
Сообщение от SheLLest Посмотреть сообщение
Т.е. как я понимаю "один клиент = один доступ к SQL Server"
один connect
Цитата:
Сообщение от walle93 Посмотреть сообщение
копий программ не мало - до 1000 штук
Пользователей?
Может быть надо чтобы обссуживалось одновременно 1000 клиентов? Но тогда надо изучить и понять изоляцию транзакций в MS SQL. Такие вопросы надо задавать на профильном сайте sql.ru
Гость
7 - 29.07.2014 - 13:58
Может я не так вопрос ставлю.... Хотелось бы именно узнать о самом проектировании информационной системы - как сейчас они строятся, нужно ли вообще посредством WCF все писать, либо есть еще какие методы обмена данными между клиентской частью и сервером???? на счет канала связи и блокировок вопрос пока даже не стоит. Но все равно спасибо!
Гость
8 - 29.07.2014 - 14:29
Для .NET - LINQ вроде неплох, хотя толком еще не разобрался. Но то, что увидел - упрощает жизнь, да. Вечная проблема отражения реляционных таблиц на объектную модель близка к удобному решению.
Гость
9 - 29.07.2014 - 22:24
можно начать с чтения википедии http://ru.wikipedia.org/wiki/Удалённый_вызов_процедур
Гость
10 - 30.07.2014 - 14:23
0-walle93 > собирал через SqlCommand но не компонентный, а создаваемый вместе с подключением динамически, иначе при обрыве связи когда соединение открыто придётся ексцепшены ловить. меньше визуальщины и больше писанины при работе с БД и всё получится.
Делал прогу которая вообще с SQL работала в асинхронном режиме. т.е. ты можешь ноут отключить или выйти за пределы вай-фай и продолжать работать, а когда связь восстановится произойдёт синхронизация.
Сложно блин, но такого в мире ПО я ещё не встречал :) Рекомендую попробовать!
Если Вам удасться реализовать такой же вариант и отладить, то отказоустойчивость клиентского приложения может быть абсолютной!
Гость
11 - 30.07.2014 - 14:57
Цитата:
Сообщение от walle93 Посмотреть сообщение
проектировании информационной системы
Вот и посмотрите.
google
проектирование информационных систем
Результатов: примерно 2 980 000 (0,33 сек.)
Гость
12 - 30.07.2014 - 15:26
А если посмотреть детальнее, получается смешно
http://fkn.ktu10.com/?q=forum/105
Проектирование информационных систем (ПрИС)

объекты по значению rmi
By vedro-compota 1 year 2 months ago 0 n/a

и так все строчки.
---
не надо лезть в очередное изделие Microsoft. Она их регулярно творит, уверяя прочих, что это самое прогрессивное в мире. И что всем надо купить и пользоваться новым причиндалом.
начать надо изучения предметной области


изучения Библии
Дейт, Кристофер
Автор классического учебника «Введение в системы баз данных»,
Гость
13 - 31.07.2014 - 00:52
7-walle93 >Вас что конкретно интересует? "Трехзвенка"? Какую цель преследуете теоретическую или практическую?
Гость
14 - 31.07.2014 - 12:02
Цитата:
Сообщение от 40KHYTbIU Посмотреть сообщение
7-walle93 >Вас что конкретно интересует? "Трехзвенка"? Какую цель преследуете теоретическую или практическую?
Наверное распрелеление прав на доступ к базе, таблицам. Раздача прав клиентам. Читать документацию.
Гость
15 - 31.07.2014 - 14:13
Web api можно замутить, со стороны mysql, там и ssl, и легко подтянуть к другим клиентам.
Гость
16 - 31.07.2014 - 16:26
Цитата:
Сообщение от Фанат NASCAR Посмотреть сообщение
со стороны mysql
Этот самый мускул хорош только для НЕ бизнес приложений. Потому что временами падает. Разумнее взять бесплатную версию "больших" SQL серверов.
Гость
17 - 02.08.2014 - 13:10
Не понравился мне мускуль. Вообще. Какой-то он показался слишком сложный для применения в небольших проектах. В личных предпочтениях был Embedded Firebird.
Гость
18 - 04.08.2014 - 21:04
16-x_05772 >у херовых админов вечно что то падает. Мускуль применяется в высоконагруженных крупных проектах по всему шарику, и не нам с вами судить, насколько он пригоден.
Гость
19 - 04.08.2014 - 21:05
17-Том >а держать СУБД род виндой - не нравится мне.
Гость
20 - 07.08.2014 - 23:36
16-x_05772 > Пример?
17-Том > Можно так же пример?
Гость
21 - 13.08.2014 - 15:36
Цитата:
Сообщение от Фанат NASCAR Посмотреть сообщение
Мускуль применяется в высоконагруженных крупных проектах по всему шарику
Применяется в WWW. Там нет интенсивного конкурентного доступа, например как при продаже билетов. Есть интенсивный доступ на чтение. Редкий на добавление. Транзакции нужны очень редко.
Несколько раз наблюдал нарушение работы в инете, сопровождаемое невнятной диагностикой. Последний раз ~ 20 дней назад. Примерно тогда же пал сервер балансера.
---
специально в тему. иду на http://godb.ru/v1/faq/
И без ответа. вопросил ещё раз - сразу выдан ответ. Вот такая стабильность.
Гость
22 - 16.08.2014 - 12:34
Вот еще крах
При попытке просмотра этой страницы возникла ошибка:

mysql_connect(localhost, airbase) to DB 'AB_FORUMS => AB_FORUMS' failed 0:


К списку вопросов






Copyright ©, Все права защищены