From e55982cb931af55b8de5e2e59bf3b6298d48ad35 Mon Sep 17 00:00:00 2001 From: Eric Gauzens Date: Sun, 25 Aug 2024 14:24:34 -0400 Subject: [PATCH] added caching to get featured dataset endpoint --- app/main.py | 4 +++- requirements.txt | 1 + 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/app/main.py b/app/main.py index 57a5ae0..5400542 100644 --- a/app/main.py +++ b/app/main.py @@ -31,6 +31,7 @@ from pennsieve.base import UnauthorizedException as PSUnauthorizedException from PIL import Image from requests.auth import HTTPBasicAuth +from flask_caching import Cache from app.scicrunch_requests import create_doi_query, create_filter_request, create_facet_query, create_doi_aggregate, create_title_query, \ create_identifier_query, create_pennsieve_identifier_query, create_field_query, create_request_body_for_curies, create_onto_term_query, \ @@ -55,6 +56,7 @@ app = Flask(__name__) # set environment variable app.config["ENV"] = Config.DEPLOY_ENV +cache = Cache(app, config={'CACHE_TYPE': 'SimpleCache', 'CACHE_DEFAULT_TIMEOUT': 300}) CORS(app) @@ -893,8 +895,8 @@ def datasets_by_project_id(project_id): def get_featured_datasets_identifiers(): return {'identifiers': get_featured_datasets()} - @app.route("/get_featured_dataset", methods=["GET"]) +@cache.cached(timeout=300) def get_featured_dataset(): featured_dataset_id = get_featured_dataset_id_table_state(featuredDatasetIdSelectorTable)["featured_dataset_id"] if featured_dataset_id == -1: diff --git a/requirements.txt b/requirements.txt index 02b1da7..00a535f 100644 --- a/requirements.txt +++ b/requirements.txt @@ -39,3 +39,4 @@ oauth2client==4.1.3 algoliasearch==2.6.2 contentful==1.13.1 contentful_management==2.11.0 +Flask-Caching==2.3.0