Skip to content

Heartbeat: Report ports for proxy server. v5.0.215 v6.0.156 v7.0.15#4171

Merged
winlinvip merged 6 commits intoossrs:developfrom
winlinvip:feature/heartbeat
Sep 9, 2024
Merged

Heartbeat: Report ports for proxy server. v5.0.215 v6.0.156 v7.0.15#4171
winlinvip merged 6 commits intoossrs:developfrom
winlinvip:feature/heartbeat

Conversation

@winlinvip
Copy link
Copy Markdown
Member

@winlinvip winlinvip commented Sep 5, 2024

The heartbeat of SRS is a timer that requests an HTTP URL. We can use this heartbeat to report the necessary information for registering the backend server with the proxy server.

SRS(backend) --heartbeat---> Proxy server

A proxy server is a specialized load balancer for media servers. It operates at the application level rather than the TCP level. For more information about the proxy server, see issue #4158.

Note that we will merge this PR into SRS 5.0+, allowing the use of SRS 5.0+ as the backend server, not limited to SRS 7.0. However, the proxy server is introduced in SRS 7.0.

It's also possible to implement a registration service, allowing you to use other media servers as backend servers. For example, if you gather information about an nginx-rtmp server and register it with the proxy server, the proxy will forward RTMP streams to nginx-rtmp. The backend server is not limited to SRS.


Co-authored-by: Jacob Su suzp1984@gmail.com

@winlinvip winlinvip added the EnglishNative This issue is conveyed exclusively in English. label Sep 5, 2024
virtual std::string get_heartbeat_device_id();
// Whether report with summaries of http api: /api/v1/summaries.
virtual bool get_heartbeat_summaries();
bool get_heartbeat_ports();
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

let this method virtual?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Unnecessary.

@winlinvip winlinvip changed the title Heartbeat: Report ports for proxy server. Heartbeat: Report ports for proxy server. v5.0.215 v6.0.156 v7.0.15 Sep 9, 2024
@winlinvip winlinvip added the RefinedByAI Refined by AI/GPT. label Sep 9, 2024
@winlinvip winlinvip merged commit b475d55 into ossrs:develop Sep 9, 2024
winlinvip added a commit that referenced this pull request Sep 9, 2024
The heartbeat of SRS is a timer that requests an HTTP URL. We can use
this heartbeat to report the necessary information for registering the
backend server with the proxy server.

```text
SRS(backend) --heartbeat---> Proxy server
```

A proxy server is a specialized load balancer for media servers. It
operates at the application level rather than the TCP level. For more
information about the proxy server, see issue #4158.

Note that we will merge this PR into SRS 5.0+, allowing the use of SRS
5.0+ as the backend server, not limited to SRS 7.0. However, the proxy
server is introduced in SRS 7.0.

It's also possible to implement a registration service, allowing you to
use other media servers as backend servers. For example, if you gather
information about an nginx-rtmp server and register it with the proxy
server, the proxy will forward RTMP streams to nginx-rtmp. The backend
server is not limited to SRS.

---------

Co-authored-by: Jacob Su <suzp1984@gmail.com>
winlinvip added a commit that referenced this pull request Sep 9, 2024
The heartbeat of SRS is a timer that requests an HTTP URL. We can use
this heartbeat to report the necessary information for registering the
backend server with the proxy server.

```text
SRS(backend) --heartbeat---> Proxy server
```

A proxy server is a specialized load balancer for media servers. It
operates at the application level rather than the TCP level. For more
information about the proxy server, see issue #4158.

Note that we will merge this PR into SRS 5.0+, allowing the use of SRS
5.0+ as the backend server, not limited to SRS 7.0. However, the proxy
server is introduced in SRS 7.0.

It's also possible to implement a registration service, allowing you to
use other media servers as backend servers. For example, if you gather
information about an nginx-rtmp server and register it with the proxy
server, the proxy will forward RTMP streams to nginx-rtmp. The backend
server is not limited to SRS.

---------

Co-authored-by: Jacob Su <suzp1984@gmail.com>
@jurry
Copy link
Copy Markdown

jurry commented Feb 4, 2025

Is there any plan tu publish this version in hub.docker.com? I'd like to use the new proxy and register servers via this improved heartbeat (and I use helm charts for the deployment)

Also, when will it be available in Oryx?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

EnglishNative This issue is conveyed exclusively in English. RefinedByAI Refined by AI/GPT.

Development

Successfully merging this pull request may close these issues.

3 participants