fix: gofmt alignment in http3 server and surface errors in main.go demo

- gofmt the x509.Certificate struct literal in generateTLSConfig
- grpcSample() now checks and prints errors from http3.ServerRun and
  http3.ClientRun instead of silently discarding them (e.g. port
  conflicts previously failed with no output)

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
2026-07-17 22:36:51 +09:00
co-authored by Claude Sonnet 5
parent 50f63633ea
commit db35f38c05
2 changed files with 15 additions and 10 deletions
+4 -4
View File
@@ -33,11 +33,11 @@ func generateTLSConfig() (*tls.Config, error) {
Subject: pkix.Name{ Subject: pkix.Name{
Organization: []string{"gRPC HTTP3 Canary"}, Organization: []string{"gRPC HTTP3 Canary"},
}, },
NotBefore: time.Now(), NotBefore: time.Now(),
NotAfter: time.Now().Add(365 * 24 * time.Hour), NotAfter: time.Now().Add(365 * 24 * time.Hour),
KeyUsage: x509.KeyUsageKeyEncipherment | x509.KeyUsageDigitalSignature, KeyUsage: x509.KeyUsageKeyEncipherment | x509.KeyUsageDigitalSignature,
ExtKeyUsage: []x509.ExtKeyUsage{x509.ExtKeyUsageServerAuth}, ExtKeyUsage: []x509.ExtKeyUsage{x509.ExtKeyUsageServerAuth},
DNSNames: []string{"localhost"}, DNSNames: []string{"localhost"},
IPAddresses: []net.IP{net.ParseIP("127.0.0.1"), net.ParseIP("::1")}, IPAddresses: []net.IP{net.ParseIP("127.0.0.1"), net.ParseIP("::1")},
} }
+11 -6
View File
@@ -2,8 +2,7 @@ package main
import ( import (
"fmt" "fmt"
"grpccanary/lib/grpc/basic" "grpccanary/lib/grpc/http3"
"grpccanary/lib/jsonexample"
"time" "time"
) )
@@ -11,21 +10,27 @@ var port = ":8080"
func main() { func main() {
// 1단계: JSON 파싱 예제 실행 // 1단계: JSON 파싱 예제 실행
jsonexample.JsonParsingExample() // jsonexample.JsonParsingExample()
// 3단계: gRPC 통신 예제 실행 (필요 시 주석 제거하여 활성화 가능) // 3단계: gRPC 통신 예제 실행 (필요 시 주석 제거하여 활성화 가능)
// grpcSample() grpcSample()
} }
func grpcSample() { func grpcSample() {
fmt.Println("--- starting gRPC IoT Simulation ---") fmt.Println("--- starting gRPC IoT Simulation ---")
// 1. gRPC 서버를 백그라운드 고루틴으로 구동 // 1. gRPC 서버를 백그라운드 고루틴으로 구동
go basic.ServerRun(port) go func() {
if _, _, err := http3.ServerRun(port); err != nil {
fmt.Println("ServerRun error:", err)
}
}()
// 2. 서버 포트가 바인딩되어 통신 대기 상태에 들어갈 시간을 일시적으로 보장 // 2. 서버 포트가 바인딩되어 통신 대기 상태에 들어갈 시간을 일시적으로 보장
time.Sleep(100 * time.Millisecond) time.Sleep(100 * time.Millisecond)
// 3. gRPC 클라이언트를 구동하여 원격 프로시저(RPC) 기동 시뮬레이션 집행 // 3. gRPC 클라이언트를 구동하여 원격 프로시저(RPC) 기동 시뮬레이션 집행
basic.ClientRun(port) if err := http3.ClientRun(port); err != nil {
fmt.Println("ClientRun error:", err)
}
} }