Интеграция с gRPC

Описание

В данном разделе приведен пример настройки и использования gRPC в Entaxy ION: установка необходимых компонентов, запуск тестового бандла и проверка корректного взаимодействия gRPC‑клиента и сервера.

Процесс взаимодействия с gRPC состоит из следующих шагов:

  1. Необходимо убедиться, что в /etc/hosts прописана запись 127.0.0.1. localhost

  2. Устанавливаем фичу camel-grpc:

     feature:install -r camel-grpc
  3. Проверяем, что установленные бандлы находятся в статусе Active:

    641 │ Active   │  50 │ 28.2.0.jre         │ Guava: Google Core Libraries for Java
    642 │ Active   │  50 │ 3.11.1             │ Protocol Buffers [Core]
    643 │ Active   │  50 │ 3.1.0              │ Protocol Buffer JavaNano API
    644 │ Active   │  50 │ 4.1.50.Final       │ Netty/Codec/HTTP2
    645 │ Active   │  50 │ 2.0.28.Final       │ Netty/TomcatNative [BoringSSL - Static]
    646 │ Active   │  50 │ 3.4.5              │ camel-grpc
    647 │ Active   │  50 │ 1.28.0.1           │ Apache ServiceMix :: Bundles :: gRPC
    648 │ Active   │  50 │ 4.11.0.1           │ Apache ServiceMix :: Bundles :: junit
    649 │ Active   │  50 │ 2.7.5.1            │ Apache ServiceMix :: Bundles :: okhttp
    650 │ Active   │  50 │ 1.15.0.1           │ Apache ServiceMix :: Bundles :: okio
    651 │ Active   │  50 │ 3.0.2              │ FindBugs-jsr305
    652 │ Active   │  50 │ 0                  │ wrap_file__C__Users_lyako_.m2_repository_com_auth0_java-jwt_3.7.0_java-jwt-3.7.0.jar
    653 │ Active   │  50 │ 0                  │ wrap_file__C__Users_lyako_.m2_repository_com_google_auth_google-auth-library-credentials_0.19.0_google-auth-library-credentials-0.19.0.jar
    654 │ Active   │  50 │ 0                  │ wrap_file__C__Users_lyako_.m2_repository_com_google_auth_google-auth-library-oauth2-http_0.19.0_google-auth-library-oauth2-http-0.19.0.jar
    655 │ Active   │  50 │ 0                  │ wrap_file__C__Users_lyako_.m2_repository_io_opencensus_opencensus-api_0.24.0_opencensus-api-0.24.0.jar
    656 │ Active   │  50 │ 0                  │ wrap_file__C__Users_lyako_.m2_repository_io_perfmark_perfmark-api_0.17.0_perfmark-api-0.17.0.jar

Порядок запуска:

  1. Распаковать и собрать проект grpc-entaxy-test.zip.

  2. Установить бандл:

    install mvn:ru.entaxy.grpc.test/grpc-entaxy-test/1.0-SNAPSHOT
  3. Убедиться, что установленный бандл находится в статусе active (при необходимости выполнить restart бандла).

  4. Убедиться, что в логах отображается вызов gRPC-клиента:

    14:35:49.747 INFO [Camel (grpcClienContext) thread #102 - timer://:myTimer] grpc client started: name: "Entaxy"
    14:35:49.747 INFO [grpc-default-executor-0] grpc server started: message: "Hello from Entaxy!"
    14:35:49.747 INFO [Camel (grpcClienContext) thread #102 - timer://:myTimer] grpc client completed: message: "Hello from Entaxy!"