Кислоты
<<  По химии муравьиная кислота знакомая незнакомая Угольная кислота 9 класс  >>
Особенности применения Websocket на примере работы в ERP
Особенности применения Websocket на примере работы в ERP
Актуальность данных
Актуальность данных
Картинки из презентации «Особенности применения Websocket на примере работы в ERP» к уроку химии на тему «Кислоты»

Автор: Ирина. Чтобы познакомиться с картинкой полного размера, нажмите на её эскиз. Чтобы можно было использовать все картинки для урока химии, скачайте бесплатно презентацию «Особенности применения Websocket на примере работы в ERP.ppt» со всеми картинками в zip-архиве размером 129 КБ.

Особенности применения Websocket на примере работы в ERP

содержание презентации «Особенности применения Websocket на примере работы в ERP.ppt»
Сл Текст Сл Текст
1Особенности применения Websocket на 18указании длины рассматривается по частям:
примере работы в ERP. Фролов Александр самый старший бит указывает является ли
14.06.2013г. этот байт последним (0) либо же за ним
2Актуальность данных. Данные на есть другие (1), а младшие 7 битов
странице — устаревают; основании содержат собственно данные. 1. 0. 0. 0. 0.
устаревших данных можно принять не верное 1. 1. 0. 1. 0. 0. 0. 1. 1. 1. 0. 0. 0. 0.
решение; Не верное решение ведёт в 1. 0. 1. 1. 0.
конечном счёте к финансовым потерям, если 19Какими браузерами поддерживается?
это приложение решает бизнес задачи. Protocol. IE. FF. FF (android). Chrome.
Выход? Нужно получать данные от сервера в Safari. Opera. hixie-75. 4. 5.0.0.
момент их поступления на сервер; Нужно hixie-76 hybi-00. 4. 6. 5.0.1. 11. 7
иметь возможность инициировать отправку hybi-07. 6. 8 hybi-10. 7. 7. 14. 13 RFC
данных сервером. 6455. 10. 11. 11. 16. 6. 12.10.
3Как быть, каким способом 20Организации работы WS. Различные
актуализировать данные? Первый тривиальный реализации серверов на многих платформах:
способ — запрашивать каждые n секунд node.js, Pyton, Ruby on Rails, PHP... Из
сервер о новых данных. При этом чем чаще — PHP Open Source проектов можно отметить
тем быстрее получаем обновление данных. довольно динамично развивающийся проект
Простой подсчёт показывает: в ERP системе phpDeamon. Но это универсальный всеядный
за сутки будет генерировать 2,5 миллиона комбайн. Но в реальности используем более
запросов. КПД от работы системы — легкую реализацию, которую проще проверить
стремится к нулю. и адаптировать под свои нужды.
4Ограничения: согласно спецификации (https://github.com/lemmingzshadow/php-web
HTTP 1.1 браузер не должен иметь более ocket).
двух соединений одновременно. Если открыто 21Принцип работы WS сервера на php. -
более двух страниц в браузере очень Запуск в цикле опроса открытых портов.
вероятны случаи, когда запросы на While(true) { foreach($sockets as $socket)
обновление не проходят; Применение других { // read socket $data =
способов, отличных от простых запросов на readbuffer($socket);
обновления так же требует учитывать это process_data($cleint[(int)$socket],
обстоятельство; $data); } }.
5Comet (программирование). Модели 22W S. К. Обычная схема работы. Бд.
работы веб приложений, при которых 23Кn. W S S. К2. W S. К1. Схема быстрого
постоянное HTTP соединение позволяет внедрения WS. Бд. Mess — сообщение Об
веб-серверу отправлять (push) данные изменениях, для всех одно и тоже,
браузеру без дополнительного запроса со фильтрация «нужен / не нужен» или на
стороны браузера, называют Comet стороне клиента или решение об Отправки
технологиями, а приложения, которые mess принимает WSS исходя из типа страницы
реализуют такую модель — comet на строне клиента. mess. mess. mess. mess.
приложениями. Благодаря comet-приложениям Ajax.
клиент в режиме реального времени может 24Кn. W S S. К2. W S. К1. Продвинутая
взаимодействовать с сервером, опираясь на схема использования WS. Бд. mn. mess —
постоянное или long polling соединение сообщение об изменениях M1, M2, … Mn —
HTTP. подготовленные для каждого типа страниц
6Реализации comet технологий. сообщения, включающие все специфические
Потоковые: открывается постоянное данные. Не достающие данные добираются из
соединение между клиентом и сервером. Long БД. m2. mess. m1. Ajax.
polling (длительное соединения): 25Кn. W S S. К2. W S. К1. Полная
открывается соединение и ожидается ответ интеграция WS. Бд. mn. m2. m0. m1. HTTP.
по таймауту или до таймаута, после чего 26Конкурирующие запросы. С ростом
соединение переоткрывается. количества запросов может быть ситуация,
7Потоковые: открывается постоянное когда данные более свежего запроса придут
соединение между клиентом и сервером. позже, чем данные более старого запроса.
Скрытый IFRAME Постоянно в IFRAME шлются Необходимо посылать с данными на изменения
данные, например, строки с пустым временные метки, чтобы обеспечить
комментарием, и в нужный момент сервер минимальную защиту от подобных коллизий;
передает javascript строку, которая сразу Так же нужна временная метка о начале
выполняется. Из минусов можно выделить не работы с данными, то есть когда пришли
возможность нормальной обработки ошибок и данные, которые отредактировали; Две
не возможность отследить реакцию на временные метки позволяют сравнить данные,
передачу данных со стороны сервера. которые меняем с данными которые находятся
8XMLHttpRequest. У ряда браузеров (FF, в БД, а так же их «свежесть» и в случае
WebKit, IE10) имеется возможность получать чего не допустить перезатирания новых
multipart response — ответ порциями, тем данных — старыми. При этом клиенту,
самым очередную порцию отсылаем тогда, приславшего конфликтный запрос —
когда нужно серверу. Особого отправлять уведомление с просьбой проверки
распространения не получило. данных + обновленные данные.
9Ajax с long polling. Браузер делает 27Стоит ли использовать более серьёзный
Ajax запрос на сервер, который остается подход? Можно использовать систему
открытым, пока сервер не отправит данные. разделения ресурсов, флаги, семафоры...
По таймауту пересоздается соединение. Внедрение связано со значительным
10Script tag long polling. Подгружается усложнением всей системы; От пользователе
динамически javascript файлы, в которых потребуются дополнительные усилия в
передаются данные по мере их поступления. работе; Необходимо четко очень реальную
Как только один файл «загрузился», необходимость внедрения.
подгружается следующий файл. 28Пишите логи. В обязательном порядке
11WebSocket. WebSocket - веб-технология, записываете в логах обо всех изменениях в
обеспечивает полнодуплексный канал связи системе: кто когда что старое значение
через одно соединение TCP. Протокол новое значение.
WebSocket был стандартизирован IETF RFC 29Собирайте мусор в WSS. WSS
6455 в 2011 году. WebSocket соответствует представляет собой один работающий процесс
стандартам W3C. по приему, обработке и отправке сообщений.
12Базовое использование WebSocket на Со временем не используемые переменные
стороне клиента: <Script> ws = new постепенно забивают память вплоть
websocket("ws://site.Com/ws"); максимально возможного лимита для php
// обработка события, при установки процесса. Чтобы этого не случилось
соединения ws.Onopen = function() { необходимо подчищать за собой переменные и
alert("connection opened...") }; объекты (gc_enble(); gc_collect_cycles();
// Обработка события, при закрытии gc_disable; ).
соединения ws.Onclose = function() { 30Перегружайте WSS иногда :).
alert("connection closed...") }; gc_collect_cycles() помогает, но объем
// Обработка события получения сообщение используемой памяти всё равно может
через веб-сокет ws.Onmessage = function(e) неуклонно расти. Поэтому проверяйте объём
{ alert(e.Data); }; </script> используемой памяти, и в случае превышения
13Немного деталей :). Процесс открытия определенного лимита инициируйте
WS выглядит на данный момент следующим перезагрузку WSS.
образом. 31Пример упрощенного кода ядра WSS.
14В начале идёт HTTP-запрос: GET /ws $Flag = true; while ($flag) { if (time() -
HTTP/1.1 Host: site.com Upgrade: websocket $time_last_check >= 60 сек) { if
Connection: Upgrade Sec-WebSocket-Key: (get_file_flag() == 1) { $flag = false; }
x3JJHMbDL1EzLkh9GBhXDw== else if (memory_get_peak_usage()/1024/1024
Sec-WebSocket-Protocol: chat >= ini_get("memory_limit") *
Sec-WebSocket-Version: 13 Origin: 0.8) { send_notice();
http://site.com. set_timer_to_reboot(); $flag = false(); }
15Если сервер поддерживает WS, то то } }.
ответ будет: HTTP/1.1 101 Switching 32Возможности «виртуального» кэша. Так
Protocols Upgrade: websocket Connection: как процесс обрабатывающий сообщения один,
Upgrade Sec-WebSocket-Accept: то и сохраняя данные в определенный
HSmrc0sMlYUkAGmm5OPpG2HaGWk= массив/объект можно получить нечто на
Sec-WebSocket-Protocol: chat. подобие кэша с актуальными данными;
16Sec-WebSocket-Key содержит случайное Следует учитывать ограничения на объём
значение, закодированное Base64. памяти и не забывать подчищать такой кэш.
Sec-WebSocket-Accept вычисляется путём Определив экспериментальным путем суточные
конкатенации Sec-WebSocket-Key и «magic потребности ERP системы были увеличены
string»: лимиты с 128Мб, до 1Гб памяти для WSS, тем
258EAFA5-E914-47DA-95CA-C5AB0DC85B11 самым все необходимые для работы данные в
$SecWebSocketAccept = результате находились в кэше. В PHP 5.3.0
base64_encode(sha1($SecWebSocketKey . можно указывать в php.ini memory_limit 1G.
'258EAFA5-E914-47DA-95CA-C5AB0DC85B11', 33Ссылки на ресурсы, статьи, GitHub.
true)); Существует две модификации http://en.wikipedia.org/wiki/Comet_(progra
протокола: ws:// и wss://, это по смыслу ming)
почти как http:// и https://, то есть http://en.wikipedia.org/wiki/WebSocket
wss:// - шифрованное соединение. https://github.com/nicokaiser/php-websocke
17Формат передаваемых текстовых данных. http://nginx.com/news/nginx-websockets.ht
0x00. <Строка в кодировке UTF-8> l
0xFF. просто строка текста — https://github.com/disconnect/apache-webso
последовательность байт, к которой спереди ket https://github.com/kakserpom/phpdaemon
приставлен нулевой байт 0x00, а в конце — https://github.com/nicokaiser/php-websocke
0xFF. И все — никаких заголовков, https://github.com/hoaproject/Websocket
метаданных. https://github.com/lemmingzshadow/php-webs
18Передача и бинарных данных. 0x80. cket.
<Длина - один или несколько байт> 34Докладчик: Фролов Александр
<Тело сообщения> Длина записывается alex.frolov@gmail.com @alex__frolov
по следующим правилам: Каждый байт в https://www.facebook.com/frolov.alexander.
Особенности применения Websocket на примере работы в ERP.ppt
http://900igr.net/kartinka/khimija/osobennosti-primenenija-websocket-na-primere-raboty-v-erp-247868.html
cсылка на страницу

Особенности применения Websocket на примере работы в ERP

другие презентации на тему «Особенности применения Websocket на примере работы в ERP»

«Применение воды» - Вода в промышленности. Молекула воды Н2О состоит из двух атомов водорода и одного атома кислорода. Применение воды в промышленности. Воды гидросферы используются, как. 1)сырьё 2)теплоноситель 3)транспортная система 4)растворитель 5)среда, в которую удаляются всевозможные отходы.

