Персональные инструменты
 

Разработка RealTime веб приложений (Никита Грошин, ADD-2011)

Материал из CustisWiki

Перейти к: навигация, поиск

Аннотация

Докладчик
Никита Грошин
  • Суть проблемы
    • Зачем нужен РеалТайм?
    • Где можно и нужно применять подобный подход?
  • Клиент сайд
    • Как скрестить ежа с ужем или веб браузер как терминал реального времении
    • Обзор основных подходов
    • Polling, Long poll, iframe, Flash сокеты, HTML5 WebSocket
  • Сервер сайд
    • Socket соединение как серверный рессурс
    • Обзор готовых решений
    • Caplin, Liberator, Cometd (Python), ErlyComet, GlassFish , Jetty, Lightstreamer, Meteor, Orbited, Persevere, RMDS2Web Server
    • Почему они все унылы?
    • Делаем свой сервер node.js + socket.io
  • Интерактив
    • Тем кто еще не уснул наглядно доказвается приемущество реалтайма на примере интерактивной игры эксперимента

Видео

Скачать
http://ftp.linux.kiev.ua/pub/conference/peers/addconf/2011/2c2-real-time-web-applications-groshin.avs.avi


Для этого доклада нужен подкаст (аудиозапись)?

  •  Да, многое понятно и без видео части, есть смысл его прослушать.
  •  Нет, аудиозапись бесполезна (не понять без видео или вообще мало смысла в докладе).

Презентация

Примечания и отзывы



Очень позабавил утренний доклад Никиты Грошина с сисечным бинго 8) Отличная идея для утреннего доклада на второй день конференции. Не стала отнимать у остальных возможность выиграть утреннюю банку пива, да и сиськами меня не удивить, свои всегда при мне 8) Правда кроме сисек, пива и упоротых технологий из доклада помню только про необходимость посмотреть на Node.js. Но ведь в этом и была суть доклада, да? ©

Самый неординарный докладчик — толстый, в дредах и пьяный (ну, выпил перед докладом пару пива, а может и всю ночь квасил: он перед приездом искал в твиттере собутыльников). Живет и работает в Таиланде. Стас утверждает, что публично в интернетах предлагал на докладе набить ему морду. Выступал очень живо. В рамках доклада слушателям была предложена игра (boobs bingo): видишь сиськи на слайде — кричи «сиськи», получи банку пива.

Суть доклада — кагбэ ликбез по real-time операциям в web-приложениях. Зачем это нужно — ну понятно, трейдинг всякий. Тока зачем это делать через web? — ну наверно бывает удобно. Есть несколько подходов транспортного уровня — какой выбрать? а чтобы везде поддерживалось? На сервере нужно держать много соединений — есть несколько готовых решений, но они чем-то плохи. В итоге остается socket.io (прозрачно объединяет различные транспортные уровни, сам выбирая подходящий) + node.js (отлично масштабируемое сервер на JavaScript). Чем Никита сам пользуется и другим желает.

Очень харизматичный докладчик, так что успех рассказа был обеспечен. Сама технология: выполнение JS на сервере (к слову о CouchDB, это явно становится трендом). С возможностью в реалтайме обращаться к браузеру клиента. Давно про это слышал, теперь понял как оно работает. Не совсем понятна ниша применения, нужно будет еще почитать.

Пузатый и дредастый докладчик рассказывал про связку socket.io + Node.js. Пришел не к началу, поэтому прикладную задачу не понял.

Веб-разработка это совсем не мое, но теперь буду знать куда смотреть, если потребуется сделать нагруженное веб-приложения.

На клиенте:

  • socket.io, js-библиотека, которая сама умеет выбирать транспорт для эффективных запросов

На сервере

  • Node.js (серверный JavaScript)

Что умеет:

  • Скорость (исполняется на движке google V8)
  • Модульность (есть коннекторы к многим NoSQL базам, например)
  • Closures
  • Неблокирующий ввод-вывод
  • Доказанная надежность (по уверению докладчика)


Как альтернатива:

  • JBoss Netty (Java)
  • Erly Comet (Erlang)
  • Tornado (Python)
  • Coffee Script (код в стиле руби компилируется в JavaScript), вместе с Node.js

Призыв к зрителям!

Мы призываем всех зрителей видеозаписей докладов давать хоть какой-нибудь, желательно конструктивный feedback.

Где? — неважно. В блогах, в форумах, в комментах — пофиг, лишь бы можно было найти, например, поиском по блогам, по ключевому слову «ADD-2011» (ну и/или по названию доклада).

Что-то побольше твиттер-вскрика, хотя бы пару абзацев. Да, иногда краткая характеристика бывает достаточной («маркетинговый булшит», «унылый самопиар» — обычно в адрес «спонсорских докладов»), но это очень, очень редко, а так хочется прочитать что-то большее, чем «сижу на XXX, говорят о YYY».

Что писать? Что хорошо, что плохо («плохо» неудачное слово, скажем, «неправильно на ваш взгляд»), как вы поняли то, что рассказано, как это спроецировалось конкретно на вас — все это фантастически важно и полезно:

  • Другим потенциальным зрителям (смотреть/не смотреть, «правильно ли я понял»).
  • И докладчикам:
    • «Правильно ли меня поняли»,
    • «Что я делал правильно, а что улучшить»
    • Даже критический отзыв лучше, чем никакого!
    • Плюс — это мотивация, это награда за немалый труд многие готовятся долго, раскрывают свой опыт, старательно делают слайды, репетируют выступление — и ради чего? двадцать минут театра перед парой десятков зритетелей и все?
  • Организаторам конференций (этой и других) — они внимательно следят за отзывами, и пытаются понять, кого имеет смысл звать («рубит фишку и жжет!»), а к кому отнестись скептически, и если брать, то, например, «прокачать в части выступлений» — мы, например, старались это делать, итеративно рецензировали слайды, рассылали подборку литературы о правильных слайдах и искусстве выступлений.
  • Безотносительно лично докладчиков — важно понять, исчерпала себя тема или для народа еще остаются откровениями то, что для более пресыщенных инфопотоками людей (а организаторы обычно такие) уже выглядит как «аццкий боян». Ну и вообще — что еще интересно, и что было бы интересно услышать-увидеть-пообщаться на тему о…
  • Ну и кстати, мне тоже важно — вообще имел ли смысл весь этот сыр-бор с сьемкой, видеомонтажем и обработкой и публикацией (это, вообще-то дорогая работа, расценки профессионалов в этой области весьма недетские, при том, что до этого уровня монтажа им, как правило очень далеко), или кроме участников конференции эти темы никому не интересны. Может есть какие-то косяки в видео? или предложения как сделать лучше? — связывайтесь со мной, возможно это можно будет исправить (или хотя бы вырезать). Это кстати относится и к докладчикам — если есть какие-то позорные неудачные моменты, или что-то не нравится — это можно убрать.


Любые правки этой статьи будут перезаписаны при следующем сеансе репликации. Если у вас есть серьезное замечание по тексту статьи, запишите его в раздел «discussion».

Репликация: База Знаний «Заказных Информ Систем» → «Разработка RealTime веб приложений (Никита Грошин, ADD-2011)»