---
slug: "ingress-uwsgi-timeout-threshold"
title: "Kubernetes Ingress + Uwsgi の構成でスローレスポンスをタイムアウトさせないために確認する項目"
description: "Kubernetes Ingress + uWSGI で遅いレスポンスがタイムアウトしないようにするために確認するタイムアウト設定一覧 (Ingress / uWSGI / Django / nginx 各層)。"
url: "https://www.ytyng.com/blog/ingress-uwsgi-timeout-threshold"
publish_date: "2022-08-19T10:51:48Z"
created: "2022-08-19T10:51:48Z"
updated: "2026-05-11T13:13:04.686Z"
categories: ["kubernetes"]
keywords: ""
featured_image_url: "https://media.ytyng.com/resize/20230812/9f6112f3ea594ef1bcef3cbcc1a9888a.png.webp?width=768"
has_video: false
has_music: false
video_urls: []
music_urls: []
lang: "ja"
---

# Kubernetes Ingress + Uwsgi の構成でスローレスポンスをタイムアウトさせないために確認する項目

<p>Kubernetes で、 Nginx Ingress Controller を使っていて、Pod 内のアプリケーションサーバーに Uwsgi を使っているケースで、レスポンスの遅いサービスがある場合に、タイムアウトさせないために設定を確認するポイントです。</p>
<p>これらの設定を伸ばしておかないと、 502 エラー もしくは 504 エラーとなります。</p>
<p></p>
<h2>1. Ingress</h2>
<pre>apiVersion: networking.k8s.io/v1<br />kind: Ingress<br />metadata:<br />  name: my-app<br />  namespace: my-namespace<br />  annotations:<br />    nginx.ingress.kubernetes.io/proxy-connect-timeout: '900'<br />    nginx.ingress.kubernetes.io/proxy-send-timeout: '900'<br />    nginx.ingress.kubernetes.io/proxy-read-timeout: '900'</pre>
<p></p>
<h2>2. uwsgi.ini</h2>
<pre>[uwsgi]<br />...<br />socket-timeout = 600<br />http-timeout = 600<br />harakiri = 600</pre>
<p></p>
<h2>計測用のビュー</h2>
<pre>import time<br />from django import http<br />from django.views import View<br /><br /><br />class DevSleepView(View):<br />    """<br />    ロングスリープするビュー。タイムアウトの確認用<br />    /dev/sleep/?seconds=60<br />    """<br /><br />    def get(self, request, *args, **kwargs):<br />        sleep_time = int(request.GET.get('seconds', 30))<br />        start = timezone.now()<br />        time.sleep(sleep_time)<br />        end = timezone.now()<br />        return http.HttpResponse('{} - {}, Slept {}seconds.'.format(<br />            start.strftime('%Y-%m-%d %H:%M:%S'),<br />            end.strftime('%H:%M:%S'),<br />            sleep_time))</pre>
