-
Stas Krichevsky
-
Kontera Architecture
-
Pipeline Wrokers
- talk to each other asynchronously
- Distributed across the system
-
Scheduled workers
- Distributed “cron-like” tiny workers
- Singletons
-
Usage
- Maintenance tasks
- Report generation
- Model updates for services
-
Frontends
- Internal/external UI applications
- External APIs
- Diagnostic tools
- Demo applications
-
Unix Principles Applied
-
Small is beautiful
- Check dependencies of 3rd party lib
- Prefer 3rd small party libs
-
Code Minimalism
- Less code ➙ less bugs
-
Easier to
- maintain
- combine
- replace
-
Make each program do 1 thing well
- Focus during development
- Simpler API
- Less dependencies
- Make each program a filter
-
Choose portability over efficiency
- JSON over binary
- HTPP over proprietary TCP
- Build a prototype ASAP