Fractal Architectures
twitter: @lvh email: _@lvh.io
web apps without centralised data stores
fractal
- app that has everything required to deal with requests
- server has multiple instances of app
- multiple servers
- n*k databases!
- don’t we want to avoid sharding?
- well - if we plan to architect this way, we can work with it and it has advantages
- helps if most users are working with own data - eg email web UI
- practicality beats purity - so leave SMTP as external service (eg mailgun)
- persistence - use sqlite for short term instance (or axiom - object store built on top of sqlite)
- aside - axiom is really nice, simple, sqlite only, does migrations
- lvh/axiombook - docs
- alternatives - redis, postgres (each instance has own db) ...
- long term storage - need it for backup, load spreading, etc - S3 etc - dropbox?!?
- manhole - ssh to server, python shell with access to full server objects
- using twisted for async (single threaded) as axiom blocks - but sqlite is really fast
- local - really low latency
- computation is rarely the bottleneck - getting data to right place at right time is
problems
- some of my data doesn’t fit
-
- querying across stores is hard
-