Теория СУБД
- Теория СУБД
- ЗА ТАБЛИЦАМИ — НАШЕ БУДУЩЕЕ!
- СВЯЗЫВАЕМ ДАННЫЕ
- ОБЪЕКТНЫЙ РАЙ
- ЛОКАЛЬНАЯ БАЗА
- СЕТЕВАЯ БАЗА ДАННЫХ
- КЛИЕНТ-СЕРВЕР
- ТРЕТИЙ УРОВЕНЬ
- ЛОГИКА
- ВИДЫ СТРУКТУР БАЗ
- ОБЗОР РЫНКА
- РАЗВИТИЕ ТЕХНОЛОГИЙ БД
- БАЗЫ ЗНАНИЙ И ЭКСПЕРТНЫЕ СИСТЕМЫ
- АНАЛИЗ ДАННЫХ И OLAP-ТЕХНОЛОГИИ
- ХРАНИЛИЩА ДАННЫХ И КОРПОРАТИВНАЯ ПАМЯТЬ
- ИСТОРИЯ РАЗВИТИЯ ИНТЕРФЕЙСОВ ДОСТУПА К БАЗАМ ДАННЫХ
- ЧТО ДАЛЬШЕ?
Многие программисты, которых я знаю, способны работать только с двухуровневой моделью, то есть с клиент-серверными приложениями. Не потому, что они больше ничего не знают, а потому, что просто не видят преимуществ трехуровневой модели и не хотят мучиться с лишними проблемами, а ведь в будущем, во время сопровождения программ, три уровня по идее могут спасти их от лишних болезней анального отверстия.
Я работал в одной фирме (не будем тыкать в нее вилами), у которой было несколько офисов по России, и в каждом из них — парк компьютеров из 20-30 штук. В московском офисе эта цифра превышала сотню. Корпоративные программы обновлялись каждые две недели (вносились изменения, добавления и т.д.). Бедные админы в момент обновлений работали по субботам, чтобы пропатчить софт на каждой машине и убедиться в функциональности. Как решить эту проблему?
Самое простое — использовать трехуровневую систему: клиент, сервер логики (умники любят говорить "бизнес-логика") и сервер приложения. В такой системе вся логика собрана в сервере приложений. Если что-то изменилось в базе данных или в логике обработки данных, достаточно обновить его, и все клиенты будут работать по-новому без каких-либо патчей.
Преимущество такой системы состоит еще и в том, что на клиентских машинах не нужно держать драйвера доступа к каким-либо базам. Клиенты должны только знать, где находится сервер приложений, уметь к нему подключится и правильно отобразить данные.
Представим себе классическую задачу — появление новой версии базы данных или переход на базу качественно более нового уровня. Ну не хватает нам уже возможностей MySQL, захотелось заполучить всю мощь Oracle. Для этого переустанавливается сервер баз данных, изменяется сервер приложений на подключение к новой базе — и клиенты готовы к работе. Их обновлять не надо!
Но самое интересное то, что клиентская программа может быть какой угодно. Можно написать сценарии, которые позволят работать с сервером приложении прямо из браузера. В этом случае с базой смогут работать пользователи на любой платформе (Windows, Linux и т.д.).