Я работал PostgreSQL на Windows Server 2003 без проблем и быстро, так что, чтобы ответить на мой собственный вопрос, кажется, хорошо.
Однако я собираюсь запустить новый проект и рассматриваю возможность использования Linux-бокса, поскольку стабильность и производительность имеют решающее значение. Поскольку PostgreSQL, по-видимому, в основном разрабатывается для дистрибутивов Linux, может быть, лучше придерживаться Linux?
Ответы:
PostgreSQL определенно будет работать быстрее в Linux, чем в Windows (и я говорю это как один из тех, кто написал его для Windows-порта). Он разработан для архитектуры в стиле Unix и реализует эту же архитектуру в Windows, что означает его делает ряд вещей, которые не предназначены для Windows. Это работает отлично, но он не выполняет , а также.
Например, PostgreSQL использует модель «процесс на соединение», а не многопоточность. Windows предназначена для работы с потоками. Если ваше приложение выполняет много подключений и отключений, оно, безусловно, будет работать значительно медленнее в Windows, например.
Есть также некоторые предположения относительно файловой системы, которые не совсем в пользу NTFS.
Одна вещь, о которой вам действительно нужно подумать - если вы работаете в Windows, большинство антивирусных продуктов будут давать сбои при использовании с PostgreSQL, потому что они не используются для такого типа рабочей нагрузки (например, 1000 различных процессов, читающих и записывающих в один и тот же файл). через разные ручки). Это означает, что настоятельно рекомендуется всегда удалять любой антивирус, если это возможно (просто отключить его или исключить процессы / файлы PostgreSQL часто недостаточно). И это не только по причинам производительности, но и стабильности под нагрузкой.
источник
На это трудно ответить: как заметил Кен, Postgres не делает никаких различий между ОС, и он так же стабилен / нестабилен в Windows, как и в Linux.
Единственный реальный ответ на этот вопрос: попробуйте.
Настройте сервер Linux и сервер Windows с одинаковыми спецификациями, используйте одинаковый объем данных на обеих машинах и запустите свои тесты.
PS: у этого есть близкие голоса, потому что это может быть лучше спросить в serverfault
источник
Насколько я понимаю, для того же оборудования вы получите лучшую производительность в Linux, чем в Windows. Кроме того, хотя Postgres работает на Windows, он работает на * nix гораздо дольше. YMMV конечно в зависимости от вашей ситуации.
Действительно хорошим справочником по производительности Postgres является «Высокая производительность PostgreSQL 9.0» ( https://www.packtpub.com/postgresql-9-0-high-performance/book ). Название является немного неправильным, поскольку оно охватывает не только версию 9.0.
источник
AFAIK Postgres не различает, они не наносят ущерб функциям в Windows, или что-то в этом роде. Так что в Postgres нет ничего, что требовало бы Linux.
Возможно, вам лучше спросить о Linux. против Windows как общей серверной платформы.
МНЕНИЕ: Но за мои деньги сервер всегда работает под управлением Linux. Никогда бы не мечтал поставить критически важное серверное программное обеспечение для Windows. Просто мои 2 цента. Конец Мнения.
источник
stability and **performance** are crucial