Lattice Hub 文档
使用指南Thin SDK

C++ Thin SDK

pole-client-cpp 的 CMake 包名、构建安装与 Sidecar Session / TargetService 用法。

C++ Thin SDK(仓库 pole-client-cpp)经 UDS 建立 Sidecar Session,接收 HTTP / gRPC / Dubbo / Thrift listener 快照,并生成 TargetService 元信息。

官方包

仓库github.com/lattice-hub/pole-client-cpp
CMake packagePoleClientCpp
链接目标PoleClient::pole-client-cpp
依赖官方 gRPC(通过 CMAKE_PREFIX_PATH 提供);Specification 以 Git submodule 固定

当前以源码构建安装为主:

git clone --recursive https://github.com/lattice-hub/pole-client-cpp.git
cmake -S . -B build -G Ninja -DCMAKE_PREFIX_PATH=/path/to/grpc
cmake --build build
ctest --test-dir build --output-on-failure
cmake --install build

消费方:

find_package(PoleClientCpp CONFIG REQUIRED)
target_link_libraries(your_target PRIVATE PoleClient::pole-client-cpp)

最小用法

默认 UDS:/var/run/pole/sidecar/bootstrap.sock。可用 SidecarSessionOptions.socket_pathPOLE_SIDECAR_SOCKET 覆盖。

#include <pole/client/sidecar_session.h>
#include <pole/client/target_service.h>

auto session = pole::client::SidecarSession::Connect();
const auto grpc_address = session->ListenerAddress(pole::client::Protocol::kGrpc);

const pole::client::TargetService target("default", "orders");
const auto metadata = target.EncodeMetadata();

// 将业务客户端指向 grpc_address,并注入 metadata。

会话断开后快照立即失效;重连并收到完整首帧后恢复。SDK 不硬编码业务 listener 端口。

元信息

latticehub-target-namespace
latticehub-target-service

TargetService v1 仅含 namespaceservice;值经 canonical UTF-8 %HH 编码。

边界

  • 框架无关核心,不含业务框架 adapter
  • 端到端兼容仍演进中,见 Thin SDK 总览

下一步

On this page