Como habilito o aio no nginx no FreeBSD?

2

Eu quero usar o IO assíncrono no nginx no FreeBSD. Eu vejo muita documentação sobre como configurá-lo ou como compilar o nginx com ele.

No entanto, eu já tenho o nginx instalado, então eu preciso recompilar o nginx com o aio ativado. A parte da recompilação é o que eu não sei fazer.

Estou usando a porta nginx (v0.7.67) fornecida com o FreeBSD 8.

Alguém pode me ajudar?

    
por David 08.02.2013 / 09:52

2 respostas

4

Primeiro, você precisa adicionar suporte a AIO ao seu FreeBSD. Você pode usar duas maneiras para fazer isso. 1) Adicione "opções VFS_AIO" e reconstrua o kernel. 2) Carrega AIO dinamicamente via módulo de kernel carregável: kldload aio

Adicione estas linhas à configuração depois disso:

location /video/ {
    sendfile       off;
    aio            on;
    output_buffers 1 64k;
}

Você pode usar o sendfile para o AIO:

location /video/ {
    sendfile       on;
    tcp_nopush     on;
    aio            sendfile;
}

Ambas as variantes funcionarão.

    
por 08.02.2013 / 10:11
0

A maneira mais fácil de ativar o suporte a aio do arquivo nginx no FreeBSD é instalar o nginx através da árvore de portes e apenas selecionar a opção FILE_AIO na caixa de diálogo.

portsnap fetch extract
cd /usr/ports/www/nginx
make install clean

Mas se você quiser compilar você mesmo, faça o download da fonte, extraia-a e, em seguida:

./configure --with-file-aio
make install

(Você precisa rodar ambos portsnap e make install como root!)

    
por 07.06.2013 / 22:01

Tags