Слайд 2Содержание курса
MVC. Толстый тонкий клиент
Слайд 3Архитектура «клиент-сервер»
Двухзвенная:
Слайд 4Архитектура «клиент-сервер»
Трехзвенная:
Слайд 5Архитектура «клиент-сервер»
Многозвенная:
Слайд 6Архитектура «клиент-сервер»
Сравнение:
Двухзвенная:
+ простота
- менее надежная
Трехзвенная:
+ гибкая и масштабируемая
+ высокая безопасность
+
высокая производительность
Слайд 7 «Тонкий» и «Толстый» клиенты
«Тонкий»:
Только для отображения получаемой информации
Все вычисления на сервере
«Толстый»:
Расширенный
функционал
Большая часть данных обрабатывается на компьютере пользователя
Локальная база данных
Работа в оффлайн режиме
Слайд 9Model
Модель — это бизнес-логика приложения;
Модель обладает знаниями о себе самой и не
знает о контроллерах и представлениях;
Для некоторых проектов модель — это просто слой данных (DAO, база данных, XML-файл);
Для других проектов модель — это менеджер базы данных, набор объектов или просто логика приложения;
Слайд 10View
В представлении реализуется отображение данных, которые получаются от модели любым способом;
В некоторых
случаях, представление может иметь код, который реализует некоторую бизнес-логику.
Примеры представления: HTML-страница, WPF форма, Windows Form.
Слайд 11Controller
Контроллер определяет, какие представление должно быть отображено в данный момент;
События представления могут
повлиять только на контроллер.контроллер может повлиять на модель и определить другое представление.
Возможно несколько представлений только для одного контроллера;
Слайд 14TCP/IP Трехстороннее рукопожатие
1. Клиентский компьютер отправляет пакет SYN на сервер через Интернет,
спрашивая, открыт ли он для новых подключений.
2. Если сервер имеет открытые порты, которые могут принимать и инициировать новые подключения, он ответит ACKnowledgment пакета SYN, используя пакет SYN / ACK.
3. Клиент получит пакет SYN / ACK с сервера и подтвердит его, отправив пакет ACK.
Затем устанавливается TCP-соединение для передачи данных!
Слайд 15Алгоритмы балансировки
Round Robin
Weighted Round Robin
Least Connections
Destination Hash Scheduling и Source Hash Scheduling
Sticky Sessions
Слайд 16Основные сетевые протоколы
TCP/IP
Http/Https
FTP
POP3
SMPT
TELNET
SSH
JDBC
JMS
Слайд 17Http протокол
Каждое HTTP-сообщение состоит из трёх частей, которые передаются в указанном порядке:
Стартовая
строка (Starting line) — определяет тип сообщения;
Заголовки (Headers) — характеризуют тело сообщения, параметры передачи и прочие сведения;
Тело сообщения (Message Body) — непосредственно данные сообщения. Обязательно должно отделяться от заголовков пустой строкой.
Слайд 18Методы http запроса
OPTIONS
GET
HEAD
POST
PUT
PATCH
DELETE
TRACE
CONNECT
Слайд 20HTTP Headers
В зависимости от того, где эти заголовки могут находиться, они разделяются
на:
General Headers (Основные заголовки) — должны быть и в запросах и в ответах клиента и сервера.
Request Headers (Заголовки запроса) — используются только в запросах клиента.
Response Headers (Заголовки ответа) — используются только в ответах сервера.
Entity Headers (Заголовки сущности) — сопровождают каждую сущность сообщения.
Слайд 21Тело сообщения
тело сообщения — это сами данные, которые передаются в запросе. Тело сообщения
– это необязательный параметр и может отсутствовать.
Слайд 22Cookie
Ку́ки — небольшой фрагмент данных, отправленный веб-сервером и хранимый на компьютере пользователя. Веб-клиент всякий раз при попытке
открыть страницу соответствующего сайта пересылает этот фрагмент данных веб-серверу в составе HTTP-запроса. Применяется для сохранения данных на стороне пользователя, на практике обычно используется для:
аутентификации пользователя;
хранения персональных предпочтений и настроек пользователя;
отслеживания состояния сеанса доступа пользователя;
ведения статистики о пользователях