quarta-feira, 3 de setembro de 2008

Processos E Threads

Uma das vantagens do compartilhamento de recursos utilizando threads e evitar a ociosidade daqueles processos que são alocados por instruções de aplicativos de baixo consumo de recursos. Além de evitar o esgotamento de recursos de hardware.

Sou DBA Oracle. Em nosso datacenter temos alguns serviços de banco de dados que são configurados para que várias sessões de banco utilizem um único processo. Normalmente temos 80 processos do sistema operacional atendendo milhares de conexões de banco.

Se tivessemos que trabalhar no modo conexão dedicada, ou seja: um processo para cada conexão de banco, então teriamos alocar uma quantidade muito maior de recursos de hardware para atender a todas as requisições de banco.

Assuma que um banco de dados seja utilizado por uma central de telemarketing, a qual possui 1000 atendentes. Em média, cada atendente gasta 90% do tempo falando com os clientes e apenas 10% do tempo consultando e efetuando modificações na base de dados. Para garantir um bom desempenho do aplicativo sem desperdicio de recursos, o DBA configura o banco para trabalhar com apenas 100 processos do sistema operacional.