![]() |
|
Модераторы: gambit |
![]()
|
|
| RWander |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 349 Регистрация: 4.5.2006 Где: Russia.Udm.Izhevs k Репутация: нет Всего: 6 |
Всем доброе время суток! Я - новичок в области написания распределенных приложений, так что если не много не то ляпну, то поправьте плз. Буду объяснять "на пальцах": есть прога, которая находится на многих компах и число пользователей постоянно растет, для работы с программой необходимо, чтобы пользователь ввел в прогу кое-какие данные. Затем эти данные должны быть сохранены в базе данных (использую MySQL), которая должна находиться на удаленном сервере. Так вот, столкнулся с проблемой: все данные для подключения к БД (username, password, host и др.) хранятся в самой программе, но для того, чтобы этот доступ стал возможен, необходимо для каждого пользователя добавлять его IP в список пользователей - это просто не реально.... Интуитивно стало понятно, что необходимо программу-посредник между моей прогой и базой MySql, чтобы все запросы к БД происходили через нее, а не через мою прогу. Меня интересует: как это можно реализовать? Как обычно поступают в данной ситуации?.. Наверно в данном случае необходимо использовать архитектуру клиент-сервер? Спасибо
Это сообщение отредактировал(а) RWander - 27.7.2007, 19:24 -------------------- Microsoft Certified Technology Specialist - ASP.NET Applications |
|||
|
||||
| mr.DUDA |
|
|||
|
3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 2 Всего: 232 |
Есть такое понятие как трёхуровневая архитектура: клиент, сервер приложения и сервер БД. Физически серверы приложений и БД могут располагаться хоть на одной, хоть на разных машинах. Суть подхода в том, чтобы клиент работал с серверным приложением а не с БД напрямую. Тогда логин и пароль к БД будет знать только сервер, плюс к этому он чётко определит наборы функций, которые сможет вызывать клиент. Наконец, в этом сценарии можно ввести свой способ аутентификации клиент-сервер, независимый от БД.
-------------------- ![]() |
|||
|
||||
| RWander |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 349 Регистрация: 4.5.2006 Где: Russia.Udm.Izhevs k Репутация: нет Всего: 6 |
mr.DUDA, может литературу какую-нибудь посоветуюте (желательно на русском конечно -------------------- Microsoft Certified Technology Specialist - ASP.NET Applications |
|||
|
||||
| RWander |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 349 Регистрация: 4.5.2006 Где: Russia.Udm.Izhevs k Репутация: нет Всего: 6 |
а можно какой-нибудь простой пример для трёхуровневой архитектуры? Например, как реализовать следующий пример: есть клиентская программа, пользователь ввел туда свое имя name, которое отправляется на сервер, а сервер формирует запрос, чтобы поместить эти данные в БД. какие инструменты необходимо применить для данной задачи?
PS еще, кстати, не очень понятна разница между двухуровневой архитектурой клиент <-> сервер <-> БД -------------------- Microsoft Certified Technology Specialist - ASP.NET Applications |
|||
|
||||
| mr.DUDA |
|
|||
|
3D-маньяк ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 8244 Регистрация: 27.7.2003 Где: город-герой Минск Репутация: 2 Всего: 232 |
Простой пример: БД на SQL Server, плюс ASP.NET страничка, и браузерный клиент.
Более сложный пример: БД, приложение на ASP.NET с торчащими наружу веб-сервисами, и толстый клиент (WinForms) Добавлено @ 19:51 P.S. а разницу я уже разъяснил: в 2-уровневой архитектуре на сервере живёт только БД и клиент коннектится к ней с логином и паролем к БД. То есть у всех клиентов данные для авторизации одни и те же. В трёхуровневой, к БД коннектится приложение живущее на сервере. А клиенты коннектятся к приложению. То есть, можно настроить логин, права и доступный функционал для каждого клиента в отдельности. БД вообще изолирована, отделена от внешнего мира. -------------------- ![]() |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, cully, mr.DUDA, Exception. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Распределённые приложения и сеть | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |