Estou executando o PostgreSQL no Windows Server 2003 sem problemas e é rápido, então, para responder à minha própria pergunta, parece bom.
No entanto, estou prestes a lançar um novo projeto e estou pensando em usar uma caixa Linux, pois a estabilidade e o desempenho são cruciais. Como o PostgreSQL parece ser desenvolvido principalmente nas distribuições Linux, talvez seja melhor ficar com o Linux?
Respostas:
O PostgreSQL definitivamente funcionará mais rápido no Linux do que no Windows (e eu digo isso como um dos caras que escreveu a porta do Windows ..) Ele foi projetado para uma arquitetura de estilo Unix e implementa essa mesma arquitetura no Windows, o que significa que faz várias coisas que o Windows não foi projetado para fazer bem. Ele funciona bem, mas não funcionar tão bem.
Por exemplo, o PostgreSQL usa um modelo de processo por conexão, e não o threading. O Windows foi projetado para realizar threads. Se o seu aplicativo conectar e desconectar bastante, ele definitivamente será executado significativamente mais lento no Windows, por exemplo.
Também existem algumas suposições no sistema de arquivos que não favorecem exatamente o NTFS.
A única coisa em que você realmente precisa pensar - se você estiver no Windows, a maioria dos produtos antivírus ocorrerá quando usados com o PostgreSQL, porque não estão acostumados a esse tipo de carga de trabalho (como 1000 processos diferentes de leitura e gravação no mesmo arquivo) através de alças diferentes). Isso significa que a forte recomendação é sempre desinstalar qualquer antivírus, se possível (apenas desativá-lo ou excluir os processos / arquivos do PostgreSQL geralmente não é suficiente). E isso não é apenas por razões de desempenho, mas também estabilidade sob carga.
fonte
É difícil responder: como Ken observou, o Postgres não faz nenhuma diferença entre o sistema operacional e é tão estável / instável no Windows quanto no Linux.
A única resposta real para essa pergunta é: tente.
Configure um servidor Linux e um servidor Windows com as mesmas especificações, use a mesma quantidade de dados em ambas as máquinas e execute seus testes.
PS: Isso tem votos apertados, porque pode ser melhor perguntar em serverfault
fonte
Entendo que, para o mesmo hardware, você obterá melhor desempenho no Linux, em oposição ao Windows. Além disso, embora o Postgres seja executado no Windows, ele está sendo executado no * nix por muito, muito mais tempo. YMMV, é claro, dependendo da sua situação.
Uma referência realmente boa sobre o desempenho do Postgres é "PostgreSQL 9.0 High Performance" ( https://www.packtpub.com/postgresql-9-0-high-performance/book ). O título é um pouco impróprio, pois abrange mais do que apenas a versão 9.0.
fonte
O AFAIK Postgres não discrimina, eles não prejudicam os recursos do Windows ou algo assim. Portanto, não há nada no Postgres que exija Linux.
Você pode estar melhor perguntando geralmente sobre o Linux. vs. Windows como uma plataforma geral de servidor.
PARECER: Mas, para o meu dinheiro, um servidor sempre executa o Linux. Nunca sonharia em colocar software de servidor de missão crítica no Windows. Apenas meus 2 centavos. Fim de Opinião.
fonte
stability and **performance** are crucial