Tsukikage7 opened a new pull request, #1017:
URL: https://github.com/apache/dubbo-go-pixiu/pull/1017

   ## Motivation
   
   Fixes #820 — benchmark latency regression measured against upstream 
`60fcbf17` (same `tools/benchmark`, same machine, Apple Silicon):
   
   | Path | Baseline | After | Speedup |
   |---|---|---|---|
   | gRPC `GetUser` (median) | 1.4–1.9 ms | 0.6–0.8 ms | ~2.2x |
   | Triple `GetUser` (median) | 1.5–2.0 ms | 0.5–0.7 ms | ~2.5x |
   | Dubbo `GetUser` (median) | **500 Internal Server Error** | 0.4–0.5 ms | 
fixed |
   
   Latest runs (all three suites in parallel, `go test ./...`):
   
   ```
   Dubbo via Pixiu:  GetUser 500µs | GetGender 400µs
   gRPC via Pixiu:   GetUser 1.2ms | GetUsers 800µs
   Triple via Pixiu: GetUser 700µs | GetUsers 700µs
   ```
   
   ## Changes
   
   **Performance (all under `pkg/`, `tools/benchmark` untouched — measurement 
code is identical to baseline):**
   
   - `grpcproxy`: share one backend gRPC connection per endpoint instead of 
dialing per request (new `connection_manager.go`, closes resources on client 
close)
   - `grpcproxy`: cache server-reflection descriptors so the proxy stops 
re-reflecting on every call
   - `dubboregistry`: default empty `serialization` to `hessian2` — this was 
causing HTTP 500 on Dubbo requests
   - `typeconv`: fix unsafe type assertions
   - `gateway`: honor log-level config and expose `--reload-port`
   
   **Benchmark parallelism fixes (so the three suites can run concurrently with 
`go test ./...`):**
   
   - reload server port is now configurable (`--reload-port`, default 18380; 
suites use 18380/18381/18382)
   - pixiu listener ports split: dubbo `8881`, grpc `8882`, triple `8883`
   - triple provider moved from `20000` to `20010` (dubbo provider stays on 
`20000`)
   
   With these, `go test ./...` in `tools/benchmark/test` passes all three 
suites in one parallel run (previously suites clobbered each other on shared 
ports 18380/8881/20000).
   
   ## Tests
   
   - `go build ./...`, `go vet ./pkg/...` clean
   - `go test ./pkg/...` all pass
   - `go test -count=1 ./...` in `tools/benchmark/test` — 3/3 suites PASS


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to