

 AWS SDK untuk Java 1.x mencapai end-of-support pada 31 Desember 2025. Kami menyarankan Anda bermigrasi ke [AWS SDK for Java 2.x](https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/home.html)untuk terus menerima fitur baru, peningkatan ketersediaan, dan pembaruan keamanan.

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Wilayah AWS Seleksi
<a name="java-dg-region-selection"></a>

Wilayah memungkinkan Anda mengakses AWS layanan yang secara fisik berada di wilayah geografis tertentu. Ini dapat berguna baik untuk redundansi dan untuk menjaga data dan aplikasi Anda berjalan dekat dengan tempat Anda dan pengguna Anda akan mengaksesnya.

## Memeriksa Ketersediaan Layanan di Wilayah
<a name="region-selection-query-service"></a>

Untuk melihat apakah tertentu Layanan AWS tersedia di suatu wilayah, gunakan `isServiceSupported` metode di wilayah yang ingin Anda gunakan.

```
Region.getRegion(Regions.US_WEST_2)
    .isServiceSupported(AmazonDynamoDB.ENDPOINT_PREFIX);
```

Lihat dokumentasi kelas [Regions](https://docs.aws.amazon.com/sdk-for-java/v1/reference/com/amazonaws/regions/Regions.html) untuk wilayah yang dapat Anda tentukan, dan gunakan awalan titik akhir layanan untuk melakukan kueri. Setiap awalan titik akhir layanan didefinisikan dalam antarmuka layanan. [Misalnya, awalan DynamoDB endpoint didefinisikan dalam AmazonDynamo DB.](https://docs.aws.amazon.com/sdk-for-java/v1/reference/com/amazonaws/services/dynamodbv2/AmazonDynamoDB.html)

## Memilih Wilayah
<a name="region-selection-choose-region"></a>

Dimulai dengan versi 1.4 AWS SDK untuk Java, Anda dapat menentukan nama wilayah dan SDK akan secara otomatis memilih titik akhir yang sesuai untuk Anda. Untuk memilih endpoint sendiri, lihat [Memilih Endpoint Spesifik](#region-selection-choose-endpoint).

Untuk menetapkan wilayah secara eksplisit, kami sarankan Anda menggunakan enum [Regions](https://docs.aws.amazon.com/sdk-for-java/v1/reference/com/amazonaws/regions/Regions.html). Ini adalah enumerasi dari semua wilayah yang tersedia untuk umum. Untuk membuat klien dengan wilayah dari enum, gunakan kode berikut.

```
AmazonEC2 ec2 = AmazonEC2ClientBuilder.standard()
                    .withRegion(Regions.US_WEST_2)
                    .build();
```

Jika wilayah yang Anda coba gunakan tidak ada di `Regions` enum, Anda dapat mengatur wilayah menggunakan *string* yang mewakili nama wilayah.

```
AmazonEC2 ec2 = AmazonEC2ClientBuilder.standard()
                    .withRegion("{region_api_default}")
                    .build();
```

**catatan**  
Setelah Anda membangun klien dengan pembangun, itu *tidak dapat diubah* dan wilayah *tidak dapat diubah*. Jika Anda bekerja dengan beberapa Wilayah AWS untuk layanan yang sama, Anda harus membuat beberapa klien—satu per wilayah.

## Memilih Endpoint Tertentu
<a name="region-selection-choose-endpoint"></a>

Setiap AWS klien dapat dikonfigurasi untuk menggunakan *titik akhir tertentu* dalam suatu wilayah dengan memanggil `withEndpointConfiguration` metode saat membuat klien.

Misalnya, untuk mengkonfigurasi Amazon S3 klien untuk menggunakan Wilayah Eropa (Irlandia), gunakan kode berikut.

```
AmazonS3 s3 = AmazonS3ClientBuilder.standard()
     .withEndpointConfiguration(new EndpointConfiguration(
          "https://s3.eu-west-1.amazonaws.com",
          "eu-west-1"))
     .withCredentials(CREDENTIALS_PROVIDER)
     .build();
```

Lihat [Wilayah dan Titik Akhir](https://docs.aws.amazon.com/general/latest/gr/rande.html) untuk daftar wilayah saat ini dan titik akhir yang sesuai untuk semua AWS layanan.

## Secara Otomatis Menentukan Wilayah dari Lingkungan
<a name="automatically-determine-the-aws-region-from-the-environment"></a>

**penting**  
Bagian ini hanya berlaku ketika menggunakan [pembuat klien](creating-clients.md) untuk mengakses AWS layanan. AWS klien yang dibuat dengan menggunakan konstruktor klien tidak akan secara otomatis menentukan wilayah dari lingkungan dan akan, sebagai gantinya, menggunakan wilayah SDK *default* ()USEast1.

Saat menjalankan on Amazon EC2 atau Lambda, Anda mungkin ingin mengonfigurasi klien untuk menggunakan wilayah yang sama dengan tempat kode Anda berjalan. Ini memisahkan kode Anda dari lingkungan tempat ia berjalan dan membuatnya lebih mudah untuk menerapkan aplikasi Anda ke beberapa wilayah untuk latensi atau redundansi yang lebih rendah.

 *Anda harus menggunakan pembuat klien agar SDK secara otomatis mendeteksi wilayah tempat kode Anda berjalan.* 

Untuk menggunakan rantai credential/region penyedia default untuk menentukan wilayah dari lingkungan, gunakan `defaultClient` metode pembuat klien.

```
AmazonEC2 ec2 = AmazonEC2ClientBuilder.defaultClient();
```

Ini sama dengan menggunakan `standard` diikuti oleh`build`.

```
AmazonEC2 ec2 = AmazonEC2ClientBuilder.standard()
                    .build();
```

Jika Anda tidak secara eksplisit menyetel wilayah menggunakan `withRegion` metode, SDK akan berkonsultasi dengan rantai penyedia wilayah default untuk mencoba dan menentukan wilayah yang akan digunakan.

### Rantai Penyedia Wilayah Default
<a name="default-region-provider-chain"></a>

 **Berikut ini adalah proses pencarian wilayah:** 

1. Wilayah eksplisit apa pun yang disetel dengan menggunakan `withRegion` atau `setRegion` pada pembuat itu sendiri lebih diutamakan daripada yang lain.

1. Variabel `AWS_REGION` lingkungan diperiksa. Jika disetel, wilayah itu digunakan untuk mengkonfigurasi klien.
**catatan**  
Variabel lingkungan ini diatur oleh Lambda wadah.

1. SDK memeriksa file konfigurasi AWS bersama (biasanya terletak di`~/.aws/config`). Jika properti *region* ada, SDK menggunakannya.
   + Variabel `AWS_CONFIG_FILE` lingkungan dapat digunakan untuk menyesuaikan lokasi file konfigurasi bersama.
   + Variabel `AWS_PROFILE` lingkungan atau properti `aws.profile` sistem dapat digunakan untuk menyesuaikan profil yang dimuat oleh SDK.

1. SDK mencoba menggunakan layanan metadata Amazon EC2 instance untuk menentukan wilayah instance yang sedang berjalan. Amazon EC2 

1. Jika SDK masih belum menemukan wilayah pada saat ini, pembuatan klien gagal dengan pengecualian.

Saat mengembangkan AWS aplikasi, pendekatan umum adalah dengan menggunakan *file konfigurasi bersama* (dijelaskan dalam [Menggunakan Rantai Penyedia Kredensyal Default](credentials.md#credentials-default)) untuk mengatur wilayah untuk pengembangan lokal, dan mengandalkan rantai penyedia wilayah default untuk menentukan wilayah saat berjalan pada AWS infrastruktur. Ini sangat menyederhanakan pembuatan klien dan membuat aplikasi Anda portabel.