e071084ebe
govulncheck / govulncheck (push) Waiting to run
Harness (E2E) / Harnesses (mock LLM) (push) Waiting to run
Harness (E2E) / Provider harnesses (live LLM conformance) (push) Waiting to run
Lint / golangci-lint (push) Waiting to run
Run Tests / Unit Tests (push) Waiting to run
Run Tests / Etcd Integration Tests (push) Waiting to run
1.2 KiB
1.2 KiB
Web Service Example
HTTP web service with automatic service discovery and registration.
What It Does
This example creates an HTTP service that:
- Serves RESTful API endpoints
- Registers with service discovery
- Provides health checks
- Uses standard Go HTTP handlers
Run It
go run main.go
Test It
# Get service info
curl http://localhost:9090/
# List all users
curl http://localhost:9090/users
# Get specific user
curl http://localhost:9090/users/1
# Health check
curl http://localhost:9090/health
Key Features
- Standard HTTP: Use familiar
http.Handlerinterface - Service Discovery: Automatically registers with registry
- Health Checks: Built-in health endpoint
- JSON APIs: Easy REST API development
When to Use
Use web.Service when:
- Building REST APIs
- Serving web UIs
- Working with HTTP-specific features
- Migrating existing HTTP services
Use regular micro.Service when:
- Building RPC services
- Need bidirectional streaming
- Want automatic load balancing
- Prefer structured RPC over HTTP
Next Steps
- See hello-world for RPC services
- See production-ready for observability