Das Frontend / Backend Protokoll

Um mit Clients zu kommunizieren, stellt PostgreSQL einen Mechanismus zur Verfügung, das schlichtweg Frontend / Backend Protokoll genannt wird. Dieses Protokoll bietet eine genormte Schnittstelle, die von Clientinterfaces wie JDBC oder der libpq (das ist die C Schnittstelle) genutzt werden.

Das Protokoll ist sehr einfach aufgebaut und enthält keine unnötigen komplexen Elemente. Prinzipiell wird zwischen zwei Arten der Kommunikation unterschieden: Synchron und asynchron. Im synchronen Fall schickt der Client eine Abfrage und erhält in weiterer Folge eine Antwort. Das führt dazu, dass der Client während dem Abarbeiten der Abfrage blockiert ist. Im asynchronen Fall schickt der Client eine Abfrage ab und pollt, um das Ergebnis zu erhalten. Das hat den Vorteil, dass der Client nicht blockiert ist - macht die Kommunikation aber ein wenig aufwändiger und etwas komplexer. In den allermeisten Fällen verwenden Client Libraries den synchronen Fall.

Das Frontend / Backend Protokoll (FE / BE) ist nicht systemabhängig. Es ist daher möglich, von Little Endian Maschinen aus auf Big Endian Server oder umgekehrt zuzugreifen - auch die CPU-Wortlänge (also 32 vs. 64 bit) spielt somit keine Rolle.


Cybertec Schönig & Schönig GmbH
PostgreSQL support, training, consulting
www.postgresql-support.de