我是靠谱客的博主 谨慎雪糕,最近开发中收集的这篇文章主要介绍flask取mysql数据很慢,Python的Flask速度慢?用缓存技术加速!,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

在Web服务中,使用缓存是一种加速程序运行的重要技术。

这是因为,不同的存储介质,是有速度上很大的差异的,比如一个Web服务会使用典型的三级存储技术:

MySQL:底层数据存储,保证数据的准确一致性;

Redis:缓存第一层,分布式内存数据库,比MySQL快很多;

本地缓存:就是在Web服务本地内存中缓存,速度更快;

本文介绍Python程序怎样在本地内存缓存数据的方法,介绍两种方式:

方法1:使用Python自带的functools.lru_cache

但是functools.lru_cache不支持按时间的过期,比如5秒钟缓存生效重新拉取,因此进行如下的改造:

把这个代码放到一个文件里

from functools import lru_cache, wrapsfrom datetime import datetime, timedeltadef timed_lru_cache(seconds: int, maxsize: int = 128):def wrapper_cache(func):func = lru_cache(maxsize=maxsize)(func)func.lifetime = timedelta(seconds=seconds)func.expiration = datetime.utcnow() + func.lifetime@wraps(func)def wrapped_func(*args, **kwargs):if datetime.utcnow() >= func.expiration:func.cache_clear()func.ex

最后

以上就是谨慎雪糕为你收集整理的flask取mysql数据很慢,Python的Flask速度慢?用缓存技术加速!的全部内容,希望文章能够帮你解决flask取mysql数据很慢,Python的Flask速度慢?用缓存技术加速!所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(42)

评论列表共有 0 条评论

立即
投稿
返回
顶部