An AWS region is a distinct geographical region that has AWS infrastucture with separate power sources and internet connectivity.
Availability Zones are isolated data centres within each region and has their own power source and cooling, insulating it from failures within other zones.
While regions communicate through internet, AZs communicate through AWS high speed network.
Important Considerations for Selecting Regions and Availability Zones
Pricing may vary from region to region, but the cost criteria for all services remain same across regions.
There may be compliance reasons such as data protection laws in various countries that may affect your region selection.
Not all services may be available in all regions. Some services are global (e.g. IAM), some are region based (e.g. S3 Bucket) and some allow to select AZ (e.g. EC2 instance).
Communications between regions are done over normal internet, while communication between AZs are done through Amazon's high speed network.
Amazon recommends distributing your servers across different AZs for high availability.
Edge locations are locations that cache and serve data for requests mostly through CloudFront.
Edge locations help in achieving reduced latency. They are usually located in highly populated areas.
Requests going to CloudFront will be routed to the nearest edge location automatically.
AWS usually does not have its own infrastructure at edge locations, but provide edge locations mostly through local ISPs.
Will discuss more when we discuss about CloudFront later.
AWS Regions and Endpoints
To reduce data latency in your applications, most Amazon Web Services offer a regional endpoint to make your requests. An endpoint is a URL that is the entry point for a service.