V2.0 SDK kullanarak bir OpenAPI işlemi çağırdığınızda, hedef Alibaba Cloud hizmetinin uç noktasını yapılandırmanız gerekir. Bir kaynak oluştururken ağ gecikme süresini azaltmak ve yanıt hızını artırmak için işinize fiziksel olarak en yakın bölgenin uç noktasını seçin. Bir kaynağı sorgularken, güncellerken veya silerken ise kaynağın bulunduğu bölgenin uç noktasını seçin; çünkü kaynak depolama bölgeye özeldir ve bölgeler arası bir işlem başarısız olabilir veya veri tutarlılığı riskleri doğurabilir. Bu konuda, V2.0 SDK'da uç noktaların nasıl yapılandırılacağı açıklanmaktadır.
Uç nokta türleri
Uç noktalar genel uç noktalar ve VPC uç noktaları olmak üzere iki kategoriye ayrılır. İşiniz ECS veya ACK gibi bir VPC içinde dağıtılmışsa, o VPC'deki bulut kaynaklarına bir VPC uç noktası üzerinden erişebilirsiniz. VPC uç noktaları güvenliği artırır ve ağ gecikme süresini azaltır. Daha fazla bilgi için bkz. Uç noktalar.
Bir uç nokta ayarlayın
V2.0 SDK, bir uç nokta ayarlamak için iki yöntem sunar: bir uç nokta belirtmek veya uç noktayı otomatik olarak almak için bir bölge kimliği belirtmek.
Yöntem 1: Bir uç nokta belirtin (önerilir)
Bir bulut hizmetinin istemci nesnesini başlatırken uç noktayı belirtebilirsiniz. Hem genel uç noktalar hem de VPC uç noktaları desteklenir.
Aşağıdaki örnek yalnızca uç nokta ile ilgili yapılandırmayı göstermektedir:
com.aliyun.teaopenapi.models.Config config = new com.aliyun.teaopenapi.models.Config();
// Set the endpoint.
config.setEndpoint("<ENDPOINT>");
Yöntem 2: Bir bölge kimliği belirtin
Bir uç nokta belirtmezseniz, bir bulut hizmetinin istemci nesnesini başlatırken bir bölge kimliği belirtebilirsiniz. SDK daha sonra karşılık gelen uç noktayı otomatik olarak çözümler.
Adresleme mantığı şu şekildedir:
Çoğu bulut hizmeti SDK'sı, bölge kimliklerini uç noktalara eşleyen bir endpointMap tanımlar. Örneğin, ECS SDK'sındaki endpointMap aşağıdaki gibidir:
{
"ap-northeast-2-pop": "ecs.aliyuncs.com",
"cn-beijing-finance-pop": "ecs.aliyuncs.com",
"cn-beijing-gov-1": "ecs.aliyuncs.com",
"cn-beijing-nu16-b01": "ecs-cn-hangzhou.aliyuncs.com",
"cn-edge-1": "ecs.cn-qingdao-nebula.aliyuncs.com",
"cn-fujian": "ecs-cn-hangzhou.aliyuncs.com",
"cn-haidian-cm12-c01": "ecs-cn-hangzhou.aliyuncs.com",
"cn-hangzhou": "ecs-cn-hangzhou.aliyuncs.com",
"cn-hangzhou-bj-b01": "ecs-cn-hangzhou.aliyuncs.com",
"cn-hangzhou-finance": "ecs.aliyuncs.com",
"cn-hangzhou-internal-prod-1": "ecs-cn-hangzhou.aliyuncs.com",
"cn-hangzhou-internal-test-1": "ecs-cn-hangzhou.aliyuncs.com",
"cn-hangzhou-internal-test-2": "ecs-cn-hangzhou.aliyuncs.com",
"cn-hangzhou-internal-test-3": "ecs-cn-hangzhou.aliyuncs.com",
"cn-hangzhou-test-306": "ecs-cn-hangzhou.aliyuncs.com",
"cn-hongkong-finance-pop": "ecs.aliyuncs.com",
"cn-huhehaote-nebula-1": "ecs.cn-qingdao-nebula.aliyuncs.com",
"cn-north-2-gov-1": "ecs.aliyuncs.com",
"cn-shanghai-et15-b01": "ecs-cn-hangzhou.aliyuncs.com",
"cn-shanghai-et2-b01": "ecs-cn-hangzhou.aliyuncs.com",
"cn-shanghai-finance-1": "ecs-cn-hangzhou.aliyuncs.com",
"cn-shanghai-inner": "ecs.aliyuncs.com",
"cn-shanghai-internal-test-1": "ecs-cn-hangzhou.aliyuncs.com",
"cn-shenzhen-finance-1": "ecs-cn-hangzhou.aliyuncs.com",
"cn-shenzhen-inner": "ecs.aliyuncs.com",
"cn-shenzhen-st4-d01": "ecs-cn-hangzhou.aliyuncs.com",
"cn-shenzhen-su18-b01": "ecs-cn-hangzhou.aliyuncs.com",
"cn-wuhan": "ecs.aliyuncs.com",
"cn-yushanfang": "ecs.aliyuncs.com",
"cn-zhangbei": "ecs.aliyuncs.com",
"cn-zhangbei-na61-b01": "ecs-cn-hangzhou.aliyuncs.com",
"cn-zhangjiakou-na62-a01": "ecs.cn-zhangjiakou.aliyuncs.com",
"cn-zhengzhou-nebula-1": "ecs.cn-qingdao-nebula.aliyuncs.com",
"eu-west-1-oxs": "ecs.cn-shenzhen-cloudstone.aliyuncs.com",
"rus-west-1-pop": "ecs.aliyuncs.com"
}
Bir
endpointMapyoksa SDK, uç noktayı oluşturma kurallarına göre oluşturur.endpointMapmevcut olup belirtilen bölge kimliğini içeriyorsa uç nokta, bu bölge kimliğine eşlenen değerdir.endpointMapbelirtilen bölge kimliğini içermiyorsa SDK, uç noktayı oluşturma kurallarına göre oluşturur.
Oluşturma kuralları şu şekildedir:
Bölgesel hizmetler:
<PRODUCT_CODE><SUFFIX><NET_WORK>.<REGION_ID>.aliyuncs.comMerkezi hizmetler:
<PRODUCT_CODE><SUFFIX><NET_WORK>.aliyuncs.com
Dağıtım türü ve <PRODUCT_CODE> kullandığınız bulut hizmeti SDK'sı tarafından belirlenir. Diğer üç parametreyi senaryonza göre belirtin:
<SUFFIX>: bir VPC uç noktasındaki sonek. Bu parametreyi, bulut hizmetinin VPC uç noktasındaki soneke göre belirtin. Tire (-) eklemeyin.-
<NET_WORK>: uç nokta türü. Varsayılan olarak genel bir uç nokta kullanılır. Geçerli değerler:vpc: hizmetin VPC uç noktasını alır.intranet: Simple Log Service SDK'sını (sls20201230) kullandığınızda Simple Log Service'in VPC uç noktasını alır.accelerate: Simple Log Service SDK'sını (sls20201230) kullandığınızda Simple Log Service'in aktarım hızlandırma uç noktasını alır.
<REGION_ID>: kaynağın bulunduğu bölge.
VPC uç nokta biçimleri büyük farklılık gösterir. Bir VPC uç noktasını yapılandırmak için bunu bir bölge kimliğinden oluşturmak yerine 1. Yöntemle uç noktayı belirtin.
Aşağıdaki örnek yalnızca uç nokta ile ilgili yapılandırmayı göstermektedir:
com.aliyun.teaopenapi.models.Config config = new com.aliyun.teaopenapi.models.Config();
// Specify the region ID.
config.setRegionId("<REGION_ID>");
config.setNetwork("<NET_WORK>"); // You do not need to set this parameter for a public endpoint. For a VPC endpoint, set it to vpc.
config.setSuffix("<SUFFIX>"); // You do not need to set this parameter for a public endpoint. For a VPC endpoint, specify it based on the suffix in the VPC endpoint of the cloud service and do not add a hyphen (-).
Ek: Bir uç nokta bulun
Bir bulut hizmetinin uç noktasını OpenAPI portalında bulabilirsiniz:
Portalın üst menüsünden Products seçeneğini tıklayın ve ECS gibi bir ürün seçin.
product homepage üzerinde list of service regions listesini bulun.
Bölge kimliğinize karşılık gelen uç noktayı seçin ve ardından kopyalayıp yapıştırın.
Alternatif olarak API hata ayıklama sayfasında sol gezinme bölmesinde Regions seçeneğine tıklayarak bulut hizmetinin desteklediği uç noktaları görüntüleyebilirsiniz.