

AWS Mainframe Modernization Service(관리형 런타임 환경 환경 환경)는 더 이상 신규 고객에게 공개되지 않습니다. AWS Mainframe Modernization Service(관리형 런타임 환경 환경)와 유사한 기능은 AWS Mainframe Modernization Service(자체 관리형 환경)를 참조하세요. 기존 고객은 정상적으로 서비스를 계속 이용할 수 있습니다. 자세한 내용은 [AWS Mainframe Modernization 가용성 변경을](https://docs.aws.amazon.com/m2/latest/userguide/mainframe-modernization-availability-change.html) 참조하세요.

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 메인프레임 런타임에 대해 AWS 변환에서 사용 가능한 Redis 캐시 속성
<a name="ba-runtime-redis-configuration"></a>

이 문서를 사용하여 Gapwalk 구성, 지원되는 Redis 속성 및 `application-main.yml` 파일이 Redis 캐시의 보안 암호 ARN을 참조하는 방법과 함께 메인프레임 런타임용 AWS 변환의 Redis 캐시에 대해 알아볼 수 있습니다.

## 메인프레임 런타임용 AWS 변환의 Redis 캐시
<a name="ba-redis-caches-in-runtime"></a>

Redis 서버는 다음과 같은 메인프레임 Gapwalk용 AWS 변환 애플리케이션의 다양한 기능에 대한 캐시로 사용할 수 있습니다.


****  

| AWS Redis 캐싱을 사용하는 메인프레임 런타임 기능의 변환 | 설명 | 
| --- | --- | 
| Blusam 캐시 | 배치 페이로드에서 발생하는 쓰기 집약적인 워크로드를 최적화하기 위해 쓰기 뒤 전략을 사용하여 레코드를 효율적으로 읽기 위한 Redis Blusam 캐시입니다. | 
| Blusam 잠금 | 데이터세트 및 레코드의 분산 잠금을 위한 캐시입니다. | 
| 데이터세트 카탈로그 | 카탈로그 데이터세트 캐시입니다. | 
| 세션 캐시 | HttpSession을 위한 Redis 캐시입니다. 캐시는 사용자 이름, Angular 프런트엔드와의 상호 작용 상태 및 특정 '방언'(BMS, MFS, AS400) 정보를 저장합니다. | 
| 세션 트래커 | 연결된 username 및 session-creation-time 정보가 포함된 활성 세션의 캐시입니다. | 
| JICS 캐시 | JICS 리소스 정의를 위한 캐시입니다. | 
| TS 대기열 | TS 대기열용 스토리지입니다. | 
| JCL 체크포인트 |  JCL 체크포인트 캐시입니다. | 
| Gapwalk 파일 잠금 | 작업별 분산 파일 잠금을 위한 캐시입니다. | 
| Blu4iv 잠금 | Blu4iv 레코드 잠금을 위한 스토리지입니다. | 

## Redis Gapwalk 구성
<a name="ba-runtime-redis-gapwalk-configuration"></a>

`redis`가 캐싱 메커니즘으로 지정되고 특정 기능에 Redis 구성이 제공되지 않는 경우 글로벌 Redis 구성이 사용됩니다. 이 구성을 사용하면 여러 Redis 캐시에 동일한 구성을 동시에 사용할 수 있습니다.

다음 예제에서는 데이터 Blusam 세트 캐시와 JICS 캐시가 `gapwalk.redis` (`redis.server1`) 구성을 사용합니다. 캐시 유형이 로 설정`redis`되고 및 [JICS 리소스 정의](#ba-runtime-redis-jics-cache)에 암시적 Redis 속성이 지정되지 않기 때문입니다[JICS 리소스 정의](#ba-runtime-redis-jics-cache). 그러나 Redis 속성이 명시적으로 정의되므로 Blusam 잠금 캐시는 다른 Redis 구성(`redis.server2`)을 사용합니다.

```
...
 
 gapwalk:
   redis:
     hostName: redis.server1
 	port: 6379
 ...
 
 bluesam:
   # Redis bluesam cache
   cache: redis
   # Redis locks cache
   locks:
     cache: redis
 	hostName: redis.server2
 	port: 6379
 ...
 # Redis jics cache
 jics:
   resource-definitions:
     store-type: redis
 ...
```

 글로벌 Redis 구성을 활성화하려면 `main-application.yml`에 다음 구성을 추가합니다.

```
 gapwalk:
   redis:
     hostName: localhost
     port: 6379
     mode: standalone                        # Optional
     username:                               # Optional
     password: ""                            # Optional
     useSsl: false                           # Optional
     database: 0                             # Optional
     maxTotal: 128                           # Optional
     maxIdle: 128                            # Optional
     minIdle: 16                             # Optional
     testOnBorrow: true                      # Optional
     testOnReturn: true                      # Optional
     testWhileIdle: true                     # Optional
     testOnCreate: true                      # Optional
     minEvictableIdleTimeMillis: 60000       # Optional
     timeBetweenEvictionRunsMillis: 30000    # Optional
     numTestsPerEvictionRun: -1              # Optional
     blockWhenExhausted: true                # Optional
     nettyThreads: 32                        # Optional
     subscriptionsPerConnection: 10          # Optional
     subscriptionConnectionPoolSize: 100     # Optional
     pageSizeInBytes: 8192                   # Optional
     readTimeout: 2000                       # Optional
```

## 지원되는 Redis 속성
<a name="ba-runtime-redis-supported-properties"></a>

다음 표에는 메인프레임 런타임의 AWS 변환에서 글로벌 및 특정 Redis 캐시에 지원되는 Redis 속성이 나와 있습니다.


****  

| 속성 이름 | 필수? | 설명 | 값 | 기본값 | 
| --- | --- | --- | --- | --- | 
| mode | 아니요 | Redis 실행 모드입니다. | standalone \| cluster | standalone | 
| hostname | 예 | Redis 서버의 호스트 이름 또는 IP 주소입니다. | 문자열 | null | 
| port | 예 | Redis 서버가 연결을 수신 대기하는 포트 번호입니다. | int | null | 
| username | 아니요 | 인증을 위한 사용자 이름입니다. | 문자열 | null | 
| password | 아니요 | 인증에 사용할 암호입니다. | 문자열 | 빈 문자열 | 
| useSsl  | 아니요 | Redis 연결에 대해 SSL/TLS 암호화를 활성화할지 여부를 지정합니다. | 부울 | false | 
| database | 아니요 | 사용할 Redis 데이터베이스 번호입니다. Redis는 여러 논리적 데이터베이스를 지원하며 이 속성은 사용할 데이터베이스를 지정합니다. | int | 0 | 
| maxTotal | 아니요 | Redis 연결 풀에 허용되는 최대 연결 수입니다. | int  | 128 | 
| maxIdle | 아니요 | Redis 연결 풀에 허용되는 최대 유휴 연결 수입니다. | int | 128 | 
| minIdle | 아니요 | Redis 연결 풀에서 유지할 최소 유휴 연결 수입니다. | int | 16 | 
| testOnBorrow  | 아니요 | 풀에서 연결을 임시로 가져오기 전에 연결을 검증할지 여부를 나타내는 부울 값입니다. | 부울 | true | 
| testOnReturn  | 아니요 | 연결을 풀로 반환하기 전에 연결을 검증할지 여부를 나타내는 부울 값입니다. | 부울 | true | 
| testWhileIdle  | 아니요 | 풀에서 유휴 연결을 주기적으로 검증할지 여부를 나타내는 부울 값입니다. | 부울 | true | 
| testOnCreate  | 아니요 | 연결이 생성될 때 연결을 검증할지 여부를 나타내는 부울 값입니다. | 부울 | true | 
| minEvictableIdleTimeMillis  | 아니요 | 제거하기 전에 유휴 연결이 풀에 남아 있어야 하는 최소 시간(밀리초)입니다. | long | 60000L  | 
| timeBetweenEvictionRunsMillis  | 아니요 | 유휴 연결 제거기 스레드 연속 실행 사이의 시간(밀리초)입니다. | long | 30000L | 
| numTestsPerEvictionRun  | 아니요 | 유휴 연결 제거기 스레드를 실행할 때마다 테스트할 최대 연결 수입니다. | int | -1 | 
| blockWhenExhausted  | 아니요 | 풀이 소진될 때 연결을 차단하고 사용할 수 있을 때까지 기다릴지 여부를 나타내는 부울 값입니다. | 부울 | true | 
| nettyThreads  | 아니요 | Redis 연결을 처리하는 데 사용할 Netty 스레드 수입니다. | int | 32 | 
| subscriptionsPerConnection  | 아니요 | Redis 연결당 허용되는 최대 구독 수입니다. | int | 10 | 
| subscriptionConnectionPoolSize  | 아니요 | Redis 구독 연결 풀에 허용되는 최대 연결 수입니다. | int | 100 | 
| pageSizeInBytes  | 아니요 | Redis 작업의 기본 페이지 크기(바이트)입니다. | long | 262144000  | 
| readTimeout | 아니요 | Redis 작업에 대한 밀리초 단위의 읽기 제한 시간입니다. | long | 2000 | 
| timeToLiveMillis | 아니요 | 만료 및 제거된 것으로 간주되기 전에 캐시 항목이 캐시에 남아 있는 기간(밀리초)입니다. 이 속성을 지정하지 않으면 캐시 항목이 기본적으로 자동으로 만료되지 않습니다. | long | -1 | 
| useAsyncBatch | 아니요 | Redis 대량 쓰기 작업에 대해 비동기식 실행을 활성화하여 성능을 개선합니다. false로 설정하면 동기식 실행 모드로 돌아갑니다. | 부울 | true | 
| useBatchInMemoryAtomic | 아니요 | Redis 배치 읽기 작업에 대해 In-memory-atomic 모드를 활성화합니다. false로 설정하면 기본 인 메모리 배치 모드로 돌아갑니다. | 부울 | false | 
| connectionPoolSize | 아니요 | Redis 서버에 대한 Redisson 클라이언트 연결에 사용되는 연결 풀의 크기입니다. | int | 64 | 
| connectionMinimumIdleSize | 아니요 | Redisson이 연결 풀에서 유지할 유휴 연결의 최소 수입니다. | int | 24 | 
| idleConnectionTimeout | 아니요 | 풀의 유휴 연결이 닫히는 밀리초 단위의 제한 시간입니다. | int | 10000 | 
| connectTimeout | 아니요 | Redis 서버에 연결하기 위한 밀리초 단위 제한 시간입니다. | int | 10000 | 

## Redis 캐시 속성
<a name="ba-runtime-redis-caches-properties"></a>

### Redis Blusam 캐시
<a name="ba-runtime-redis-blusam-cache"></a>

```
bluesam:
   cache: redis
 # If the following redis properties are not specified gapwalk.redis configuration will be used for this cache 
   redis:
     hostName: localhost
     port: 6379
     mode: standalone                        # Optional
     username:                               # Optional
     password: ""                            # Optional
     useSsl: false                           # Optional
     database: 0                             # Optional
     maxTotal: 128                           # Optional
     maxIdle: 128                            # Optional
     minIdle: 16                             # Optional
     testOnBorrow: true                      # Optional
     testOnReturn: true                      # Optional
     testWhileIdle: true                     # Optional
     testOnCreate: true                      # Optional
     minEvictableIdleTimeMillis: 60000       # Optional
     timeBetweenEvictionRunsMillis: 30000    # Optional
     numTestsPerEvictionRun: -1              # Optional
     blockWhenExhausted: true                # Optional
     nettyThreads: 32                        # Optional
     subscriptionsPerConnection: 10          # Optional
     subscriptionConnectionPoolSize: 100     # Optional
     pageSizeInBytes: 8192                   # Optional
     readTimeout: 2000                       # Optional
     timeToLiveMillis: 60000                 # Optional
     connectionPoolSize: 64                  # Optional
     connectionMinimumIdleSize: 24           # Optional
     idleConnectionTimeout: 10000            # Optional
     connectTimeout: 10000                   # Optional
```

### Redis Blusam 캐시
<a name="ba-runtime-redis-blusame-locks"></a>

```
bluesam:
   locks:
     cache: redis
 # If the following redis properties are not specified gapwalk.redis configuration will be used for this cache 
       hostName: localhost
       port: 6379
       mode: standalone                        # Optional
       username:                               # Optional
       password: ""                            # Optional
       useSsl: false                           # Optional
       database: 0                             # Optional
       maxTotal: 128                           # Optional
       maxIdle: 128                            # Optional
       minIdle: 16                             # Optional
       testOnBorrow: true                      # Optional
       testOnReturn: true                      # Optional
       testWhileIdle: true                     # Optional
       testOnCreate: true                      # Optional
       minEvictableIdleTimeMillis: 60000       # Optional
       timeBetweenEvictionRunsMillis: 30000    # Optional
       numTestsPerEvictionRun: -1              # Optional
       blockWhenExhausted: true                # Optional
       nettyThreads: 32                        # Optional
       subscriptionsPerConnection: 10          # Optional
       subscriptionConnectionPoolSize: 100     # Optional
       pageSizeInBytes: 8192                   # Optional
       readTimeout: 2000                       # Optional
```

### 세션 캐시
<a name="ba-runtime-redis-session-cache"></a>

```
 spring:
   session:
     store-type: redis
 # If the following redis properties are not specified gapwalk.redis configuration will be used for this cache 
 jics:
   redis:
     hostName: localhost
     port: 6379
     mode: standalone                        # Optional
     username:                               # Optional
     password: ""                            # Optional
     useSsl: false                           # Optional
     database: 0                             # Optional
     maxTotal: 128                           # Optional
     maxIdle: 128                            # Optional
     minIdle: 16                             # Optional
     testOnBorrow: true                      # Optional
     testOnReturn: true                      # Optional
     testWhileIdle: true                     # Optional
     testOnCreate: true                      # Optional
     minEvictableIdleTimeMillis: 60000       # Optional
     timeBetweenEvictionRunsMillis: 30000    # Optional
     numTestsPerEvictionRun: -1              # Optional
     blockWhenExhausted: true                # Optional
     nettyThreads: 32                        # Optional
     subscriptionsPerConnection: 10          # Optional
     subscriptionConnectionPoolSize: 100     # Optional
     pageSizeInBytes: 8192                   # Optional
     readTimeout: 2000                       # Optional
```

### JICS 리소스 정의
<a name="ba-runtime-redis-jics-cache"></a>

```
jics:
   resource-definitions:
     store-type: redis
 # If the following redis properties are not specified gapwalk.redis configuration will be used for this cache 
   redis:
     hostName: localhost
     port: 6379
     mode: standalone                        # Optional
     username:                               # Optional
     password: ""                            # Optional
     useSsl: false                           # Optional
     database: 0                             # Optional
     maxTotal: 128                           # Optional
     maxIdle: 128                            # Optional
     minIdle: 16                             # Optional
     testOnBorrow: true                      # Optional
     testOnReturn: true                      # Optional
     testWhileIdle: true                     # Optional
     testOnCreate: true                      # Optional
     minEvictableIdleTimeMillis: 60000       # Optional
     timeBetweenEvictionRunsMillis: 30000    # Optional
     numTestsPerEvictionRun: -1              # Optional
     blockWhenExhausted: true                # Optional
     nettyThreads: 32                        # Optional
     subscriptionsPerConnection: 10          # Optional
     subscriptionConnectionPoolSize: 100     # Optional
     pageSizeInBytes: 8192                   # Optional
     readTimeout: 2000                       # Optional
```

### JICS TS 대기열
<a name="ba-runtime-jics-ts-queues"></a>

```
jics:
   parameters:
     tsqimpl: redis
 # If the following redis properties are not specified gapwalk.redis configuration will be used for this cache 
   queues:
     ts:
       redis:
         hostName: localhost
         port: 6379
         mode: standalone                        # Optional
         username:                               # Optional
         password: ""                            # Optional
         useSsl: false                           # Optional
         database: 0                             # Optional
         maxTotal: 128                           # Optional
         maxIdle: 128                            # Optional
         minIdle: 16                             # Optional
         testOnBorrow: true                      # Optional
         testOnReturn: true                      # Optional
         testWhileIdle: true                     # Optional
         testOnCreate: true                      # Optional
         minEvictableIdleTimeMillis: 60000       # Optional
         timeBetweenEvictionRunsMillis: 30000    # Optional
         numTestsPerEvictionRun: -1              # Optional
         blockWhenExhausted: true                # Optional
         nettyThreads: 32                        # Optional
         subscriptionsPerConnection: 10          # Optional
         subscriptionConnectionPoolSize: 100     # Optional
         pageSizeInBytes: 8192                   # Optional
         readTimeout: 2000                       # Optional
```

### 세션 트래커
<a name="ba-runtime-session-tracker"></a>

```
session-tracker:
   store-type: redis
 # If the following redis properties are not specified gapwalk.redis configuration will be used for this cache 
   redis:
     hostName: localhost
     port: 6379
     mode: standalone                        # Optional
     username:                               # Optional
     password: ""                            # Optional
     useSsl: false                           # Optional
     database: 0                             # Optional
     maxTotal: 128                           # Optional
     maxIdle: 128                            # Optional
     minIdle: 16                             # Optional
     testOnBorrow: true                      # Optional
     testOnReturn: true                      # Optional
     testWhileIdle: true                     # Optional
     testOnCreate: true                      # Optional
     minEvictableIdleTimeMillis: 60000       # Optional
     timeBetweenEvictionRunsMillis: 30000    # Optional
     numTestsPerEvictionRun: -1              # Optional
     blockWhenExhausted: true                # Optional
     nettyThreads: 32                        # Optional
     subscriptionsPerConnection: 10          # Optional
     subscriptionConnectionPoolSize: 100     # Optional
     pageSizeInBytes: 8192                   # Optional
     readTimeout: 2000                       # Optional
```

### JCL 체크포인트
<a name="ba-runtime-jcl-checkpoint"></a>

```
jcl:
   checkpoint:
     provider: redis
 # If the following redis properties are not specified gapwalk.redis configuration will be used for this cache 
   redis:
     hostname: localhost
     port: 6379
     mode: standalone                        # Optional
     username:                               # Optional
     password: ""                            # Optional
     useSsl: false                           # Optional
     database: 0                             # Optional
     maxTotal: 128                           # Optional
     maxIdle: 128                            # Optional
     minIdle: 16                             # Optional
     testOnBorrow: true                      # Optional
     testOnReturn: true                      # Optional
     testWhileIdle: true                     # Optional
     testOnCreate: true                      # Optional
     minEvictableIdleTimeMillis: 60000       # Optional
     timeBetweenEvictionRunsMillis: 30000    # Optional
   	 numTestsPerEvictionRun: -1              # Optional
     blockWhenExhausted: true                # Optional
     nettyThreads: 32                        # Optional
     subscriptionsPerConnection: 10          # Optional
     subscriptionConnectionPoolSize: 100     # Optional
     pageSizeInBytes: 8192                   # Optional
     readTimeout: 2000                       # Optional
```

### Gapwalk 파일 잠금
<a name="ba-runtime-gapwalk-file-locks"></a>

```
filesLocks:
   enabled: true
   retryTime: 1000
   MaxRetry: 5
   provider: redis
 # If the following redis properties are not specified gapwalk.redis configuration will be used for this cache 
   redis:
     hostName: localhost
     port: 6379
     mode: standalone                          # Optional
     username:                                 # Optional
     password: ""                              # Optional
     useSsl: false                             # Optional
     database: 0                               # Optional
     pool:
       maxTotal: 128                           # Optional
       maxIdle: 128                            # Optional
       minIdle: 16                             # Optional
       testOnBorrow: true                      # Optional
       testOnReturn: true                      # Optional
       testWhileIdle: true                     # Optional
       testOnCreate: true                      # Optional
       minEvictableIdleTimeMillis: 60000       # Optional
       timeBetweenEvictionRunsMillis: 30000    # Optional
       numTestsPerEvictionRun: -1              # Optional
       blockWhenExhausted: true                # Optional
       nettyThreads: 32                        # Optional
       subscriptionsPerConnection: 10          # Optional
       subscriptionConnectionPoolSize: 100     # Optional
       pageSizeInBytes: 8192                   # Optional
       readTimeout: 2000                       # Optional
```

### Blu4iv 잠금
<a name="ba-runtime-blu4iv-locks"></a>

```
 blu4iv.lock: redis
 blu4iv.lock.timeout: 10 #(in millisecondes)
 	# If the following redis properties are not specified gapwalk.redis configuration will be used for this cache 
 blu4iv.lock.redis:
       hostName: localhost
       port: 6379
       mode: standalone                        # Optional
       username:                               # Optional
       password: ""                            # Optional
       useSsl: false                           # Optional
       database: 0                             # Optional
       maxTotal: 128                           # Optional
       maxIdle: 128                            # Optional
       minIdle: 16                             # Optional
       testOnBorrow: true                      # Optional
       testOnReturn: true                      # Optional
       testWhileIdle: true                     # Optional
       testOnCreate: true                      # Optional
       minEvictableIdleTimeMillis: 60000       # Optional
       timeBetweenEvictionRunsMillis: 30000    # Optional
       numTestsPerEvictionRun: -1              # Optional
       blockWhenExhausted: true                # Optional
       nettyThreads: 32                        # Optional
       subscriptionsPerConnection: 10          # Optional
       subscriptionConnectionPoolSize: 100     # Optional
       pageSizeInBytes: 8192                   # Optional
       readTimeout: 2000                       # Optional
```

### 데이터세트 카탈로그
<a name="ba-runtime-dataset-catalog"></a>

```
datasimplifier:   
   catalogImplementation: redis
   # If the following redis properties are not specified gapwalk.redis configuration will be used for this cache    
   redis:
     hostName: localhost
     port: 6379
     mode: standalone                        # Optional
     username:                               # Optional
     password: ""                            # Optional
     useSsl: false                           # Optional
     database: 0                             # Optional
     maxTotal: 128                           # Optional
     maxIdle: 128                            # Optional
     minIdle: 16                             # Optional
     testOnBorrow: true                      # Optional
     testOnReturn: true                      # Optional
     testWhileIdle: true                     # Optional
     testOnCreate: true                      # Optional
     minEvictableIdleTimeMillis: 60000       # Optional
     timeBetweenEvictionRunsMillis: 30000    # Optional
     numTestsPerEvictionRun: -1              # Optional
     blockWhenExhausted: true                # Optional
     nettyThreads: 32                        # Optional
     subscriptionsPerConnection: 10          # Optional
     subscriptionConnectionPoolSize: 100     # Optional
     pageSizeInBytes: 8192                   # Optional
     readTimeout: 2000                       # Optional
```

## Redis 캐시용 Secrets Manager
<a name="ba-runtime-redis-secrets-properties"></a>

`application-main.yaml` 파일은 Redis 캐시에 대한 보안 암호 ARN을 참조할 수 있습니다. 런타임 시 Redis 연결 세부 정보를 안전하게 검색 AWS Secrets Manager 하기 위해를 통합하는 방법에 대한 자세한 내용은 섹션을 참조하세요[AWS 메인프레임 런타임 보안 암호에 대한 변환](ba-runtime-config-app-secrets.md).