High availability, load sharing and clustering