8. Разработка на Java (2018). Websocket | Технострим

Автор Nadezhda Belousova
8. Разработка на Java (2018). Websocket | Технострим

так.

Всем привет. Сейчас будет в. Долинске краткое введение в Socket переключайтесь на ветку лекция 08 сходить погулять со мной 8 сначала.

Спроси будет краткое введение в технологию потом будем вообще практика.

Так вспомним так общую архитектуру нашей игры. У нас есть клиент который написано JavaScript html5 нас есть сервис матчмейкер. Сергей Север — это будет один Server Services not неважно самое главное, что наш клиент будет общаться с нашим серверам с майкером по протоколу как на сегодня в пакет сами реализовывали общение клиента Drom с майкером через http. Но на самом деле не знаю мне всегда. Это хорошее решение общаться почему — это так и, что — это за протокол такой вот сейчас поговорим на первых использовать http, что — это очевидно использовать для общения в приложениях которые постоянно много данных с клиента на сервер сервера на клиент неудобно. Почему Ну во-первых как вспомним — это такой протокол у которого есть клиент какие-нибудь инициатор подключения до сервер, а кто ему отвечает у нас нету никакого механизма ответить обратно сервер не может писать push-уведомления на клиент. Ну протоколе http версия 2 такая возможность отчасти есть, но всё равно — это не тот кто такой придумали для этого. Ладно следующий, что ещё у нас не подходит такой же тебе. Динас Ну как вы знаете. Каждый раз когда мы делаем всё тебе запрос на самом деле скорее всего там были. Нижнем уровне у нас создаётся. Никонова типе соединения — это дополнительно накладные расходы нас рукопожатие более этого у нас в сети передать текстовый протокол http 1.1 опять же в нём большое количество метаданных. Да там хедеры обязательно необязательно написал, что — это тексту протокола с большим количеством метаданных — это тоже влияет на производительность если мы сами хотим например каждые там несколько миллисекунд номер посылать данное с клиента на сервер о том, что наш игрок с кто сейчас каждый секунд. Придётся делать такой подключение — это просто плохо с точки зрения производительности хорошо. Всё теперь не подходит к тебе есть альтернативы собственный протокол websocket vs Socket Data protocol. Что за протокол — это конец. Северной протокол там что-то http Connection protocol Client который не требует подключения к серверу. Чем отличается тоже теперь — это называется full-duplex протокол то есть данные можно послать и с клиента на сервер из сервера на клиент следующее. Это протокол тоже приедешь на уровне. Какие швы следующий довольно важное для производительности. Так, что скорее всего он будет работать поверх 1 типе соединения. То есть как установить соединение и она не будет разорван до тех пор пока вы сделаете — это сами. Ну — это сеть нарушиться например вы не будете тратить большое количество сети для того чтобы прислать мне этот данные для подключения пустынная как общаться поэтому протокол тогда. Посмотрим дальше. Ну вот у него есть такая вообще теперь такой отметка протокола WS wss ответственности стикер версия безопасная версия. Так мы посмотрим история только такого-то на самом деле появился в принципе недавно 2011 году был только станет стандартизирован. Он сейчас поддерживается большинством современных браузеров браузере. Конечно есть. Гигантское количество библиотек которая реализует для общения просто разные приложения из магнита браузере там есть почти во всех современных браузерах, но не во всех не. Например если есть у клиента какая-то старая версия то может не поддерживаться в принципе в этом есть некая обходные пути. Как поддерживать вебсокеты таких систем чуть дальше как поэтому уже поговорили да я всегда — это протокол от таких уровня обычно работа поверхностей мы можем выбирать когда общаюсь по протоколу цепи как мы будем общаться бинарный протокол или текстом протокол поеду чтобы наиболее эффективным поставь мы будем только чистый данных после присоединения будет только чистый данным посмотрим как устанавливается соединение то есть такая особенность у протокола написать потому, что он так адаптирован так скажем для работы в браузерах, что на самом деле он инициализируется как http-запрос сначала происходит найти. Типи запрос типа обогрев после после этого устанавливается соединение. МФ работы подковы писатель. Вот так-то примерно выглядит библиотека которую мы с вами будем использовать для работы с сокетами включена в проект Spring посмотрим мне подключается на как обычно with Great Wall и здесь нас добавилась библиотека spring-boot-starter-web socket. Это всё, что нужно подключить чтобы работать дальше какой интерфейс в библиотеке он в принципе. Довольно простой вообще есть довольно много нюансов того как использовать двигатель. Как правильно. То есть если. Вы подумаете то. Бывает такое, что ваше приложение таймер работает на мобилках и чем особенны мобильное приложение тем, что соединение в нестабильном правильно дача посмотрим на пример того как работает библиотека в. ПТС пример который находится в этом лифте 08 и нас есть пример послание попроще что-нибудь попроще им. Сервер — это обычное приложение 1С точка входа есть in handler. Это примерно тоже самое, что библиотеки для работы с http будет контроллером то место в котором описаны колбеки которые вызываются когда мы обрабатываем websocket соединение. Как как написать такое Hander — это сделал не так наследование от класса. ВПР конкретно потому, что мы хотим обрабатывать текстовое сообщение. Ане бинарных. Хотя могли выбрать это.

0 комментариев
0

Читайте также