Flask App with Random Number Caching using flask-caching

  • Share this:

Code introduction


This code example creates a Flask application that uses the flask-caching library to cache the result of generating a random number. It defines two functions: one for generating and caching a random number, and another for retrieving the cached random number. If there is no random number in the cache, the second function will call the first function to generate one.


Technology Stack : Flask, Flask-Caching, Random

Code Type : Python Flask Application

Code Difficulty : Intermediate


                
                    
from flask import Flask
from flask_caching import Cache
import random

app = Flask(__name__)
cache = Cache(app, config={'CACHE_TYPE': 'SimpleCache'})

# Function to generate a random number and store it in cache
def generate_random_number():
    # Generate a random number between 1 and 100
    number = random.randint(1, 100)
    # Cache the result for 5 minutes
    cache.set('random_number', number, timeout=300)
    return number

# Function to retrieve the cached random number
def get_cached_random_number():
    # Retrieve the cached random number
    number = cache.get('random_number')
    if number is None:
        number = generate_random_number()
    return number

# Flask route to display the cached random number
@app.route('/random')
def random_number():
    return f'The cached random number is: {get_cached_random_number()}'

if __name__ == '__main__':
    app.run(debug=True)