summaryrefslogtreecommitdiff
path: root/lib/nonsap-sync/sync-config.ts
diff options
context:
space:
mode:
Diffstat (limited to 'lib/nonsap-sync/sync-config.ts')
-rw-r--r--lib/nonsap-sync/sync-config.ts46
1 files changed, 46 insertions, 0 deletions
diff --git a/lib/nonsap-sync/sync-config.ts b/lib/nonsap-sync/sync-config.ts
new file mode 100644
index 00000000..a18dd208
--- /dev/null
+++ b/lib/nonsap-sync/sync-config.ts
@@ -0,0 +1,46 @@
+// NONSAP 동기화 설정
+export interface SyncConfig {
+ pageSize: number;
+ batchSize: number;
+ maxWorkers: number;
+ deltaSyncEnabled: boolean;
+ cronSchedule: string;
+ autoRefreshInterval: number; // UI 자동 새로고침 간격 (ms)
+}
+
+// 환경별 설정
+const configs: Record<string, SyncConfig> = {
+ development: {
+ pageSize: 1000,
+ batchSize: 50,
+ maxWorkers: 4,
+ deltaSyncEnabled: true,
+ cronSchedule: '0 0 1 * * *', // 매일 새벽 1시
+ autoRefreshInterval: 1000, // 1초
+ },
+ production: {
+ pageSize: 5000,
+ batchSize: 200,
+ maxWorkers: 4,
+ deltaSyncEnabled: true,
+ cronSchedule: '0 0 1 * * *', // 매일 새벽 1시
+ autoRefreshInterval: 30000, // 30초
+ }
+};
+
+// 현재 환경의 설정 가져오기
+export const SYNC_CONFIG: SyncConfig = configs[process.env.NODE_ENV || 'development'];
+
+// 개별 설정값들 (기존 코드와의 호환성을 위해)
+export const PAGE_SIZE = SYNC_CONFIG.pageSize;
+export const BATCH_SIZE = SYNC_CONFIG.batchSize;
+export const MAX_WORKERS = SYNC_CONFIG.maxWorkers;
+export const DELTA_SYNC_ENABLED = SYNC_CONFIG.deltaSyncEnabled;
+
+// 설정 정보를 반환하는 함수 (API에서 사용)
+export function getSyncConfigInfo() {
+ return {
+ ...SYNC_CONFIG,
+ environment: process.env.NODE_ENV || 'development'
+ };
+} \ No newline at end of file