Page 60 - Yazılım Teknolojileri Araştırma Bülteni 2023
P. 60

60 | DAPR Servis Çağırma



           dapr-grpc-port:  uygulamasının  kendi  yardımcı  birimine  erişirken  kullanacağı  portu,  yardımcı
           birimin gRPC için dinleyeceği portu tanımlar. Servisler dışarıdan tetiklenmek istendiğinde bu port

           kullanılır.

           app-ssl eğer erişimin ssl ile sağlanması isteniyorsa bu şekilde app-ssl komutu eklenerek ssl ile
           beraber gerçekleştirilebilmesi sağlanabilir.

           Uygulama içinden bu yöntem kullanılmak istendiğinde örnek java kodu şu şekilde olmaktadır:




            -/dependencies
            import io.dapr.client.DaprClient;
            import io.dapr.client.DaprClientBuilder;
            import io.dapr.client.domain.HttpExtension;
            import org.springframework.boot.autoconfigure.SpringBootApplication;
            import org.slf4j.Logger;
            import org.slf4j.LoggerFactory;
            import java.util.Random;
            import java.util.concurrent.TimeUnit;


            -/code
            @SpringBootApplication
            public class OrderProcessingServiceApplication {

                 private static final Logger log = LoggerFactory.
            getLogger(OrderProcessingServiceApplication.class);


                 public static void main(String[] args) throws InterruptedException{
                         while(true) {
                                TimeUnit.MILLISECONDS.sleep(5000);
                                Random random = new Random();
                                int orderId = random.nextInt(1000-1) + 1;
                                DaprClient daprClient = new DaprClientBuilder().build();
                        -/Using Dapr SDK to invoke a method
                                var result = daprClient.invokeMethod(
                                              “checkout”,
                                              “checkout/” + orderId,
                                              null,
                                              HttpExtension.GET,
                                              String.class
                                );
                                log.info(“Order requested: “ + orderId);
                                log.info(“Result: “ + result);
                         }
                 }
            }
   55   56   57   58   59   60   61   62   63   64   65