Client request reflectoring module
Part of Dockerized Distributed Streaming System
This repo is the base for an automated docker build and is part of a dockerized distributed streaming system consisting of following elements:
The running docker container provides a service for very special streaming purposes usable for a distributed architecture.
It presumably will not fit for you, but it is possible to tune it. If you need some additional information, please do not hesitate to ask.
This xxaxxelxx/xx_reflector repo is an essential part of a complex compound used for streaming.
In case of player machines overload this module reflects incoming client requests back to the loadbalancer.
In standard working mode it redirects all incoming port 80 requests to the local icecast port 8000.
In case of overload it modifies the players iptables to redirect all incoming port 8000 requests to the local reflector (port 80). The reflector redirects them to the loadbalancer for furter distribution.
It prevents direct access from clients avoiding the loadbalancer (if the playing machine is to busy).
$ docker run -d --name reflector -e TARGET_SERVER=AUTOMATICALLY_DETECTED -e TARGET_PORT=8000 -p 80:80 --restart=always xxaxxelxx/xx_reflector