Azure Service Fabric Java Istemci API 'Leri

Service Fabric istemci API 'Leri, Azure 'da, şirket içinde, yerel geliştirme makinesinde veya başka bir bulutta bulunan bir Service Fabric kümesinde mikro hizmet tabanlı uygulamaları ve kapsayıcıları dağıtmaya ve yönetmeye olanak tanır. Bu makalede, Service Fabric istemci REST API 'lerinin en üstünde Service Fabric Java istemci API 'lerinin nasıl oluşturulacağı ve kullanılacağı açıklanmaktadır

İstemci kodunu, oto Rest kullanarak oluşturma

Oto Rest , daha fazla Web hizmetine erişmek için istemci kitaplıkları üreten bir araçtır. Oto geri kalanına giriş, Openapı belirtim biçimini kullanarak REST API tanımlayan bir belirtimdir. Service Fabric ISTEMCI REST API 'leri bu belirtimi izler.

Service Fabric Java istemci kodunu, oto Rest aracını kullanarak oluşturmak için aşağıda bahsedilen adımları izleyin.

  1. Makinenize nodejs ve NPM yükleme

    Linux kullanıyorsanız:

    sudo apt-get install npm
    sudo apt install nodejs
    

    Mac OS X kullanıyorsanız:

    brew install node
    
  2. NPM kullanarak oto Rest 'i yükler.

    npm install -g autorest
    
  3. Azure-REST-API-spec deposunu yerel makinenizde çatalla ve kopyalayın ve makinenizin terminalinde kopyalanmış konuma gidin.

  4. Klonlanan depounuzda aşağıda bahsedilen konuma gidin.

    cd specification\servicefabric\data-plane\Microsoft.ServiceFabric\stable\6.0
    

    Not

    Küme sürümünüz 6,0 değilse, kararlı klasörde ilgili dizine gidin.

  5. Java istemci kodunu oluşturmak için aşağıdaki oto REST komutunu çalıştırın.

    autorest --input-file= servicefabric.json --java --output-folder=[output-folder-name] --namespace=[namespace-of-generated-client]
    

    Aşağıda, oto Rest kullanımının kullanımını gösteren bir örnek verilmiştir.

    autorest --input-file=servicefabric.json --java --output-folder=java-rest-api-code --namespace=servicefabricrest
    

    Aşağıdaki komut, servicefabric.json Belirtim dosyasını girdi olarak alır ve klasörde Java istemci kodu oluşturur java-rest-api- code ve kodu servicefabricrest ad alanına barındırır. Bu adımdan sonra iki klasör models implementation ve klasörde oluşturulan iki dosya bulunur ServiceFabricClientAPIs.java package-info.java java-rest-api-code .

Projenizde oluşturulan istemciyi ekleme ve kullanma

  1. Oluşturulan kodu projenize uygun şekilde ekleyin. Oluşturulan kodu kullanarak bir kitaplık oluşturmanızı ve bu kitaplığı projenize eklemeyi öneririz.

  2. Bir kitaplık oluşturuyorsanız, kitaplığınızın projesine aşağıdaki bağımlılığı ekleyin. Farklı bir yaklaşımı takip ediyorsanız, bağımlılığı uygun şekilde ekleyin.

        GroupId:  com.microsoft.rest
        Artifactid: client-runtime
        Version: 1.2.1
    

    Örneğin, Maven derleme sistemi kullanıyorsanız dosyanıza aşağıdakileri ekleyin pom.xml :

        <dependency>
          <groupId>com.microsoft.rest</groupId>
          <artifactId>client-runtime</artifactId>
          <version>1.2.1</version>
        </dependency>
    
  3. Aşağıdaki kodu kullanarak bir RestClient oluşturun:

        RestClient simpleClient = new RestClient.Builder()
            .withBaseUrl("http://<cluster-ip or name:port>")
            .withResponseBuilderFactory(new ServiceResponseBuilder.Factory())
            .withSerializerAdapter(new JacksonAdapter())
            .build();
        ServiceFabricClientAPIs client = new ServiceFabricClientAPIsImpl(simpleClient);
    
  4. İstemci nesnesini kullanın ve uygun çağrıları gereken şekilde yapın. İstemci nesnesinin kullanımını gösteren bazı örnekler aşağıda verilmiştir. Aşağıdaki API 'leri kullanmadan önce uygulama paketinin oluşturulup görüntü deposuna yüklendiğini varsayalım.

    • Uygulama sağlama

          ApplicationTypeImageStorePath imageStorePath = new ApplicationTypeImageStorePath();
          imageStorePath.withApplicationTypeBuildPath("<application-path-in-image-store>");
          client.provisionApplicationType(imageStorePath);
      
    • Uygulama oluşturma

          ApplicationDescription applicationDescription = new ApplicationDescription();
          applicationDescription.withName("<application-uri>");
          applicationDescription.withTypeName("<application-type>");
          applicationDescription.withTypeVersion("<application-version>");
          client.createApplication(applicationDescription);
      

Oluşturulan kodu anlama

Her API için, uygulamanın dört adet aşırı yüklemesini bulacaksınız. İsteğe bağlı parametreler varsa, bu isteğe bağlı parametreler dahil olmak üzere dört çeşitte daha bulabilirsiniz. Örneğin, API 'YI düşünün removeReplica .

  1. public void removeReplica (dize düğ, UUID PartitionID, dize yineleme kimliği, Boole forceRemove, uzun zaman aşımı)
    • Bu, removeReplica API çağrısının zaman uyumlu varyantıdır
  2. ortak ServiceFuture <Void> removereperepasync (dize düğ, UUID PartitionID, dize yineleme kimliği, Boole forceRemove, uzun zaman aşımı, son ServiceCallback <Void> ServiceCallback)
    • Bu API çağrısı değişkeni, gelecekteki tabanlı zaman uyumsuz programlama kullanmak ve geri çağırmaları kullanmak istiyorsanız kullanılabilir
  3. Public observable <Void> removereperepasync (dize düğ, UUID PartitionID, dize yineleme kimliği)
    • Bu API çağrısı değişkeni, reaktif zaman uyumsuz programlama kullanmak istiyorsanız kullanılabilir
  4. Public observable <ServiceResponse<Void>> removeReplicaWithServiceResponseAsync (dize düğ, UUID PartitionID, dize yineleme kimliği)
    • Bu API çağrısı değişkeni, reaktif zaman uyumsuz programlama kullanmak ve ham Rest yanıtıyla başa çıkmak istiyorsanız kullanılabilir

Sonraki adımlar