juxiangjun / go-oryx

The go-oryx is SRS++, focus on real-time live streaming cluster.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

go-oryx

CircleCI Gitter

Oryx is next generation media streaming server, extract service to processes which communicates over http with each other, to get more flexible, low latency, programmable and high maintainable server.

Oryx will implement most of features of srs, which is industrial-strength live streaming cluster, for the best conceptual integrity and the simplest implementation. In another words, oryx is next-generation srs, the srs-ng.

Architecture

The architecture of oryx is a group of isolate processes:

  1. shell which exec other processes, the frontend of oryx.
  2. rtmplb rtmp frontend of oryx, proxy to backend streaming workers.
  3. httplb http flv/hls+ frontend of oryx, proxy to backend streaming workers.
  4. apilb http api frontend of oryx, proxy to backend api.
  5. httpx-static http and https static file server over lego/acme of letsencrypt.
  6. srs the streaming worker, other stream worker is also ok.
                         +----------+
                    +----+  API LB  +
                    |    +----------+
                    |
                    |    +----------+
                    +----+  HTTP LB |
                    |    +----------+
                    |
+---------+         |    +----------+
|  Shell  +--exec->-+----+  RTMP LB |
+---------+         |    +----------+
                    |
                    |    +------------+
                    +----+ SRS Worker |
                         +------------+

Winlin 2016.07.09

About

The go-oryx is SRS++, focus on real-time live streaming cluster.

License:MIT License


Languages

Language:Go 99.2%Language:Shell 0.8%