Интеграция с gRPC
Описание
В данном разделе приведен пример настройки и использования gRPC в Entaxy ION: установка необходимых компонентов, запуск тестового бандла и проверка корректного взаимодействия gRPC‑клиента и сервера.
Процесс взаимодействия с gRPC состоит из следующих шагов:
-
Необходимо убедиться, что в /etc/hosts прописана запись 127.0.0.1. localhost
-
Устанавливаем фичу camel-grpc:
feature:install -r camel-grpc -
Проверяем, что установленные бандлы находятся в статусе 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
Порядок запуска:
-
Распаковать и собрать проект grpc-entaxy-test.zip.
-
Установить бандл:
install mvn:ru.entaxy.grpc.test/grpc-entaxy-test/1.0-SNAPSHOT -
Убедиться, что установленный бандл находится в статусе active (при необходимости выполнить restart бандла).
-
Убедиться, что в логах отображается вызов 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!"