mirror of
https://github.com/ossrs/srs.git
synced 2025-03-09 15:49:59 +00:00
SmartPtr: Support load test for source by srs-bench. v6.0.130 (#4097)
1. Add live benchmark support in srs-bench, which only connects and disconnects without any media transport, to test source creation and disposal and verify source memory leaks. 2. SmartPtr: Support cleanup of HTTP-FLV stream. Unregister the HTTP-FLV handler for the pattern and clean up the objects and resources. 3. Support benchmarking RTMP/SRT with srs-bench by integrating the gosrt and oryx RTMP libraries. 4. Refine SRT and RTC sources by using a timer to clean up the sources, following the same strategy as the Live source. --------- Co-authored-by: Haibo Chen <495810242@qq.com> Co-authored-by: Jacob Su <suzp1984@gmail.com>
This commit is contained in:
parent
e3d74fb045
commit
1f9309ae25
508 changed files with 6805 additions and 3299 deletions
|
@ -31,6 +31,8 @@ public:
|
|||
virtual srs_error_t update_auth(SrsRequest* r);
|
||||
public:
|
||||
virtual srs_error_t start();
|
||||
virtual void stop();
|
||||
virtual bool alive();
|
||||
virtual srs_error_t dump_cache(SrsLiveConsumer* consumer, SrsRtmpJitterAlgorithm jitter);
|
||||
// Interface ISrsEndlessThreadHandler.
|
||||
public:
|
||||
|
@ -179,12 +181,14 @@ private:
|
|||
SrsRequest* req;
|
||||
SrsBufferCache* cache;
|
||||
SrsSecurity* security_;
|
||||
bool alive_;
|
||||
public:
|
||||
SrsLiveStream(SrsRequest* r, SrsBufferCache* c);
|
||||
virtual ~SrsLiveStream();
|
||||
virtual srs_error_t update_auth(SrsRequest* r);
|
||||
public:
|
||||
virtual srs_error_t serve_http(ISrsHttpResponseWriter* w, ISrsHttpMessage* r);
|
||||
virtual bool alive();
|
||||
private:
|
||||
virtual srs_error_t do_serve_http(ISrsHttpResponseWriter* w, ISrsHttpMessage* r);
|
||||
virtual srs_error_t http_hooks_on_play(ISrsHttpMessage* r);
|
||||
|
@ -230,9 +234,9 @@ private:
|
|||
public:
|
||||
SrsHttpServeMux mux;
|
||||
// The http live streaming template, to create streams.
|
||||
std::map<std::string, SrsLiveEntry*> tflvs;
|
||||
// The http live streaming streams, crote by template.
|
||||
std::map<std::string, SrsLiveEntry*> sflvs;
|
||||
std::map<std::string, SrsLiveEntry*> templateHandlers;
|
||||
// The http live streaming streams, created by template.
|
||||
std::map<std::string, SrsLiveEntry*> streamHandlers;
|
||||
public:
|
||||
SrsHttpStreamServer(SrsServer* svr);
|
||||
virtual ~SrsHttpStreamServer();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue