On Tue, 14 Nov 2006, Bruce Momjian wrote:
Jeff Frost wrote:
On Tue, 14 Nov 2006, Bruce Momjian wrote:
Your description was too detailed, but I took some of your concepts:
<para>
In clustering, each server can accept write requests, and these
write requests are broadcast from the original server to all
other servers before each transaction commits. Heavy write
activity can cause excessive locking, leading to poor performance.
In fact, write performance is often worse than that of a single
server. Read requests can be sent to any server. Clustering
is best for mostly read workloads, though its big advantage is
that any server can accept write requests --- there is no need
to partition workloads between read/write and read-only servers.
</para>
<para>
Clustering is implemented by <productname>Oracle</> in their
<productname><acronym>RAC</></> product. <productname>PostgreSQL</>
does not offer this type of load balancing, though
<productname>PostgreSQL</> two-phase commit (<xref
linkend="sql-prepare-transaction-title"> and <xref linkend=
"sql-commit-prepared-title">) can be used to implement this in
application code or middleware.
</para>
Bruce,
Continuent's uni/cluster middleware product implements this type of
clustering/load balancing. Perhaps it warrants a mention? Not sure how far
we want to get into listing external products.
We had a long discussion about that and felt that recommending
commercial products or even every open source project was too much. The
idea was that we should reference a web page that has them all mentioned,
but no one has set one up yet.
That makes sense, I just hate to see us say something like "Oracle can do
this with RAC but PostgreSQL cannot."
--
Jeff Frost, Owner <[EMAIL PROTECTED]>
Frost Consulting, LLC http://www.frostconsultingllc.com/
Phone: 650-780-7908 FAX: 650-649-1954
---------------------------(end of broadcast)---------------------------
TIP 7: You can help support the PostgreSQL project by donating at
http://www.postgresql.org/about/donate