라우터에서 I/O 제한 시간 구성

<ph type="x-smartling-placeholder"></ph> 현재 Apigee Edge 문서를 보고 있습니다.
Apigee X 문서.
정보

<ph type="x-smartling-placeholder">

이 문서에서는 Apigee Edge 라우터에 I/O 제한 시간을 구성하는 방법을 설명합니다.

라우터의 I/O 제한 시간은 라우터가 메시지 프로세서로부터 받은 응답을 전송합니다. 라우터의 I/O 시간 제한 기본값은 57초입니다.

라우터의 I/O 제한 시간은 기본값인 57초에서 늘리거나 줄일 수 있습니다. 선택하세요. 다음과 같은 방법으로 구성할 수 있습니다.

  • 가상 호스트
  • 라우터에서

다음 속성은 라우터의 I/O 시간 제한을 제어합니다.

속성 이름 위치 설명
proxy_read_timeout 가상 호스트

라우터가 연결을 설정하고 요청을 보낸 후 메시지 프로세서.

이 제한 시간 내에 메시지 프로세서로부터 응답이 없으면 라우터 시간이 초과되었습니다.

기본적으로 이 속성은 라우터의 conf_load_balancing_load.balancing.driver.proxy.read.timeout 속성 이 기본값은 57초입니다.

이 속성이 특정 가상 호스트에 대한 새 제한 시간 값으로 수정되면 해당 가상 호스트를 사용하는 API 프록시만 영향을 받습니다.

conf_load_balancing_load.balancing.driver.proxy.read.timeout 라우터

라우터가 연결을 설정하고 요청을 보낸 후 메시지 프로세서.

이 제한 시간 내에 메시지 프로세서로부터 응답이 없으면 라우터 시간이 초과되었습니다.

이 속성은 이 라우터의 모든 가상 호스트에 사용됩니다.

이 속성의 기본값은 57초입니다.

이 속성은 다음 페이지에 설명된 대로 수정할 수 있습니다. 아래의 라우터에서 I/O 시간 제한 구성을 사용하거나 덮어쓰면 됩니다. 가상 호스트 수준에서 proxy_read_timeout 속성을 설정하여 이 값을 지정합니다.

다음 표기법:

ms: milliseconds
s:  seconds (default)
m:  minutes
h:  hours
d:  days
w:  weeks
M:  months (length of 30 days)
y:  years (length of 365 days)
conf_load_balancing_load.balancing.driver.nginx.upstream_next_timeout 라우터

라우터가 모든 메시지의 응답을 받을 때까지 기다리는 총 시간을 지정합니다. 연결을 설정하고 각 메시지에 요청을 보낸 후의 프로세서 프로세서.

이는 Edge 설치에 여러 메시지 프로세서가 있고 오류 발생 시 재시도가 활성화됩니다. 값은 다음 중 하나입니다.

  • conf_load_balancing_load.balancing.driver.proxy.read.timeout의 현재 값
  • 기본값 57초

conf_load_balancing_load.balancing.driver.proxy.read.timeout 속성의 경우 기본값 (초) 이외의 시간 간격을 지정할 수 있습니다.

시작하기 전에

이 문서의 단계를 사용하기 전에 다음 주제를 이해해야 합니다.

를 통해 개인정보처리방침을 정의할 수 있습니다. <ph type="x-smartling-placeholder">

가상 호스트에서 I/O 제한 시간 구성

이 섹션에서는 중요한 부분입니다. I/O 제한 시간은 다음을 통해 가상 호스트에서 구성할 수 있습니다. 속성 proxy_read_timeout - I/O 제한 시간 값을 초 단위로 나타냅니다.

<ph type="x-smartling-placeholder">를 통해 개인정보처리방침을 정의할 수 있습니다. <ph type="x-smartling-placeholder">

다음 방법 중 하나를 사용하여 가상 호스트를 구성할 수 있습니다.

  • Edge UI
  • Edge API

Edge UI

<ph type="x-smartling-placeholder">

Edge UI를 사용하여 가상 호스트를 구성하려면 다음 안내를 따르세요.

  1. Edge UI에 로그인합니다.
  2. 관리 > 가상 호스트로 이동합니다.
  3. 변경하려는 특정 환경을 선택합니다.
  4. 새 서버를 구성할 특정 가상 호스트를 선택합니다. I/O 제한 시간 값입니다.
  5. 속성에서 프록시 읽기 시간 제한 값(초)을 업데이트합니다.

    예를 들어 시간 제한을 120초로 변경하려면 다음 그림:

    프록시 읽기 시간 제한 값 120

  6. 변경사항을 저장합니다.

Edge API

