소스 검색

修改java内存

master
yaozijun 2 달 전
부모
커밋
82c3c92466
5개의 변경된 파일51개의 추가작업 그리고 2개의 파일을 삭제
  1. +38
    -0
      isolated/apply-update.sh
  2. +5
    -0
      isolated/build-update.sh
  3. +2
    -2
      isolated/profiles/docker-compose.yml
  4. +2
    -0
      isolated/profiles/emp-uat/.env.example
  5. +4
    -0
      isolated/profiles/emp-uat/update-env.defaults

+ 38
- 0
isolated/apply-update.sh 파일 보기

@@ -136,6 +136,42 @@ contains_service() {
return 1
}

escape_sed_replacement() {
local value="$1"
value="${value//\\/\\\\}"
value="${value//&/\\&}"
value="${value//|/\\|}"
printf '%s\n' "$value"
}

apply_runtime_env_defaults() {
local defaults_file="$SCRIPT_DIR/update-env.defaults"
[[ -f "$defaults_file" ]] || return 0

local backup_file line key value escaped
backup_file="${ENV_FILE}.bak-$(date '+%Y%m%d%H%M%S')"
cp "$ENV_FILE" "$backup_file"
log "Apply runtime env defaults: $defaults_file"
log "Runtime env backup: $backup_file"

while IFS= read -r line || [[ -n "$line" ]]; do
[[ -n "$line" ]] || continue
[[ "$line" == \#* ]] && continue
[[ "$line" == *"="* ]] || continue

key="${line%%=*}"
value="${line#*=}"
[[ "$key" =~ ^[A-Za-z_][A-Za-z0-9_]*$ ]] || die "Invalid env key in $defaults_file: $key"

escaped="$(escape_sed_replacement "$value")"
if grep -q "^${key}=" "$ENV_FILE"; then
sed -i "s|^${key}=.*|${key}=${escaped}|" "$ENV_FILE"
else
printf '\n%s=%s\n' "$key" "$value" >> "$ENV_FILE"
fi
done < "$defaults_file"
}

need_cmd docker
ENV_FILE="$(resolve_runtime_file "$ENV_FILE" ".env")"
resolve_compose_files
@@ -147,6 +183,8 @@ mapfile -t UPDATE_SERVICES < <(read_services "$@")

COMPOSE_CMD="$(resolve_compose_cmd)"

apply_runtime_env_defaults

log "Compose files: ${RESOLVED_COMPOSE_FILES[*]}"
log "Load images: $IMAGE_TAR"
docker load -i "$IMAGE_TAR"


+ 5
- 0
isolated/build-update.sh 파일 보기

@@ -224,6 +224,11 @@ prepare_package() {
cp "$SCRIPT_DIR/apply-update.sh" "$PACKAGE_DIR/apply-update.sh"
chmod +x "$PACKAGE_DIR/apply-update.sh"

local profile_dir="${PROFILE_DIR:-$SCRIPT_DIR/profiles/$DEPLOY_ENV}"
if [[ -f "$profile_dir/update-env.defaults" ]]; then
cp "$profile_dir/update-env.defaults" "$PACKAGE_DIR/update-env.defaults"
fi

local service
for service in "${REQUESTED_SERVICES[@]}"; do
compose_service_name "$service"


+ 2
- 2
isolated/profiles/docker-compose.yml 파일 보기

@@ -244,12 +244,12 @@ services:
emp-data:
<<: *app-env
image: ${IMAGE_NAMESPACE:-emp-test}/emp-data:${IMAGE_TAG:-latest}
mem_limit: ${EMP_DATA_MEM_LIMIT:-5g}
mem_limit: ${EMP_DATA_MEM_LIMIT:-12g}
volumes:
- /data/emp/logs/${IMAGE_NAMESPACE:-emp}/emp-data:/logs
environment:
<<: *java-file-log
JAVA_TOOL_OPTIONS: "${EMP_DATA_JAVA_TOOL_OPTIONS:--Xms2g -Xmx4g}"
JAVA_TOOL_OPTIONS: "${EMP_DATA_JAVA_TOOL_OPTIONS:--Xms4g -Xmx8g}"
LOGGING_FILE_NAME: /logs/emp-data.log
LOGGING_LOGBACK_ROLLINGPOLICY_FILE_NAME_PATTERN: /logs/emp-data-%d{yyyy-MM-dd}.%i.log
SPRING_KAFKA_LISTENER_CONCURRENCY: ${EMP_DATA_KAFKA_CONCURRENCY:-10}


+ 2
- 0
isolated/profiles/emp-uat/.env.example 파일 보기

@@ -52,6 +52,8 @@ KAFKA_TOPIC=YuanJing-uat-vehicle-mock-data
KAFKA_USER=
KAFKA_PWD=
# emp-data Kafka listener 消费线程数,profiles/docker-compose.yml 会映射为 Spring Kafka concurrency。
EMP_DATA_MEM_LIMIT=12g
EMP_DATA_JAVA_TOOL_OPTIONS=-Xms4g -Xmx8g
EMP_DATA_KAFKA_CONCURRENCY=10
EMP_DATA_KAFKA_MAX_POLL_RECORDS=500



+ 4
- 0
isolated/profiles/emp-uat/update-env.defaults 파일 보기

@@ -0,0 +1,4 @@
# Runtime defaults that emp-uat incremental update packages should enforce
# before recreating services.
EMP_DATA_MEM_LIMIT=12g
EMP_DATA_JAVA_TOOL_OPTIONS=-Xms4g -Xmx8g

불러오는 중...
취소
저장