I agree that this is many questions in one. As a start though this is from the Sitecore 6.3 PDF:
Event Queues
To ensure data and cache coherence and support communication between instances in an environment and between CM and CD environments, Sitecore CMS 6.3 maintains event queues as tables in Sitecore databases. Each Sitecore instance accesses one Database Event Queue for each database, and writes database events relevant to the containing database to each queue. Each instance designates one of the Database Event Queues as the System Event Queue, and additionally writes system events to that queue. The System Event Queue contains events related to security, publishing, and other operations. By default, Sitecore manages the System Event Queue in the Core database. Unless
directed otherwise, each instance processes database and system events in all database queues.
More info here: https://sdn.sitecore.net/upload/sitecore6/63/introducing_sitecore_cms_6.3_a4.pdf
There is also some great info on how to enable this and how it works here:
https://sitecorebasics.wordpress.com/2011/03/19/basics-of-sitecore-event-queue/