Количественная оценка потокового видео
Я разрабатываю приложение PHP, которое будет взимать плату с пользователей за видео, которые они смотрят. Бизнес-модель "все платят за то, сколько она смотрит". Для этого мне нужно;
- Реализуйте безопасный видео доступ (FLV). (Авторизованные сессии получат доступ)
Подсчитайте, сколько видео (FLV) данных отправляется с сервера.
Тривиальным решением для этого является чтение FLV с помощью PHP ("fread") и отправка его клиентскому чанку с помощью chunk (просто "echo"). Однако у меня есть реальные проблемы с производительностью этого метода, потому что сервер приложений имеет 1,7 ГБ памяти и только одно ядро.
В скором времени мы ожидаем получить большое количество показов, однако мы хотели бы обновить оборудование как можно позже. Вот почему я хочу реализовать требование с минимальными издержками наиболее эффективным способом.
Я не привязан к веб-серверу. Я предпочитаю Apache 2.2, однако lighttpd также может быть развернут, если он предлагает функцию для реализации.
Любая идея приветствуется.
Спасибо!
3 ответа
Таким образом, чтобы подвести итог и для дальнейшего использования, я решил использовать метод php fread, так как не предлагается удовлетворительная альтернатива.
Спасибо всем, кто внес свой вклад.
Почему бы не использовать некоторые видеопотоковые серверы, такие как Red5, я уверен, что у них есть триггеры, которые могут выполнять запись статистики в БД или что-то подобное.
Еще одним преимуществом будет то, что пользователь может пропустить вперед в видео.
Решение PHP fread выглядит, как способ, но с учетом ограничений сервера, я думаю, вам нужно настроить флеш-плеер. Флэш-плеер может отправлять серверные сообщения в зависимости от того, сколько видео было воспроизведено. Об этом можно подумать. Взгляните на JW FLV Media Player, настройка и интеграция Javascript позволит вам отправлять xmlhttprequests на сервер.