
RPC라는 개념이 존재하기 전부터 소켓 프로그래밍을 통해서 네크워크 상에 존재하는 서비스를 호출할 수는 있었습니다. 그러나 네크워크 상의 원격 통신은 느려지거나 서버가 응답하지 않는 등의 다양한 장애가 발생할 수 있습니다. 소켓 프로그래밍으로 직접 구현한다면 네크워크에서 발생 가능한 다양한 예외상황들을 개발자가 직접 핸들링해야만 합니다.
RPC는 이러한 네크워크 통신과 관련된 작업들을 대신해 줍니다. 개발자는 원격 컴퓨터나 프로세스에 존재하는 함수를 동일 프로세스에 존재하는 함수를 호출하는 것 처럼 호출할 수 있습니다
Microservices with gRPC
본 글에서는 gRPC에 대한 소개와 gRPC를 활용한 마이크로서비스에 대해서 이야기하려고 합니다. 필자는 gRPC가 공식적인 릴리즈(1.0)을 하기 전부터 제품에 적용해보면서, 실제로 높은 성능과 혁신적인 생산성을 직접 경험하였습니다. 특히 마이크로서비스의 구현에 매우 적합한 프레임워크임에도 아직 한국에는 널리 알려지지 않은 것 같아서 포스팅합니다. gRPC의 역사는 구글의 데이터센터에서 실행되는 수많은 마이크로서비스들이 10년이상 사용한 단일 범용 RPC 인프라인 Stubby에서 시작됩니다.
https://medium.com/@goinhacker/microservices-with-grpc-d504133d191d

Building gRPC Microservices in Go
👋 Welcome Gophers! This course is specifically designed to help teach you how you can build your own production-ready gRPC microservices in Go. Since starting my journey into Go, I've worked on a large number of different services across a range of different business domains.
https://tutorialedge.net/courses/go-grpc-services-course/
auth usage
GitHub - gjbae1212/grpc-vpn: VPN supporting authentication such as Google OpenID Connect or AWS IAM ..., over GRPC.
GRPC-VPN is the VPN server and client which supports authentications such as Google OpenId Connect or AWS IAM, using GRPC. Other authentications(LDAP, ...) will be to apply it, if you will implement custom ServerAuthMethod for VPN server and ClientAuthMethod for VPN client. Motivation Of course, the well-made VPN is already around us.
https://github.com/gjbae1212/grpc-vpn

Seonglae Cho