キャッシュされたサーバーを使用してDjangoのビューサーバーが大幅に圧力を低減することができ、要求の少ない実シーンデータをキャッシュに使用されます。
Djangoのローカルキャッシュを使用します
コンフィギュレーション・キャッシュに1 settings.py
=キャッシュ{ ' デフォルト' { ' BACKEND ':' django.core.cache.backends.locmem.LocMemCache '、 #は、ローカルキャッシュ指定 ' LOCATION ':' UNIQUE-data_center_LocMemCache '、 ' TIMEOUT ':300、 #1 キャッシュ・タイムアウトを時間(デフォルトは300秒で、いずれも無期限に示していない) 「OPTIONS 」:{ 「MAX_ENTRIES 」:300、 #のキャッシュエントリの最大数(デフォルト300) "CULL_FREQUENCY "3 ,: #、すなわちキャッシュ、キャッシュを除く数比の最大数に達した後:/ CULL_FREQUENCY 1(デフォルト3) } } }
デコレータ使用されるキャッシュの観点から2
@cache_page(15 ) DEF stock_detail(リクエスト、PK): TAB_NAME = ' stock_ ' + PK stock_mod = new_stock(TAB_NAME) #查询 場合 request.method == ' GET ' : 限界 = request.GET.get(' 限界' ) オフセット = request.GET.get(' オフセット' ) の合計 = stock_mod.objects.count() #结果按日期降序排列 データリスト= stock_mod.objects.all()。ORDER_BY(' -trade_date ')INT(オフセット):INT(オフセット)+の整数(限界)] json_list = [] インポートJSON #返回JSON字符串 用データにおけるデータリスト: json_dict = model_to_dict(データ) json_list.append(json_dict) 結果 = dictの() 行 = リスト() 結果[ ' 総' ] = 総 結果[ ' 行' ] = json_list logger.info(「在庫リストを取得します」) を返す jsonResponseを(結果、安全=偽)
@cache_page(15)が15秒のキャッシュの有効期限を指定し、指定されていない場合、デフォルトのキャッシュ時間setting.py構成。