Protobuf 스키마 정의 규칙과 RPC 서비스 배포 프로세스

프로토콜 버퍼(.proto) 문법 구조 이해 Protobuf 기반의 시스템 설계에서 가장 기본이 되는 것은 .proto 정적 형식 파일입니다. 이 파일을 작성할 때는 일관된 네이밍 컨벤션과 구조를 준수하는 것이 유지보수에 필수적입니다. 파일 명명 및 코드 양식 표준 파일명은 소문자 기준이며, 단어가 여러 개라면 밑줄 (_) 로 구분합니다 (예: api_definition.proto). 코드 들여 ...

6월 25일 01:10에 게시됨

Vision-Agents에서 gRPC 기반 분산 서비스 통신 구축하기

Vision-Agents는 Stream의 에지 네트워크를 기반으로 하는 오픈소스 비전 에이전트 프레임워크로, 다양한 모델과 영상 제공자를 빠르게 연결해 초저지연 실시간 상호작용을 가능하게 한다. 본문에서는 이 프레임워크가 gRPC를 활용해 서비스 간 효율적인 통신을 구현하는 방식과 그 설계 원리를 살펴본다. gRPC를 Vision-Agents 통신 기반으로 선택한 이유 분산 환경에서 ...

6월 24일 16:31에 게시됨

GRPC 연결 문제 해결: io.grpc.netty.shaded.io.netty.handler.ssl.NotSslRecordException: SSL/TLS 레코드가 아님

문제 상황 최근 회사의 마이크로서비스 프레임워크를 사용하여 백엔드를 개발하면서 파이썬으로 작성된 서비스 인터페이스를 호출해야 했습니다. 여기서는 다른 언어 간의 인터페이스 호출을 위해 GRPC를 사용했습니다. 파이썬 서비스가 실행 중임을 알고 있었지만, 테스트 과정에서 백엔드에서 오류가 발생했습니다. 오류 메시지는 다음과 같습니다: Caused by: io.grpc.S ...

6월 20일 23:37에 게시됨

K8S, DDD, CQRS, ES, gRPC를 활용한 Go 서버/API 보일러플레이트

Go API 시작 키트 이 프로젝트는 K8S, DDD, CQRS, ES, gRPC와 같은 최신 기술 스택을 기반으로 한 Go 서버 및 API 개발을 위한 보일러플레이트를 제공합니다. 개발 및 프로덕션 환경을 위한 Kubernetes 구성을 포함하여, 프로덕션 환경과 유사한 환경에서 작업함으로써 구성 오류를 최소화합니다. 여러 서비스(예: 인증 또는 사용자 도메인)를 위한 단일 저장소(mono-repo ...

6월 18일 23:50에 게시됨

Go 서비스 등록 및 발견 시스템

아키텍처 흐름도 gRPC 서비스 발견 gRPC 리졸버 인터페이스 설계 // gRPC 리졸빌더 type Builder interface { Build(target Target, cc ClientConn, opts BuildOptions) (Resolver, error) Scheme() string } // gRPC 리졸버 type Resolver interface { ResolveNow(ResolveNowOptions) Close() } 메시지 전달 순서도 소스 코드 Gitee: https://gitee.com/luyue_zhang ...

6월 18일 16:48에 게시됨

LLM 플랫폼을 위한 API 서비스 선택 가이드: gRPC vs RESTful 성능 비교

대형 언어 모델(LLM) 호출 플랫폼인 wenda는 개인 및 중소기업의 리소스 제약과 데이터 보안 요구사항을 고려하여 설계되었습니다. 이 문서에서는 해당 플랫폼에서 제공하는 두 가지 주요 API 방식인 gRPC와 RESTful API의 성능 차이를 분석하고, 적절한 인터페이스 선택 전략을 제시합니다. 왜 API 선택이 중요한가? wenda는 RWKV, ChatGLM, Llama 등 다양한 오픈소스 언 ...

6월 9일 19:17에 게시됨

ASP.NET Core gRPC 서비스 구축 가이드

1. gRPC 개념 이해 1.1 기본 개요 gRPC는 Google에서 개발한 오픈소스 RPC(Remote Procedure Call) 시스템으로, 언어와 플랫폼에 독립적입니다. C, C++, Python, PHP, Ruby, Node.js, C#, Objective-C, Golang 등 다양한 언어를 지원합니다. 이름의 'g'는 Google을 의미합니다. 1.2 Proto 파일의 역할 Proto 파일은 서비스 인터페이스와 데이터 구조를 정의하는 규약입니 ...

6월 4일 18:25에 게시됨

Spring Boot와 gRPC를 활용한 마이크로서비스 고성능 통신 구현

gRPC 개요 gRPC는 HTTP/2와 Protocol Buffers를 기반으로 한 고성능 RPC 프레임워크로, 양방향 스트리밍과 다중 언어 코드 생성을 지원합니다. REST JSON 대비 3-5배 작은 직렬화 크기와 30% 이상의 지연 시간 감소로 마이크로서비스 통신에 적합합니다. 프로젝트 구조 grpc-example/ ├── grpc-api/ # Proto 정의 + 생성 코드 │ └── src/main/proto/ │ ...

5월 30일 12:23에 게시됨

로컬 환경에서 대규모 멀티모달 모델을 고성능으로 배포하고 API로 제공하기

Python과 C++을 활용한 로컬 배포 및 API 구현 데이터 보안과 지연 시간 감소를 위해, CLIP, BLIP 또는 LLaVA와 같은 멀티모달 모델을 로컬에 직접 배포하고 효율적인 API 서비스를 구성하는 방법을 다룹니다. 필수 환경 설정 Python 3.8 이상 및 pip CUDA 11.7 이상 (GPU 사용 시) PyTorch 또는 ONNX Runtime g++ 컴파일러 (C++ 확장용) 모델 내보내기 및 추론 인터페 ...

5월 21일 11:30에 게시됨