Do que preciso?

Considerações

Este é apenas um guia, e considera que você possui conhecimento de Linux e configuração de servidores.

Requisitos

Não é preciso muito pra começar a usar o STB, mas você deve estar atento ao número de usuarios simultaneos, e os horarios de pico. Por hora, vamos focar na instalação básica, e mais a frente vamos dar dicas para escalar para servidores maiores.

Quantos usuarios um servidor desses consegue servir?

Servidor 1
  • Processador: 1 núcleo
  • Memória: 3 GB RAM
  • Armazenamento: 40 GB
  • Transferencia; Ilimitada

A média de uso de memória RAM por cada conexão é de 20 mb. Isso é, a cada usúario o servidor precisa de 20 mb. Dando uma margem de 1 gb para os outros serviços necessários, dos quais falaremos mais adiante, temos 2 gb para o nosso servidor HTTP. Com nossos 2 gb (2048 mb) restantes nós podemos servir: 2048 / 20 = 102 clientes Simultaneamente com uma boa margem de segurança.

A transferencia deve ser preferencialmente ilimitada, pois quando um usuario fizer login, a lista de mídia será baixada, convertida, e servida ao usuario. Uma lista de 3mb é baixada do servidor e depois enviada para o usuario totalizando 6 mb de transferencia. Outras transferencias também são realizadas pelo servidor como EPGs e Sinopses. Acho que você já entendeu até onde isso vai.

O conteudo do streaming/video em si não passam pelo servidor, apenas as listas.

Instalação básico.

Precisamos de 3 serviços para que tudo funcione, e eles são:

Também são necessários PHP e extenções como curl e mysql, para o servidor apache você deve habilitar o modulo rewrite para fazer uso do .htaccess

Configurações

Você deve editar o arquivo index.php na pasta api com informações do banco de dados (não precisa criar as tabelas, apenas crie um banco e um usuario com permissões básicas)

No mesmo arquivo da pasta api, você deve adicionar um servidor principal e os alternativos.

Você deve editar os arquivos *.db da pasta BIND e depois os copiar para a pasta de configuração do bind.

Personalizações

Essas devem ser feitas manualmente nos arquivos css