Stack
Seize TV, c'est une plateforme de live streaming développée in-house sur des technos à jour en 2019.
Backend
- Architecture full micro-services
- Micro-services écrits en go
- Micro-services hébérgés derrière une API Gateway
- Communication du coté back en GRPC
- Communication du coté front en GraphQL
- Redis par micro-service
- MongoDB par micro-service
- Broker RabbitMQ pour communication inter micro-services
- Backoffice via un bot Slack maison
Architecture
- Kubernetes
- Service mesh Istio (en cours de déploiement)
- Déploiement de l'infra via Terraform
- Déploiements produit via Spinnaker et Helm
- CI/CD via CircleCI et GCR
- Hébérgement du code sur 93 repositories sur github.com/Seize
- Logs avec Prometheus et Grafana
- Front immuable hébérgé sur GCS
Frontend
- Vue.js
- Lazy loading des components
- Discussion GraphQL avec l'API Gateway
Mobile
- React Native
- Natif Java et Objective-C pour le player et le broadcaster
- Discussion GraphQL avec l'API Gateway
Video
- Pod Ingress RTMP en go loadé dynamiquement à la connexion via k8s
- Load-balancer voyager devant les sources handlers
- Pod Studio de mixage vidéo temps réel sur GPU k80 codé en C++ basé sur libobs.c
- Pod transcode HLS ABR en go sur CDN Google
- Pod restream RTMP en go
Outils externes
- GitHub
- CircleCI
- Sendgrid
- Algolia
- Firebase
- Headway
- Zendesk
- Statuspage
- Pingdom
- JIRA
- Product board
- Typeform
- Marvel