正在显示
2 个修改的文件
包含
6 行增加
和
7 行删除
| @@ -275,8 +275,6 @@ SrsKafkaProducer::SrsKafkaProducer() | @@ -275,8 +275,6 @@ SrsKafkaProducer::SrsKafkaProducer() | ||
| 275 | cache = new SrsKafkaCache(); | 275 | cache = new SrsKafkaCache(); |
| 276 | 276 | ||
| 277 | lb = new SrsLbRoundRobin(); | 277 | lb = new SrsLbRoundRobin(); |
| 278 | - transport = new SrsTcpClient(); | ||
| 279 | - kafka = new SrsKafkaClient(transport); | ||
| 280 | } | 278 | } |
| 281 | 279 | ||
| 282 | SrsKafkaProducer::~SrsKafkaProducer() | 280 | SrsKafkaProducer::~SrsKafkaProducer() |
| @@ -284,8 +282,6 @@ SrsKafkaProducer::~SrsKafkaProducer() | @@ -284,8 +282,6 @@ SrsKafkaProducer::~SrsKafkaProducer() | ||
| 284 | clear_metadata(); | 282 | clear_metadata(); |
| 285 | 283 | ||
| 286 | srs_freep(lb); | 284 | srs_freep(lb); |
| 287 | - srs_freep(kafka); | ||
| 288 | - srs_freep(transport); | ||
| 289 | 285 | ||
| 290 | srs_freep(worker); | 286 | srs_freep(worker); |
| 291 | srs_freep(pthread); | 287 | srs_freep(pthread); |
| @@ -443,6 +439,12 @@ int SrsKafkaProducer::request_metadata() | @@ -443,6 +439,12 @@ int SrsKafkaProducer::request_metadata() | ||
| 443 | return ret; | 439 | return ret; |
| 444 | } | 440 | } |
| 445 | 441 | ||
| 442 | + SrsTcpClient* transport = new SrsTcpClient(); | ||
| 443 | + SrsAutoFree(SrsTcpClient, transport); | ||
| 444 | + | ||
| 445 | + SrsKafkaClient* kafka = new SrsKafkaClient(transport); | ||
| 446 | + SrsAutoFree(SrsKafkaClient, kafka); | ||
| 447 | + | ||
| 446 | std::string server; | 448 | std::string server; |
| 447 | int port = SRS_CONSTS_KAFKA_DEFAULT_PORT; | 449 | int port = SRS_CONSTS_KAFKA_DEFAULT_PORT; |
| 448 | if (true) { | 450 | if (true) { |
| @@ -460,7 +462,6 @@ int SrsKafkaProducer::request_metadata() | @@ -460,7 +462,6 @@ int SrsKafkaProducer::request_metadata() | ||
| 460 | } | 462 | } |
| 461 | 463 | ||
| 462 | // reconnect to kafka server. | 464 | // reconnect to kafka server. |
| 463 | - transport->close(); | ||
| 464 | if ((ret = transport->connect(server, port, SRS_CONSTS_KAFKA_TIMEOUT_US)) != ERROR_SUCCESS) { | 465 | if ((ret = transport->connect(server, port, SRS_CONSTS_KAFKA_TIMEOUT_US)) != ERROR_SUCCESS) { |
| 465 | srs_error("kafka connect %s:%d failed. ret=%d", server.c_str(), port, ret); | 466 | srs_error("kafka connect %s:%d failed. ret=%d", server.c_str(), port, ret); |
| 466 | return ret; | 467 | return ret; |
| @@ -164,8 +164,6 @@ public: | @@ -164,8 +164,6 @@ public: | ||
| 164 | private: | 164 | private: |
| 165 | SrsLbRoundRobin* lb; | 165 | SrsLbRoundRobin* lb; |
| 166 | SrsAsyncCallWorker* worker; | 166 | SrsAsyncCallWorker* worker; |
| 167 | - SrsTcpClient* transport; | ||
| 168 | - SrsKafkaClient* kafka; | ||
| 169 | public: | 167 | public: |
| 170 | SrsKafkaProducer(); | 168 | SrsKafkaProducer(); |
| 171 | virtual ~SrsKafkaProducer(); | 169 | virtual ~SrsKafkaProducer(); |
-
请 注册 或 登录 后发表评论