2008/3/12 Bruno Simioni <[EMAIL PROTECTED]>:
> Uma camada intermediária entre as requisições (SQL do PHP) e o acesso ao
> banco, que se posicionasse de forma a receber requisições, utilizar uma
> conexão persistida para as queries (através de uma singleton, por exemplo),
> e devolver as respostas, logando as ações de cada usuário que fez a
> requisição.

PHP já tem conexões persistentes. Já vi várias aplicações em PHP mal
escritas que simplesmente não funcionam  quando têm conexões
persistentes habilitadas. Mas isso é um problema da aplicação, não do
PHP ou do banco de dados.

Além das conexões persistentes, há também intermediários como o
pgbouncer, que mantém um pool de conexões persistentes ao banco,
asssim eliminando a necessidade de modificações na aplicação.

Para evitar ir ao banco de dados toda hora para solicitar dados
freqüentes que não mudam, ora a solução é um bom uso de cache. Não é
trabalho do banco de dados adivinhar quais dos seus dados ele deve
fazer cache. Ele tenta, mas obviamente é a um nível bem menos
específico do que você pode criar conhecendo os detalhes e nuances da
sua aplicação.

Existem várias soluções nessa área, o memcache sendo uma que vem à
mente que é bem suportada no PHP.

> Seria uma forma bem viável de resolver o problema da criação de processos do
> postgres, que realmente é grave e inapto pra soluções desse tipo. Envolve um
> overhead desnecessário pra criação de processos que inviabilizaria a
> solução.

Você tem algum conjunto de dados que demonstre que o uso de múltiplo
processos do PostgreSQL é um "problema" e ainda por cima "grave"? Me
desculpe, sem ofensa, mas dizer que o fato de uma aplicação ser
desenhada ao redor do modelo de múltiplos processos é um "problema" é
pura e exclusiva ignorância.

Informe-se antes de fazer afirmações de tamanha grandiosidade e
consequência. Isso simplesmente não é verdade, e há centenas de
aplicações e dados que demonstram isso. Vide o link que postei
anteriormente dos testes da tweakers.net.

Roberto
_______________________________________________
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a