db: hostname: 192.168.0.102 database: url: jdbc:postgresql://${db.hostname:localhost}:5432/CS0227?currentSchema=sm_bs_cs spring: datasource: url: jdbc:postgresql://${db.hostname:localhost}:5432/CS0227?currentSchema=sm_bs_cs username: msaportal password: msaportal driver-class-name: org.postgresql.Driver hikari: minimum-idle: 5 # 너무 많은 유휴 연결 방지 maximum-pool-size: 20 # DB 부하와 병목 최소화 idle-timeout: 30000 # 30초 후 유휴 연결 제거 max-lifetime: 1800000 # 30분 후 커넥션 재생성 connection-timeout: 5000 # 커넥션 요청 타임아웃 (5초) data-source-properties: cachePrepStmts: true prepStmtCacheSize: 512 prepStmtCacheSqlLimit: 4096 useServerPrepStmts: true jpa: database-platform: org.hibernate.dialect.PostgreSQLDialect generate-ddl: true hibernate: ddl-auto: update properties: hibernate: dialect: org.hibernate.dialect.PostgreSQLDialect format_sql: true globally_quoted_identifiers: false default_batch_fetch_size: 1000 open-in-view: false show-sql: true defer-datasource-initialization: true servlet: multipart: enabled: true max-file-size: -1 max-request-size: -1 cloud: bus: destination: springCloudBus stream: function: definition: attachmentEntity;hardDeleteEntity;busConsumer # 첨부파일 entity 정보 업데이트 하기 위한 이벤트에 대한 consumer function & springcloudbus consumer function bindings: busConsumer-in-0: destination: ${spring.cloud.bus.destination} attachmentEntity-in-0: # 첨부파일 entity 정보 업데이트 하기 위한 이벤트 destination: attachment-entity.topic # queue name group: attachment attachmentEntity-out-0: # 첨부파일 entity 정보 업데이트 하기 위한 이벤트 destination: attachment-entity.topic # queue name group: attachment hardDeleteEntity-in-0: # 첨부파일 entity 정보 물리 삭제 하기 위한 이벤트 destination: hard-delete-entity.topic # queue name group: attachment sql: init: mode: always platform: postgresql session: store-type: redis redis: host: ${REDIS_HOST:localhost} port: ${REDIS_PORT:6379} username: ${REDIS_USERNAME:} password: ${REDIS_PASSWORD:egovframe} # Swagger 설정 springdoc: swagger-ui: path: /swagger-ui.html groups-order: DESC operations-sorter: method disable-swagger-default-url: true api-docs: path: /v3/api-docs show-actuator: true default-consumes-media-type: application/json default-produces-media-type: application/json paths-to-match: /api/** # Actuator 제외하고 문서화할 경로만 포함 # tus 분할 파일 업로드 관련 path 설정 tus: data: path: /files/tus/temp expiration: 60000 save: path: /files/upload ffmpeg: # path: d:/ffmpeg/bin/ffmpeg.exe path: /usr/bin/ffmpeg #/opt/homebrew/bin/ffmpeg , /usr/bin/ffmpeg ffprobe: # path: d:/ffmpeg/bin/ffprobe.exe path: /usr/bin/ffprobe #/opt/homebrew/bin/ffprobe , /usr/bin/ffprobe