Edge API를 사용하여 가상 호스트를 구성하려면 다음 안내를 따르세요.

  1. 다음을 사용하여 현재 가상 호스트 구성을 가져옵니다. <ph type="x-smartling-placeholder"></ph> 아래와 같이 가상 호스트 API를 가져옵니다.

    퍼블릭 클라우드 사용자

    curl -v -X GET https//api.enterprise.apigee.com/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u <username>
                    

    Private Cloud 사용자

    curl -v -X GET http://<management-host>:<port #>/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u <username>
                    

    각 항목의 의미는 다음과 같습니다.

    {organization-name}는 조직의 이름입니다.

    {environment-name}은 환경 이름입니다.

    {virtualhost-name}은 가상 호스트의 이름입니다.

    샘플 virtualhost 구성

        {
          "hostAliases": [
            "api.myCompany,com"
          ],
          "interfaces": [],
          "listenOptions": [],
          "name": "secure",
          "port": "443",
          "retryOptions": [],
          "sSLInfo": {
            "ciphers": [],
            "clientAuthEnabled": "false",
            "enabled": "true",
            "ignoreValidationErrors": false,
            "keyAlias": "myCompanyKeyAlias",
            "keyStore": "ref://myCompanyKeystoreref",
            "protocols": []
          },
          "useBuiltInFreeTrialCert": false
        }
    
  2. 기존 가상 호스트 구성에 proxy_read_timeout 속성을 추가합니다. properties 아래의 JSON 페이로드(초 단위 값)

    예를 들어 I/O 제한 시간을 120초로 변경하려면 properties를 추가합니다. 코드 블록을 찾습니다.

    업데이트된 가상 호스트 구성 샘플

    {
      "hostAliases": [
        "api.myCompany,com",
      ],
      "interfaces": [],
      "listenOptions": [],
      "name": "secure",
      "port": "443",
      "retryOptions": [],
      "properties": {
        "property": [
          {
            "name": "proxy_read_timeout",
            "value": "120"
          }
        ]
      },
      "sSLInfo": {
        "ciphers": [],
        "clientAuthEnabled": "false",
        "enabled": "true",
        "ignoreValidationErrors": false,
        "keyAlias": "myCompanyKeyAlias",
        "keyStore": "ref://myCompanyKeystoreref",
        "protocols": []
      },
      "useBuiltInFreeTrialCert": false
    }
    
  3. 업데이트된 가상 호스트 구성을 파일에 저장합니다. 예를 들면 virtualhost-payload.json입니다.
  4. 다음을 사용하여 virtualhost 구성을 변경사항으로 업데이트합니다. <ph type="x-smartling-placeholder"></ph> 가상 호스트 API를 다음과 같이 업데이트합니다.

    퍼블릭 클라우드 사용자

    curl -v -X POST Content-Type: application/json
    https://api.enterprise.apigee.com/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -d @virtualhost-payload.json -u <username>
                

    Private Cloud 사용자

    curl -v -X POST Content-Type: application/json
    http://<management-host>:<port #>/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -d @virtualhost-payload.json -u <username>
                

    각 항목의 의미는 다음과 같습니다.

    {organization-name}는 조직의 이름입니다.

    {environment-name}은 환경 이름입니다.

    {virtualhost-name}은 가상 호스트의 이름입니다.

가상 호스트의 I/O 시간 제한 확인

이 섹션에서는 에지 API를 사용하여 가상 호스트를 만들 수 있습니다

  1. 다음을 실행합니다. <ph type="x-smartling-placeholder"></ph> 가상 호스트 API를 가져와서 아래와 같이 virtualhost 구성을 가져옵니다.

    퍼블릭 클라우드 사용자

    curl -v -X GET https://api.enterprise.apigee.com/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u <username>
                  

    Private Cloud 사용자

    curl -v -X GET http://<management server-host>:<port #>/v1/organizations/{organization-name}/environments/{environment-name}/virtualhosts/{virtualhost-name} -u <username>
                  

    각 항목의 의미는 다음과 같습니다.

    {organization-name}는 조직의 이름입니다.

    {environment-name}은 환경 이름입니다.

    {virtualhost-name}은 가상 호스트의 이름입니다.

  2. 속성 proxy_read_timeout 가 새 값으로 설정되었는지 확인합니다.

    업데이트된 가상 호스트 구성 샘플

    {
      "hostAliases": [
        "api.myCompany,com",
      ],
      "interfaces": [],
      "listenOptions": [],
      "name": "secure",
      "port": "443",
      "retryOptions": [],
      "properties": {
        "property": [
          {
            "name": "proxy_read_timeout",
            "value": "120"
          }
        ]
      },
      "sSLInfo": {
        "ciphers": [],
        "clientAuthEnabled": "false",
        "enabled": "true",
        "ignoreValidationErrors": false,
        "keyAlias": "myCompanyKeyAlias",
        "keyStore": "ref://myCompanyKeystoreref",
        "protocols": []
      },
      "useBuiltInFreeTrialCert": false
    }
    

    위의 예에서 proxy_read_timeout는 새로운 값인 120초로 변경합니다.

  3. proxy_read_timeout,의 이전 값이 계속 표시되면 다음을 확인하세요. 가상 호스트에서 I/O 제한 시간 구성에 설명된 모든 단계를 올바르게 따랐습니다. 놓친 단계가 있으면 모든 단계를 올바르게 다시 반복합니다.
  4. 여전히 I/O 제한 시간을 수정할 수 없으면 Apigee Edge 지원팀에 문의하세요.

