github-actions[bot] commented on PR #1125:
URL:
https://github.com/apache/incubator-seata-go/pull/1125#issuecomment-4797403515
> Bot detected the issue body's language is not English, translate it
automatically.
Add Amendment
pkg/integration/rocketmq/end_transaction_sender.go
1. Problem: Each Send creates a new TCP connection, generating a large
number of short connections in concurrent scenarios
Fix: Added connPool + defaultTCPSender, multiplex connection by broker
address dimension (default 4 connection), support automatically retry a new
connection after the pool connection fails, with lazy idle cleaning (60s
interval/10min timeout)
Impact: Avoid connection storms with high concurrency, reducing latency
and resource consumption
2. Issue: DialTimeout in queryBrokerAddrFromNameServer is dead for 3s,
inconsistent with the outer timeout
Fix: Change the third parameter of net.DialTimeout to the timeout
variable passed through from sendEndTransaction
Impact: Timeout behavior is uniform, facilitating global control by
configuring
3. Problem: Custom readFull footprint, fully duplicated with standard
library io.ReadFullFix: Remove readFull function, use io.ReadFull directly for
all calls
Impact: Less frivolous encapsulation, more concise code
4. Problem: Hardcoded 13 in decodeResponseHeader, No Comment Description
Meaning
Fix: Define constant rmqResponseHeaderFixedPartLength = 13 and comment
out each field byte composition (code 2 + language 1 + version 2 + opaque 4 +
flag 4)
Impact: Improved maintainability, at-a-glance for subsequent developers
5. Issue: encodeExtFields sort key: [redacted] sort.Strings, Broker parsing
does not depend on order
Fix: Remove sort logic, traverse map directly with for range
Impact: Eliminates meaningless sort overhead, encoding logic consistent
with RocketMQ protocol semantics
--
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]