«Применение спиртов» - Условия реакции: катализатор — ацетат марганца (II) Mn(CH3COO)2 температура 50-60 °С: 2 CH3CHO + O2 ? 2 CH3COOH. Применение спиртов в промышленности. Метод разработан в 1932 г. Академиком Лебедевым. Получение уксусной кислоты. Условия протекания реакции: кат Al2O3, ZnO, 425oC. Применение спиртов. Производство каучука.

«Применение компьютерных технологий» - Поисково-исследовательский. Причем излучение идет не только от экрана, но и от задней и боковых стенок монитора. Внешний козырек. Основные направления использования ИКТ в образовании. Профессиональная подготовка учителя. Разнообразие форм использования (в сочетании с обоснованностью выбора) Подготовка учащегося к использованию.

«Применение металлов» - Мягкий, чрезвычайно пластичный металл. Лёгкий, серебристо- белый металл. Применение металлов МАГНИЙ. Серебро распространено в природе значительно меньше, чем медь(около 10-5 вес .%). И сегодня металлы применяют повсюду- от швейных иголок до мостов. Бронзовое зеркало из Египта. Очень тяжёлый. Обладает магнитными свойствами.

«Применение кислорода» - Врач беседует с больным по телефону. Вне земной атмосферы человек вынужден брать с собой запас кислорода. Пожарный с автономным дыхательным аппаратом. Применение кислорода. Главными потребителями кислорода являются энергетика, металлургия и химическая промышленность. Кислород необходим практически всем живым существам.

«Интерференция света и её применение» - Предельное расстояние между щелями: - Радиус m-го темного кольца в отраженном свете (и светлого – в прошедшем). Размытие интерференционной картины. Полосы локализованы в бесконечности, имеют вид колец. 2. Получение диэлектрических зеркал. 1. Цвета тонких пленок – интерференция при освещении пленки широким пучком.

Кислоты

15 презентаций о кислотах
Урок

Химия

65 тем
Картинки
900igr.net > Презентации по химии > Кислоты > Особенности применения Websocket на примере работы в ERP