라우터에서 I/O 제한 시간 구성

이 섹션에서는 라우터에서 I/O 시간 제한을 구성하는 방법을 설명합니다. I/O 제한 시간은 라우터 속성을 통해 구성됨 conf_load_balancing_load.balancing.driver.proxy.read.timeout는 다음을 나타냅니다. I/O 시간 제한 값(초)입니다.

<ph type="x-smartling-placeholder">를 통해 개인정보처리방침을 정의할 수 있습니다. <ph type="x-smartling-placeholder">

라우터에서 I/O 시간 제한을 구성하려면 다음 단계를 따르세요.

  1. 라우터 머신의 편집기에서 다음 파일을 엽니다. 아직 없으면 새로 만듭니다.
    /opt/apigee/customer/application/router.properties
    

    예를 들어 vi에서 다음 명령어를 입력합니다.

    vi /opt/apigee/customer/application/router.properties
    
  2. properties 파일에 다음 형식의 줄을 추가하여 time_in_seconds 값:
  3. conf_load_balancing_load.balancing.driver.proxy.read.timeout=time_in_seconds
    

    예를 들어 라우터의 I/O 시간 제한을 120초로 변경하려면 다음 줄을 추가합니다.

    conf_load_balancing_load.balancing.driver.proxy.read.timeout=120
    

    I/O 제한 시간(분)을 수정할 수도 있습니다. 예를 들어 제한 시간을 다음 줄을 추가합니다.

    conf_load_balancing_load.balancing.driver.proxy.read.timeout=2m
    
    드림 <ph type="x-smartling-placeholder">
  4. 변경사항을 저장합니다.
  5. 아래와 같이 이 속성 파일을 apigee 사용자가 소유하고 있는지 확인합니다.
    chown apigee:apigee /opt/apigee/customer/application/router.properties
    
  6. 아래와 같이 라우터를 다시 시작합니다.
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
    
  7. 라우터가 두 개 이상인 경우 모든 라우터에서 위 단계를 반복합니다.

라우터의 I/O 시간 제한 확인

이 섹션에서는 라우터.

토큰을 conf_load_balancing_load.balancing.driver.proxy.read.timeout: I/O 제한 시간 설정 라우터에서 실제 속성 proxy_read_timeout가 새 값으로 설정되어 있습니다.

  1. 다음에서 속성 proxy_read_timeout 검색: /opt/nginx/conf.d 디렉터리에서 이 디렉터리가 새 값을 다음과 같이 업데이트합니다.
    grep -ri "proxy_read_timeout" /opt/nginx/conf.d
    
  2. 새 I/O 시간 제한 값이 라우터에 성공적으로 설정되었다면 위의 명령은 모든 가상 호스트 구성 파일에 새 값이 표시됩니다.

    다음은 grep 명령어를 실행했을 때 I/O 제한 시간은 120초입니다.

    /opt/nginx/conf.d/0-default.conf:proxy_read_timeout 120;
    /opt/nginx/conf.d/0-edge-health.conf:proxy_read_timeout 1s;
    

    위의 출력 예에서 proxy_read_timeout 속성이 새 값 120으로 설정된 0-default.conf의 구성 파일을 제공합니다. 이는 I/O 제한 시간을 나타냅니다. 라우터에서 120초로 구성됩니다.

    <ph type="x-smartling-placeholder">
  3. proxy_read_timeout 속성의 이전 값이 계속 표시되면 아래에 설명된 모든 단계를 따랐는지 확인합니다. 라우터에서 I/O 시간 제한 구성을 올바르게 해야 합니다. 만약 놓친 부분이 있는 경우 모든 단계를 올바르게 다시 반복합니다.
  4. 여전히 I/O 제한 시간을 수정할 수 없으면 Apigee Edge 지원팀에 문의하세요.

다음 단계

메시지 프로세서에서 I/O 시간 제한 구성에 대해 알아보기