btgogl.blogg.se

Jitsi architecture
Jitsi architecture




jitsi architecture
  1. #Jitsi architecture how to
  2. #Jitsi architecture install
  3. #Jitsi architecture software
  4. #Jitsi architecture code
  5. #Jitsi architecture series

Jitsi provides us a secure and easy to use video conferencing platform.

  • Thanks to the amazing jitsi maintainers and for the wider jitsi community for creating almost all the tooling needed for a large-scale video conferencing solution. Jitsi Architecture - pvgupta24/Jitsi-Meet-Concepts Wiki.
  • Almost all work was done during my internship at Enlume Technologies.
  • Use Terragrunt to apply-all, plan-all and other functions which allow you to manage multiple terraform projects together.
  • For each GCP account you can create a clone of the gcp-account-1 folder and change the creds.
  • We found that running a separate instance of Jigasi for each conference would be too costly for us, and thus have been investigating other ways to achieve recording of the conferences.
  • We also use WebRTC's KITE for a subset of our testings, but found it to be too rigid to work with, and frequent errors in the creation of the workers.
  • Other ways we tried: using a fargate autoscaling setup to create the works for us.
  • We explored multiple ways of creating the selenium grids, but found the cheapest and easiest way to use a grid was delegating it to AWS Device Farm.
  • More details can be read in this excellent post on the jitsi forum.
  • To ensure that we can handle the load we use a Selenium Grid to create participants across multiple conferences.
  • #Jitsi architecture how to

    We are also experimenting with the UDP Buffer Sizes and how to see if we can optimize bandwidth and load that each jvb can handle by increasing the buffer sizes.

    jitsi architecture

    We also profiled the jitsi modules, digging deep into how we can optimize the videobridge using flamegraphs to identify bottlenecks. This allows us to monitor the jvb clusters that we have and how much they are used. All communication here is encrypted by HTTPS.įinally, we setup a grafana dashboard which is quite similar to the one hosted by FFMUC We enabled all jvb communication to use websockets instead of SSRCĮach JVB has a telegraf server that reports machine stats and jvb stats to the influxdb running on the appserver. We use a custom bridge stratergy to make sure our conferences have low latency, ad low network egress costs while doing octo. This was extremely important to support conferences > 60 participants. The max packet rate is set by the creators, and they recommend testing to determine it for the machine you run the jvb on, as mentionedįinally we use OCTO configuration which allows us to split conferences among the jvbs. The load on each jvb is measured using stress = (Incoming Packet Rate + Outgoing Packet Rate) // (Max Packet Rate that the system can handle)

    jitsi architecture

    We have 2 levels, an autoscaling cluster in GCP and a static-size cluster in other Cloud Providers. We then setup a jvb cluster, which are deployed across multiple regions, and multiple cloud providers.

  • Telegraf for reporting stats to influxdb.
  • #Jitsi architecture series

  • InfuxDB for storing stats & time series.
  • jitsi architecture

  • Grafana for displaying stats from the cluster.
  • It is also responsible for managing the audio/video quality and maintaining the WebRTC protocol.įor each customer we have one server running at app_, called the App ServerĮach app server has the following running

    #Jitsi architecture software

  • Jitsi Videobridge is the software videobridge that acts as a SFU (Selective Forwarding Unit) to forward the media streams to other participants in the same conference.
  • Jicofo is server-side focus component which is responsible for auth, participants, rooms, and also assigning conferences to different video-bridges.
  • This image describes the way jitsi components are setup.
  • This means the app is independent of the jitsi setup.
  • App uses Angular and connects to jitsi using lib-jitsi-meet.
  • Customer ABC has the app deployed on where we call abc the app_prefix.
  • We have a single tenant deployment scheme for each of our customers.
  • if you are looking for terraform scripts for the entire jitsi architecture you can also refer to this repo.
  • #Jitsi architecture code

  • All the things mentioned in this document apply to the official docker images as well, though the code might need some changes to make it work.
  • Each docker image was modified to suit our specific use case, but no changes were made that majorly affect the scaling.
  • We created docker images based on docker-jitsi-meet.
  • So I think it’s worth having an ongoing conversation about other free code video conferencing software options, their pros and cons when compared to BBB, and so on.How to integrate and scale Jitsi Video Conferencing

    #Jitsi architecture install

    Jitsi Meet is a software that allows anyone to install the video-conferencing on their. Its most popular parts are Jitsi Meet and its deployment. While it’s wise to standardize the UI early on and change it as little as possible, to avoid confusing users, it may be possible and indeed desirable to swap in a different back-end at some point in the future. We touched on building a business model around an open source product and using a video-conferencing solution to enhance autonomy over ones’ data. As far as I’m aware, op has firmly committed to BBB as the video conferencing server software, with a fork of Greenlight as the front-end.






    Jitsi architecture