Slide 21
Slide 21 text
Replicated Web Interface
from bottle import route, run
from redislite import StrictRedis
from redis_collections import List
redis_connection = StrictRedis('/tmp/temp.rdb', serverconfig={'slaveof': 'notebook.local 8002', 'masterauth': 'secret'})
temp_readings = List(redis=redis_connection, key='temp_readings')
@route('/current_temp')
def current_temp():
return str(temp_readings[-1])
@route('/average_temp/')
@route('/average_temp/')
def average_temp(seconds=3600):
seconds=int(seconds)
readings=list(temp_readings)[-seconds:]
return str(sum(readings)/len(readings))
run(host='0.0.0.0', port=8080, debug=True)