Production Ready Shiny - mapic/shiny GitHub Wiki
prod
env
Shiny in a RStudio in Production workshop: https://kellobri.github.io/shiny-prod-book/course-intro.html#workshop-objectives
Hva betyr produksjonsklar?
1. Tester
shinytest
- sammenlikne snapshots (GUI)
- sammenlikne verdier (data/utregninger)
2. Ytelse
- profilering
profvis
- optimalisere app
3. Package miljø
- packages (frozen)
- sørge for at miljøet er likt
- samme versjoner av alle pakker
- løses med Docker, eventuelt K8 i Azure
- hvis pakkeversjoner oppdateres, så må også dette testes (i container)
4. Brukervennlig design
- css regler, etc.
- vi kan lage standardiserte maler for designuttrykk
- eksempel:
width: 50%;
text-align: left;
margin: 0 auto;
5. Monitorering
- logging av brukere
Anbefalt CI/CD arbeidsflyt
- Fytte alt til Azure (devops, server VMs)
- Pushe R app kode med Git istedet for SFTP.
- Når kode pushes, så kjører vi automatiske tester
- Generelt oppsett:
- Når testene er OK, så kan vi legge koden over til
STAGING
ogPROD
servere
Verdt å vurdere
- Hvor ofte vil appene oppdateres, og hvor omfattende vil endringene være?
- Hvor ofte vil nye apper publiseres?
- Hvor kompliserte er appene?
- Hvor kommer dataen fra, og vil denne endres mye?