Skip site navigation (1) Skip section navigation (2)

Peripheral Links

Header And Logo

PostgreSQL
| The world's most advanced open source database.

Site Navigation

Search archives
  Advanced Search

Forking vs. Threading


  • From: "Bryan Encina" <bryan(dot)encina(at)valleypres(dot)org>
  • To: <pgsql-advocacy(at)postgresql(dot)org>
  • Subject: Forking vs. Threading
  • Date: Tue, 16 Mar 2004 12:26:02 -0800
  • Message-id: <001701c40b94$e6a3db20$931f10ac@AT10111> <text/plain>

Below is a post from the Fedora mailing list as to why one of the users
recommends Firebird over PostgreSQL (this thread came up because of
questions regarding MySQL licensing) and I was wondering if someone from
pgsql advocacy had any comments on this or would like to respond.

Sorry for top posting, but I didn't want to ruin any formatting.

-b

--------------------------------
I like PostgreSQL as far as it's simplicity and things go.  It's nice,
and there are some good front ends for it.  The one complaint I have
with Postgres is that it forks.

MySQL and Firebird use threads and Postgres forks.  Forking is ok,
unless you have many database connections.  The more connections the
more processes.  I noticed while profiling an application that every
connection alone was taking over 1MB of memory.  This based on the
process per connection gripe I have.

So, Postgres, sure I like it, but as far as a major DBMS goes, I think
it is limited by it's memory usage.  That's just my opinion on the
matter.  However, it is a fact that it forks (forking takes more time
and more resources than threading).  One benefit in forking is the same
reason Apache forks( memory leaks can be minimized).  However, I think
if a DBMS has that bad of a memory leak....I won't use it.

I like to advocate Firebird as much as possible.  It runs on many
platforms and seems to be pretty scalable as far as connections and
usage goes, and it has a very flexible license as well.

I like all three mentioned DBMS, just different reasons for using them
at different times.

Wade




Home | Main Index | Thread Index

Privacy Policy | About PostgreSQL
Copyright © 1996 – 2012 PostgreSQL Global Development Group