Главная
Блог разработчиков phpBB
 
+ 17 предустановленных модов
+ SEO-оптимизация форума
+ авторизация через соц. сети
+ защита от спама

Тысяча и одна gif

Anna | 29.05.2014 | нет комментариев
Всем здравствуй!
Хотелось бы рассказать вам историю создания одного простенького развлекательного обслуживания по записи gif’ок с веб-камеры при помощи HTML5 и JS. О том как решение на коленке на базе опенсорсных решений в одночасье произвело пускай хоть и небольшой, но всплеск популярности волны от которого теснее на протяжении полугода приносят малое число посетителей которым пригоден данный сервис.

А началось все легко

В конце лета обыкновенным рабочим днем бороздя просторы GitHub я наткнулся на достаточно увлекательный скрипт (facetogif) на нативном JS и HTML5 дозволяющий записывать ролики с веб-камеры в gif-анимацию. Была приложена даже рабочая демка заливающая готовые ролики на сервис imgur либо разрешающая сберечь их сразу на жестком диске.
Эта идея показалась мне дюже увлекательной и я решил с небольшими переделками реализовать ее в виде независимого обслуживания.
Сказано — сделано. В тот же вечер я форкнул репозиторий, зарегистрировал домен «вгиф.рф», поднял VPS (самый недорогой тариф за 5$) на DigitalOcean и написал примитивный скрипт на php складирующий ролики прямо там на сервере.
Для экономии источников на сервер установил только Nginx и PHP-FPM.


первая версия сайта

На следующее утро я поделился ссылкой на новоявленный сервис друзьям на одном закрытом сообществе. И сервис встретили отлично =) Понемногу в перерывах между работой я занялся небольшими доделками — добавил кнопки шаринга в VK и Twitter, а также подредактировал js Дабы дозволено было делать ролики только одного размера (для унификации). Ночью того же дня осознал что домен в зоне рф это достаточно плохая идея и зарегистрировал больше прекрасный и увлекательный домен togif.me, на котором сервис и по сей день.
Наступила долгожданная суббота и я с самого утра решил заняться сайтом. Для начала сделал огромный и прекрасный мануал с картинками и собой в основной роли, а после этого выложил ее на развлекательном сайте Pikabu и стал ожидать минусов (там рейтинговая система схожая с Reddit и Прогром). И здесь стали возникать один за одним комментарии, с минусами совместно пошли и плюсы, а после этого теснее я подметил что свободное место на VPS стало понемногу уменьшаться. Поздно спохватился с прикручиванием Яндекс.Метрики. Прикрученная поздно вечером она показала около 700 уникальных посетителей. В то время к посту на Пикабу было теснее около 500 комментариев. Ну а после этого кто-то добродушный выложил ссылку на сервис в посте на Joyreactor и посещаемость увеличилась опять! В воскресенье счетчик метрики застыл на отметке в 8 с лишним тысяч посетителей и 12 тысяч просмотров!

Технические подробности

И здесь я осознал что допустил одну неприятную ошибку. Ролик дозволено было скачать либо загрузить, но при загрузке пользователю выдавалась только тоскливая прямая ссылка на gif-файл. Не хватало каталога загруженных роликов Дабы дозволено было не только записать свой, но и посмотреть на других посетителей сайта!
Настала пора переписывать “сервис” тот, что состоял из 1 неподвижной html-страницы, 1 опенсорсного js и скрипта upload.php.

Вариант 1

Так как поток посетителей не прерывался, а каталог хотелось тут и теперь то я накидал простенькую схему БД MySQL, подключил Idiorm для запросов к БД в жанре ООП, написал простенькие роутинги для отображения страниц каталога и самих картинок и еще добавил Disqus для вероятности комментирования всякого ролика.
Где то в тот же период я стал эксперементировать со сжатием роликов и оказалось что imagemagick сжимает всякий из них минимум на 30%, а то и на все 70% =)
Связано это с тем что ролики генерируютя посредством js в браузере когда всякий фрейм снимается отдельно и после этого они складываются в ролик. При этом подходе идентичные части кадров повторяются в всяком фрейме.

За это время число посетителей плавно таяло (с 1000 уников до 300 в течение сентября), но меня это не крепко будоражило т.к. сервис сделан чисто себе в наслаждение и я радовался всякому новому записанному ролику. Дюже отрадно осмысливать что сделал пускай что-то дюже пр_lqvmk!li>Запуск обслуживания — 22.08.13

  • Трафик за данный период — ~1Tb
  • Загружено роликов — ~15000
  • Уникальных посетителей — ~80 000

Итоги:

  • Для каких то тяжелых операций изредка дозволено нагружать клиентские компьютеры и клиентский JS в этом случае является спасительным кругом
  • Для тяжелых операций на сервере уместно использовать что-то больше продуктивное чем php. Картинки скажем оптимизируются утилитой convert
  • Yii показывает достаточно выскокую скорость работы даже без встроенного кеширования, но необходимо непременно включать настройки для production mode
  • Flash понемногу уходит, но есть еще куча устройств и программ которые не поддерживают новомодные фичи HTML5

Вот так применяя опенсорс-решения дозволено сделать достаточно увлекательный и пригодный людям план тот, что пускай и без выручки, но и без специальных расходов продолжает кого-то радовать.

Источник: programmingmaster.ru

Оставить комментарий
Форум phpBB, русская поддержка форума phpBB
Рейтинг@Mail.ru 2008 - 2017 © BB3x.ru - русская поддержка форума phpBB