SeaweedMQ is Now the Only Mode

This commit is contained in:
chrislu committed 2025-09-12 18:17:50 -07:00
1 parent 09568a6f4f
commit b7514c4ab0
3 files changed
+31 -35

No files matched your search

+7 -15
View File
@@ -12,46 +12,38 @@ var (
type mqKafkaGatewayOpts struct {
listen *string
agentAddress *string
seaweedMode *bool
}
func init() {
cmdMqKafkaGateway.Run = runMqKafkaGateway
mqKafkaGatewayOptions.listen = cmdMqKafkaGateway.Flag.String("listen", ":9092", "Kafka gateway listen address")
mqKafkaGatewayOptions.agentAddress = cmdMqKafkaGateway.Flag.String("agent", "", "SeaweedMQ Agent address (e.g., localhost:17777)")
mqKafkaGatewayOptions.seaweedMode = cmdMqKafkaGateway.Flag.Bool("seaweedmq", false, "Use SeaweedMQ backend instead of in-memory stub")
mqKafkaGatewayOptions.agentAddress = cmdMqKafkaGateway.Flag.String("agent", "localhost:17777", "SeaweedMQ Agent address (required)")
}
var cmdMqKafkaGateway = &Command{
UsageLine: "mq.kafka.gateway [-listen=:9092] [-agent=localhost:17777] [-seaweedmq]",
UsageLine: "mq.kafka.gateway [-listen=:9092] [-agent=localhost:17777]",
Short: "start a Kafka wire-protocol gateway for SeaweedMQ",
Long: `Start a Kafka wire-protocol gateway translating Kafka client requests to SeaweedMQ.
By default, uses an in-memory stub for development and testing.
Use -seaweedmq -agent=<address> to connect to a real SeaweedMQ Agent for production.
Requires a running SeaweedMQ Agent. Use -agent=<address> to specify the agent location.
This is experimental and currently supports a minimal subset for development.
`,
}
func runMqKafkaGateway(cmd *Command, args []string) bool {
// Validate options
if *mqKafkaGatewayOptions.seaweedMode && *mqKafkaGatewayOptions.agentAddress == "" {
glog.Fatalf("SeaweedMQ mode requires -agent address")
// Validate options - agent address is now required
if *mqKafkaGatewayOptions.agentAddress == "" {
glog.Fatalf("SeaweedMQ Agent address is required (-agent)")
return false
}
srv := gateway.NewServer(gateway.Options{
Listen: *mqKafkaGatewayOptions.listen,
AgentAddress: *mqKafkaGatewayOptions.agentAddress,
UseSeaweedMQ: *mqKafkaGatewayOptions.seaweedMode,
})
mode := "in-memory"
if *mqKafkaGatewayOptions.seaweedMode {
mode = "SeaweedMQ (" + *mqKafkaGatewayOptions.agentAddress + ")"
}
glog.V(0).Infof("Starting MQ Kafka Gateway on %s with %s backend", *mqKafkaGatewayOptions.listen, mode)
glog.V(0).Infof("Starting MQ Kafka Gateway on %s with SeaweedMQ backend (%s)", *mqKafkaGatewayOptions.listen, *mqKafkaGatewayOptions.agentAddress)
if err := srv.Start(); err != nil {
glog.Fatalf("mq kafka gateway start: %v", err)
return false