feat: complete wikification of War Commander batch 1&2 and final grey dot cleanup
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-B2F9C0
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -27,11 +27,11 @@ github_commit: "[P-Reinforce] Continuous Worker - API 응답 및 에러 핸들
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Result Type]], [[Discriminated Unions]], [[Exception Handling]]
|
||||
- **Related Topics:** [[Result Type]], [[Discriminated Unions]], Exception Handling
|
||||
- **Projects/Contexts:** [[TypeScript API Development]], [[Server Architecture]]
|
||||
- **Contradictions/Notes:** 전역 예외 처리기(Global Exception Handler)를 두고 컨트롤러에서 예외를 발생시키는 방식이 코드가 깔끔해진다고 선호하는 개발자들도 있지만, Result 패턴을 지지하는 개발자들은 예외를 던지는 방식이 제어 흐름을 끊고 타입 시스템으로 에러를 파악할 수 없게 하므로 예상 가능한 에러는 명시적인 타입으로 반환해야 한다고 반대합니다 [7, 14-16].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-18*
|
||||
- Raw Source: [[00_Raw/2026-04-20/API 응답 및 에러 핸들링 아키텍처.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-7DEA60
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -29,5 +29,5 @@ github_commit: "[P-Reinforce] Continuous Worker - AST (추상 구문 트리)"
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-18*
|
||||
- Raw Source: [[00_Raw/2026-04-20/AST (추상 구문 트리).md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-C7BE0D
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -27,11 +27,11 @@ github_commit: "[P-Reinforce] Continuous Worker - AST(Abstract Syntax Tree)"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[CST(Concrete Syntax Tree)]], [[정적 애플리케이션 보안 테스트(SAST)]], [[코드 스타일로메트리(Code Stylometry)]], [[정적 분석(Static Analysis)]]
|
||||
- **Projects/Contexts:** [[기계학습 기반의 소스 코드 저자 식별 연구]], [[AI 기반 코드 복잡도 분석(카카오)]], [[정적 보안 취약점 스캐닝 파이프라인]]
|
||||
- **Related Topics:** CST(Concrete Syntax Tree), [[정적 애플리케이션 보안 테스트(SAST)]], 코드 스타일로메트리(Code Stylometry), [[정적 분석(Static Analysis)]]
|
||||
- **Projects/Contexts:** 기계학습 기반의 소스 코드 저자 식별 연구, AI 기반 코드 복잡도 분석(카카오), 정적 보안 취약점 스캐닝 파이프라인
|
||||
- **Contradictions/Notes:** AST 기반의 분석은 작성자의 본질적인 프로그래밍 구조를 파악하고 위조 공격에 강하다는 장점이 있지만, 공백이나 들여쓰기 등 개발자의 개성이 묻어나는 '레이아웃 특징'을 담지 못합니다. 이로 인해 소스 코드 작성자 식별 실험에서 AST 기반 모델(51.00%)은 레이아웃 정보까지 포함하는 CST 기반 모델(67.86%)에 비해 상대적으로 낮은 정확도를 보였습니다 [10, 11].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/AST(Abstract Syntax Tree).md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-82084D
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.95
|
||||
tags: []
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -21,5 +21,5 @@ github_commit: "[P-Reinforce] Batch 10 - Wikified Advanced-Design-Patterns-in-Ty
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
|
||||
- Raw Source: [[00_Raw/2026-04-20/Advanced-Design-Patterns-in-TypeScript.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-138364
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.95
|
||||
tags: []
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -21,5 +21,5 @@ github_commit: "[P-Reinforce] Mega Batch - Wikified Ambient Contexts"
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
|
||||
- Raw Source: [[00_Raw/2026-04-20/Ambient Contexts.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-F31A94
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.95
|
||||
tags: []
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -21,5 +21,5 @@ github_commit: "[P-Reinforce] Mega Batch - Wikified Ambient Declarations"
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
|
||||
- Raw Source: [[00_Raw/2026-04-20/Ambient Declarations.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-C35C99
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -24,10 +24,10 @@ github_commit: "[P-Reinforce] Continuous Worker - AppSec (애플리케이션 보
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[SAST (정적 애플리케이션 보안 테스트)]], [[DAST (동적 애플리케이션 보안 테스트)]], [[SCA (소프트웨어 구성 분석)]], [[SDLC (소프트웨어 개발 수명 주기)]]
|
||||
- **Projects/Contexts:** [[시프트 레프트(Shift-Left) 전략]], [[하이브리드 코드 리뷰 프로세스]]
|
||||
- **Projects/Contexts:** 시프트 레프트(Shift-Left) 전략, 하이브리드 코드 리뷰 프로세스
|
||||
- **Contradictions/Notes:** 자동화된 AppSec 도구는 코드베이스 전체를 빠르고 일관되게 스캔하여 구문적 취약점을 찾아내지만, 비즈니스 로직이나 아키텍처의 의도를 이해하지 못해 오탐지(False Positives)를 유발할 수 있습니다. 따라서 도구에만 전적으로 의존하는 것은 위험하며, 복잡한 비즈니스 로직과 컨텍스트에 민감한 보안 위협을 식별하기 위해서는 반드시 인간 전문가에 의한 수동 코드 리뷰(Manual Code Review)가 병행되어야 한다고 소스들은 강조합니다 [23, 24, 26, 27].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-18*
|
||||
- Raw Source: [[00_Raw/2026-04-20/AppSec (애플리케이션 보안).md]]
|
||||
|
||||
---
|
||||
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-C3E3B9
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -35,5 +35,5 @@ github_commit: "[P-Reinforce] Continuous Worker - Beat Saber 엑서게임 연구
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Beat Saber 엑서게임 연구(Beat Saber Exergaming Study).md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-711498
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -22,11 +22,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Beat Saber"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[VR Exergame]], [[VR Sickness]], [[Flow State]]
|
||||
- **Projects/Contexts:** [[가상현실 노출 사후 효과(VR Aftereffects) 연구]], [[몰입 상태 예측 프레임워크(Flow State Prediction Framework)]]
|
||||
- **Related Topics:** VR Exergame, [[VR Sickness]], [[Flow State]]
|
||||
- **Projects/Contexts:** 가상현실 노출 사후 효과(VR Aftereffects) 연구, 몰입 상태 예측 프레임워크(Flow State Prediction Framework)
|
||||
- **Contradictions/Notes:** 소스 연구에 따르면 Beat Saber 플레이 후의 사후 효과(멀미 등)는 전반적으로 일시적이며 40분 내에 기저 수준으로 회복되어 멀미로 인한 실험 탈락자가 없었지만 [6, 7], 장시간(50분) 노출될 경우 특정 사용자 집단(약 14%)에서는 게임 종료 40분 후에도 여전히 높은 수준의 멀미가 유지되는 등 개인의 민감도와 노출 시간에 따라 상이한 결과가 나타납니다 [6, 8].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Beat Saber.md]]
|
||||
|
||||
---
|
||||
|
||||
+3
-3
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-180522
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -40,10 +40,10 @@ github_commit: "[P-Reinforce] Continuous Worker - Beat Saber를 활용한 VR 엑
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[VR Sickness]], [[Vergence-Accommodation Conflicts]], [[Exergaming]], [[Simulator Sickness Questionnaire (SSQ)]]
|
||||
- **Projects/Contexts:** [[Beat Saber]], [[HTC Vive Pro HMD]]
|
||||
- **Projects/Contexts:** [[Beat Saber]], HTC Vive Pro HMD
|
||||
- **Contradictions/Notes:** 소스에 따르면 VR 엑서게임은 시각적 변화나 멀미와 같은 부작용을 동반할 수 있으나, 인지 능력 저하는 관찰되지 않았으며 짧은 시간 플레이 시에는 움직임 반응 속도 측면에서 일시적인 향상이 나타나는 상반된 결과가 있었습니다 [8], [4]. 또한, 집단의 멀미 증상은 대체로 40분 내에 회복되지만, 개인의 민감도에 따라 긴 시간 지속되는 소수의 예외(약 14%)가 존재한다는 점에 유의해야 합니다 [5].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Beat Saber를 활용한 VR 엑서게임 후유증 연구(VR Exergaming Aftereffects).md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-7F733B
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -24,11 +24,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Blink"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[V8 Engine]], [[Oilpan]], [[Orinoco]], [[InternalNode]]
|
||||
- **Related Topics:** [[V8 Engine]], [[Oilpan]], [[Orinoco]], InternalNode
|
||||
- **Projects/Contexts:** [[Chrome]], [[Heap Snapshot]]
|
||||
- **Contradictions/Notes:** 소스 내에 Blink 자체의 전체 구조를 다루는 정보는 부족하며, V8 메모리 관리 및 힙 스냅샷 디버깅 관점에서만 제한적으로 언급되어 있습니다.
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Blink.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-4D7707
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -29,5 +29,5 @@ github_commit: "[P-Reinforce] Continuous Worker - Branch Prediction"
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Branch Prediction.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-229D3F
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -29,11 +29,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Branchless Security Checks"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Spectre]], [[Meltdown]], [[Speculative Execution]], [[Index Masking]], [[Pointer Poisoning]]
|
||||
- **Related Topics:** [[Spectre]], Meltdown, [[Speculative Execution]], [[Index Masking]], [[Pointer Poisoning]]
|
||||
- **Projects/Contexts:** [[WebKit]], [[Blink]], [[JavaScriptCore]]
|
||||
- **Contradictions/Notes:** 분기 없는 보안 검사 기법은 캐시 사이드 채널 공격을 방어하는 필수적인 수단이지만, 구조적으로 추가 연산을 요구하기 때문에 작업의 마이크로 지연(Micro-latency)을 증가시킨다는 성능적 트레이드오프가 존재합니다 [13].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Branchless Security Checks.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-539F01
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -38,5 +38,5 @@ github_commit: "[P-Reinforce] Continuous Worker - Browser Security Mitigations"
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Browser Security Mitigations.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-40FA98
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -25,11 +25,11 @@ github_commit: "[P-Reinforce] Continuous Worker - CAD 렌더링 최적화"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[BatchedMesh]], [[InstancedMesh]], [[Depth Pre-Pass]], [[SharedArrayBuffer]], [[Frustum Culling]], [[Level of Detail (LOD)]]
|
||||
- **Related Topics:** BatchedMesh, [[InstancedMesh]], [[Depth Pre-Pass]], SharedArrayBuffer, [[Frustum Culling]], [[Level of Detail (LOD)]]
|
||||
- **Projects/Contexts:** [[WebGPU 대규모 건설 뷰어]], [[BIM 모델 시뮬레이션]]
|
||||
- **Contradictions/Notes:** 지오메트리 병합(`BufferGeometryUtils.mergeBufferGeometries`) 기법은 드로우 콜을 가장 효과적으로 줄여주지만, 단일 바운딩 볼륨으로 묶이기 때문에 시야 절두체 컬링(Frustum Culling)의 효율성을 떨어뜨린다는 딜레마를 가집니다 [11]. 또한, `InstancedMesh`는 단일 지오메트리의 반복 렌더링에는 매우 유리하지만 서로 다른 기하학적 구조를 가진 부품이 수천 개 모인 CAD 모델에는 부적합하며, 이 경우 다중 지오메트리를 지원하는 `BatchedMesh`를 사용하는 것이 더 올바른 대안입니다 [3, 10, 20].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/CAD 렌더링 최적화.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-20A493
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -24,11 +24,11 @@ github_commit: "[P-Reinforce] Continuous Worker - CANTAB 5-선택 반응 시간
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[의사결정 속도(Decision Speed)]], [[이동 속도(Movement Speed)]]
|
||||
- **Related Topics:** 의사결정 속도(Decision Speed), [[이동 속도(Movement Speed)]]
|
||||
- **Projects/Contexts:** [[가상현실 사후 효과 연구(Virtual Reality Aftereffects Study)]]
|
||||
- **Contradictions/Notes:** 소스에 관련 정보가 부족합니다. (소스 데이터 내에서 해당 과제에 대해 상충하는 주장이나 논쟁점은 확인되지 않습니다.)
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/CANTAB 5-선택 반응 시간 과제(CANTAB 5-choice RTI).md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-643BD1
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -24,11 +24,11 @@ github_commit: "[P-Reinforce] Continuous Worker - CI_CD Pipeline"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Static Application Security Testing (SAST)]], [[Automated Code Review]], [[Quality Gates]], [[DevSecOps]], [[Git Hooks]]
|
||||
- **Projects/Contexts:** [[소프트웨어 개발 수명 주기(SDLC)]], [[풀 리퀘스트(Pull Request) 워크플로우]]
|
||||
- **Related Topics:** [[Static Application Security Testing (SAST)]], Automated Code Review, [[Quality Gates]], [[DevSecOps]], [[Git Hooks]]
|
||||
- **Projects/Contexts:** 소프트웨어 개발 수명 주기(SDLC), 풀 리퀘스트(Pull Request) 워크플로우
|
||||
- **Contradictions/Notes:** 개발자 환경의 로컬 훅(Husky 등)은 빠르고 편리한 피드백을 위한 도구일 뿐 완벽한 강제 수단이 아니며, 실제적인 보안 및 품질 규칙의 최종 강제는 CI/CD 파이프라인에서 이루어져야 합니다 [15, 16].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/CI_CD Pipeline.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-B0C6AD
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -23,11 +23,11 @@ github_commit: "[P-Reinforce] Continuous Worker - CI_CD 파이프라인 자동
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[정적 애플리케이션 보안 테스트 (SAST)]], [[Git Hooks (Husky 및 lint-staged)]], [[품질 게이트 (Quality Gates)]]
|
||||
- **Projects/Contexts:** [[DevSecOps 파이프라인 통합]], [[풀 리퀘스트(PR) 검사 자동화]]
|
||||
- **Related Topics:** [[정적 애플리케이션 보안 테스트 (SAST)]], Git Hooks (Husky 및 lint-staged), 품질 게이트 (Quality Gates)
|
||||
- **Projects/Contexts:** DevSecOps 파이프라인 통합, 풀 리퀘스트(PR) 검사 자동화
|
||||
- **Contradictions/Notes:** 소스에 따르면 정적 분석 도구를 파이프라인에 통합할 때 심층적인 스캔은 분석 시간이 오래 걸려 CI/CD 파이프라인을 지연시키는 원인이 될 수 있습니다(예: SonarQube Cloud는 일부 환경에서 파이프라인에 추가 시간을 발생시킴) [28]. 따라서 파이프라인 속도 저하를 방지하기 위해 PR 단계에서는 변경된 파일만 가볍고 빠르게 검사하는 `lint-staged`나 증분 스캔(incremental scans)을 활용하고, 전체 코드 스캔이나 무거운 분석은 CI 서버의 별도 단계나 정기 스캔으로 미루는 방식이 권장됩니다 [18, 19, 29, 30].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/CI_CD 파이프라인 자동화.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-C861C6
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -36,5 +36,5 @@ github_commit: "[P-Reinforce] Continuous Worker - CI_CD 파이프라인 통합
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-18*
|
||||
- Raw Source: [[00_Raw/2026-04-20/CI_CD 파이프라인 통합 및 Git 훅(Hooks).md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-057C1E
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -23,11 +23,11 @@ github_commit: "[P-Reinforce] Continuous Worker - CI_CD 파이프라인"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[자동화된 코드 리뷰(Automated Code Review)]], [[정적 애플리케이션 보안 테스트(SAST)]], [[품질 게이트(Quality Gates)]], [[시프트 레프트(Shift-Left)]]
|
||||
- **Projects/Contexts:** [[소프트웨어 개발 수명 주기(SDLC)]], [[데브섹옵스(DevSecOps)]], [[풀 리퀘스트(Pull Request) 워크플로우]]
|
||||
- **Related Topics:** 자동화된 코드 리뷰(Automated Code Review), [[정적 애플리케이션 보안 테스트(SAST)]], 품질 게이트(Quality Gates), [[시프트 레프트(Shift-Left)]]
|
||||
- **Projects/Contexts:** 소프트웨어 개발 수명 주기(SDLC), 데브섹옵스(DevSecOps), 풀 리퀘스트(Pull Request) 워크플로우
|
||||
- **Contradictions/Notes:** CI/CD 파이프라인에 SonarQube Cloud나 대규모 SAST 도구를 통합하면 코드 품질과 보안을 강력하게 통제할 수 있지만, 일부 환경에서는 파이프라인 실행 시간이 추가로 소요될 수 있다는 단점이 존재합니다 [5, 17, 28]. 또한, 로컬 Git Hook 환경이 효율적이더라도 CI 환경에서의 전체 검증 과정을 결코 대체할 수 없으며, 반드시 CI 파이프라인의 후속 검증이 동반되어야 한다고 강조됩니다 [23, 24, 29].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-18*
|
||||
- Raw Source: [[00_Raw/2026-04-20/CI_CD 파이프라인.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-ECB052
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -27,11 +27,11 @@ github_commit: "[P-Reinforce] Continuous Worker - CST (구체 구문 트리)"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[AST (추상 구문 트리)]], [[코드 스타일로메트리 (Code Stylometry)]], [[코드 포매팅 (Code formatting)]], [[코드 축소 (Code minification)]]
|
||||
- **Related Topics:** [[AST (추상 구문 트리)]], 코드 스타일로메트리 (Code Stylometry), [[코드 포매팅 (Code formatting)]], [[코드 축소 (Code minification)]]
|
||||
- **Projects/Contexts:** [[코드 서식 지정과 축소가 코드 스타일로메트리(작성자 인식)에 미치는 영향을 평가하는 기계 학습 모델 분류 연구]]
|
||||
- **Contradictions/Notes:** 소스에 관련된 모순된 정보는 없으며, 기존의 주류 문헌들이 코드 표상을 위해 주로 AST를 사용하는 것에서 벗어나, 서식 지정과 축소에 따른 표면적 변화를 측정하기 위해 CST의 사용이 필수적이었다는 점을 강조합니다 [4].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-18*
|
||||
- Raw Source: [[00_Raw/2026-04-20/CST (구체 구문 트리).md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-55C813
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -25,11 +25,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Cache Side-Channel Attack"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Spectre]], [[Meltdown]], [[Speculative Execution]], [[Timestamp Quantization]]
|
||||
- **Related Topics:** [[Spectre]], Meltdown, [[Speculative Execution]], [[Timestamp Quantization]]
|
||||
- **Projects/Contexts:** [[WebKit]], [[WebGPU]], [[WebGL]]
|
||||
- **Contradictions/Notes:** 소스에 따르면, 그래픽 파이프라인 최적화 및 렌더링 병목 현상을 해결하려는 개발자들은 나노초 단위의 고정밀 타이머를 절대적으로 필요로 하지만, 보안 측면에서는 이러한 고해상도 타이머가 캐시 사이드 채널 공격의 주요 수단이 되기 때문에 브라우저 벤더들이 타이머의 해상도를 의도적으로 제한(Coarsening)해야만 하는 기능적 상충 관계(Trade-off)가 발생하고 있습니다 [1, 13, 14, 18].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Cache Side-Channel Attack.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-E946BD
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -23,11 +23,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Cache miss rates"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Spectre]], [[Meltdown]], [[Rowhammer]], [[Timestamp Queries]]
|
||||
- **Projects/Contexts:** [[WebGPU Timestamp Queries Quantization]], [[WebKit Security Mitigations]]
|
||||
- **Related Topics:** [[Spectre]], Meltdown, [[Rowhammer]], [[Timestamp Queries]]
|
||||
- **Projects/Contexts:** WebGPU Timestamp Queries Quantization, [[WebKit Security Mitigations]]
|
||||
- **Contradictions/Notes:** 소스에서는 캐시 미스 비율이 일반적인 시스템 성능 최적화 지표로 다루어지기보다는, 고해상도 타이머를 악용한 사이드 채널 보안 공격(side-channel attacks)을 가능하게 하는 위험 요소의 관점으로만 집중적으로 설명되어 있습니다 [1, 2, 4].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Cache miss rates.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-52B523
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -30,11 +30,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Cheneys Algorithm"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Scavenge (Minor GC)]], [[Semi-space Design]], [[Garbage Collection]]
|
||||
- **Related Topics:** Scavenge (Minor GC), Semi-space Design, [[Garbage Collection]]
|
||||
- **Projects/Contexts:** [[V8 JavaScript Engine]]
|
||||
- **Contradictions/Notes:** 과거의 V8 버전들은 동기식(synchronous) 구조의 기본 Cheney's algorithm을 사용했으나, V8 v6.2 이후부터는 다중 코어 환경의 이점을 활용하기 위해 Halstead semispace copying collector와 유사한 방식의 병렬 스캐빈저(Parallel Scavenger) 알고리즘으로 발전하여 사용되고 있습니다 [6].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Cheney's Algorithm.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-5AE3F9
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -30,13 +30,13 @@ github_commit: "[P-Reinforce] Continuous Worker - Chrome DevTools Memory Panel"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Heap Snapshot]], [[Garbage Collection]], [[Memory Leak]], [[Retaining Path]]
|
||||
- **Projects/Contexts:** [[V8 Engine]], [[Node.js]]
|
||||
- **Related Topics:** [[Heap Snapshot]], [[Garbage Collection]], Memory Leak, [[Retaining Path]]
|
||||
- **Projects/Contexts:** [[V8 Engine]], Node.js
|
||||
- **Contradictions/Notes:**
|
||||
- 스냅샷 상에서 메모리 그래프가 증가한다고 해서 무조건 누수(Leak)인 것은 아닙니다. 캐시(Caches), 실행 취소 기록(Undo histories), 가상화된 리스트 버퍼 등은 의도적으로 데이터를 보존하기 때문입니다. 의도된 보존과 우발적인 메모리 누수를 구별하는 것이 중요합니다 [20].
|
||||
- DevTools 콘솔에서 `console.log`로 출력된 객체는 콘솔에서 도달 가능하기 때문에 참조가 유지되어 메모리 누수로 나타날 수 있습니다. 누수 조사 중에는 콘솔을 지우거나 큰 객체를 로깅하지 않아야 합니다 [20].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Chrome DevTools Memory Panel.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-663B99
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -26,11 +26,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Chrome DevTools(크롬 개발
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Memory Leak(메모리 누수)]], [[Garbage Collection(가비지 컬렉션)]], [[Heap Snapshot(힙 스냅샷)]], [[Allocation Timeline(할당 타임라인)]]
|
||||
- **Projects/Contexts:** [[Node.js 프로세스 모니터링 및 메모리 분석]], [[브라우저 DOM 누수 탐지 및 렌더링 최적화]]
|
||||
- **Related Topics:** Memory Leak(메모리 누수), [[Garbage Collection(가비지 컬렉션)]], Heap Snapshot(힙 스냅샷), Allocation Timeline(할당 타임라인)
|
||||
- **Projects/Contexts:** Node.js 프로세스 모니터링 및 메모리 분석, 브라우저 DOM 누수 탐지 및 렌더링 최적화
|
||||
- **Contradictions/Notes:** 소스에 관련 정보가 부족합니다. (제공된 소스 내에서 Chrome DevTools의 기능이나 메모리 분석 방법론에 대해 상충되는 주장은 발견되지 않았습니다.)
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Chrome DevTools(크롬 개발자 도구).md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-7DF5C6
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -35,11 +35,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Chrome V8 Heap Analysis"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Garbage Collection]], [[V8 Memory Cage]], [[Pointer Compression]], [[Generational Hypothesis]], [[Mark-Sweep-Compact]]
|
||||
- **Projects/Contexts:** [[Orinoco Garbage Collector]], [[Chrome DevTools Memory Panel]], [[v8-forensics]]
|
||||
- **Related Topics:** [[Garbage Collection]], V8 Memory Cage, [[Pointer Compression]], [[Generational Hypothesis]], Mark-Sweep-Compact
|
||||
- **Projects/Contexts:** Orinoco Garbage Collector, [[Chrome DevTools Memory Panel]], v8-forensics
|
||||
- **Contradictions/Notes:** 소스에 관련 정보가 부족합니다. (소스 간의 명백한 모순점이나 상충하는 주장은 발견되지 않았습니다.)
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Chrome V8 Heap Analysis.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-6038C1
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -22,11 +22,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Chromium"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[V8 Engine]], [[V8 Memory Cage]], [[Blink]], [[Oilpan]], [[Garbage Collection]]
|
||||
- **Related Topics:** [[V8 Engine]], V8 Memory Cage, [[Blink]], [[Oilpan]], [[Garbage Collection]]
|
||||
- **Projects/Contexts:** [[Electron]], [[Google Chrome]], [[Orinoco]]
|
||||
- **Contradictions/Notes:** 제공된 소스 전반에서 'Chromium'과 'Chrome'이라는 명칭은 V8을 내장하는 브라우저 런타임 환경 및 보안/추적 인프라를 설명할 때 사실상 동일한 맥락으로 상호 교환되어 사용되고 있습니다 [2-4, 16].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Chromium.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-D932E1
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -23,11 +23,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Code Minification"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Code Formatting]], [[Code Stylometry]]
|
||||
- **Projects/Contexts:** [[Web Development]], [[Python Minifier]]
|
||||
- **Related Topics:** [[Code Formatting]], Code Stylometry
|
||||
- **Projects/Contexts:** Web Development, Python Minifier
|
||||
- **Contradictions/Notes:** 소스에 관련 정보가 부족합니다.
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Code Minification.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-B2A3F3
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -23,11 +23,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Code Obfuscation"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Code Stylometry]], [[Authorship Attribution]], [[Code Minification]]
|
||||
- **Projects/Contexts:** [[Tigress]], [[Stunnix]], [[Opy]], [[PyArmor]]
|
||||
- **Related Topics:** Code Stylometry, Authorship Attribution, [[Code Minification]]
|
||||
- **Projects/Contexts:** Tigress, Stunnix, Opy, PyArmor
|
||||
- **Contradictions/Notes:** 단순한 미니파이(Minification)나 포맷팅 작업, 혹은 Stunnix와 같이 기본적인 난독화만 제공하는 도구는 기계 학습 모델을 속이기에 불충분합니다. 작성자를 식별하려는 시도를 완전히 회피하려면, Tigress와 같이 시스템 성능과 코드 가독성의 저하를 감수하는 심층적인 수준의 난독화를 적용해야 한다는 점이 관찰됩니다 [2, 6, 10].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Code Obfuscation.md]]
|
||||
|
||||
---
|
||||
|
||||
+4
-4
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-59CADB
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -31,12 +31,12 @@ github_commit: "[P-Reinforce] Continuous Worker - Code Splitting Lazy Loading (
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[React Performance Optimization]], [[React.lazy & Suspense]], [[Core Web Vitals (FCP, LCP, CLS)]], [[React Server Components (RSC)]]
|
||||
- **Projects/Contexts:** [[대규모 SPA 초기 로딩 속도 개선]], [[Three.js / React Three Fiber 자산 최적화]]
|
||||
- **Related Topics:** [[React Performance Optimization]], React.lazy & Suspense, Core Web Vitals (FCP, LCP, CLS), [[React Server Components (RSC)]]
|
||||
- **Projects/Contexts:** 대규모 SPA 초기 로딩 속도 개선, Three.js / React Three Fiber 자산 최적화
|
||||
- **Contradictions/Notes:** 코드 분할은 초기 로드 속도를 크게 높여주지만, 모든 컴포넌트를 무분별하게 분할할 경우 사용자가 상호작용을 할 때마다 네트워크 지연과 로딩 스피너를 마주하게 되어 오히려 UX를 크게 훼손할 수 있습니다. 항상 사용자의 여정(User Flow)을 예측하고 적절한 단위로 번들을 묶는 전략적 접근이 필요합니다.
|
||||
|
||||
---
|
||||
|
||||
_Last updated: 2026-04-14_
|
||||
- Raw Source: [[00_Raw/2026-04-20/Code Splitting & Lazy Loading (코드 분할 및 지연 로딩).md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-17B6B7
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -27,11 +27,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Code Stylometry (코드 문체
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Adversarial Code Stylometry]], [[Abstract Syntax Tree (AST)]], [[Concrete Syntax Tree (CST)]], [[Code Obfuscation]], [[Code Formatting]], [[Code Minification]]
|
||||
- **Related Topics:** [[Adversarial Code Stylometry]], Abstract Syntax Tree (AST), [[Concrete Syntax Tree (CST)]], [[Code Obfuscation]], [[Code Formatting]], [[Code Minification]]
|
||||
- **Projects/Contexts:** [[Google Code Jam Dataset]], [[StyleCounsel]]
|
||||
- **Contradictions/Notes:** 소스에 따르면 기계 학습 기반의 코드 문체론 모델에 대항하기 위한 적대적 기법들이 시도되고 있으나, 단순히 코드를 정렬하는 포매팅(Formatting)이나 축소(Minification) 처리만으로는 저자의 개별 스타일 특징을 완전히 제거할 수 없으며 대다수 저자가 여전히 식별 가능한 것으로 나타납니다 [23], [22].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-18*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Code Stylometry (코드 문체론).md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-858963
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -23,11 +23,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Concrete Syntax Tree (CST)"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Abstract Syntax Tree (AST)]], [[Code Stylometry]], [[Parse Tree]]
|
||||
- **Related Topics:** Abstract Syntax Tree (AST), Code Stylometry, Parse Tree
|
||||
- **Projects/Contexts:** 프로그래머의 코드 작성 스타일을 분석하여 작성자를 식별하는 코드 스타일로메트리 연구에서, 코드 포맷팅(formatting) 및 축소(minification) 기술이 식별 정확도에 미치는 영향을 측정하기 위한 코드 표현 방식으로 사용됨 [3, 12, 13].
|
||||
- **Contradictions/Notes:** 소스에 관련 정보가 부족합니다.
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Concrete Syntax Tree (CST).md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-F896F7
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -24,10 +24,10 @@ github_commit: "[P-Reinforce] Continuous Worker - Continuous Integration (CI)"
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Static Application Security Testing (SAST)]], [[Code Review]], [[Git Hooks]], [[Quality Gates]], [[Pull Request (PR)]]
|
||||
- **Projects/Contexts:** [[TeamCity]], [[GitHub Actions]], [[GitLab CI]], [[Jenkins]], [[Azure DevOps]]와 같이 코드 통합과 자동화 빌드를 관장하는 인프라 환경 [1, 9, 14].
|
||||
- **Projects/Contexts:** [[TeamCity]], [[GitHub Actions]], [[GitLab CI]], Jenkins, [[Azure DevOps]]와 같이 코드 통합과 자동화 빌드를 관장하는 인프라 환경 [1, 9, 14].
|
||||
- **Contradictions/Notes:** 로컬 Git 훅(pre-commit 등)은 로컬 환경에서 빠른 피드백을 제공하여 시간을 절약하게 해주지만, 우회가 가능하므로 CI를 완전히 대체할 수 없으며 반드시 CI 파이프라인을 통한 최종 검증이 병행되어야 합니다 [2, 4, 15].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-18*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Continuous Integration (CI).md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-5C7CCB
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -26,11 +26,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Cosmos 플랫폼 (Netflix)"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[마이크로서비스 (Microservices)]], [[서버리스 컴퓨팅 (Serverless Computing)]], [[관심사의 분리 (Separation of Concerns)]]
|
||||
- **Projects/Contexts:** [[Reloaded]], [[Optimus]], [[Plato]], [[Stratum]], [[Timestone]], [[Tapas]], [[Sagan]]
|
||||
- **Related Topics:** 마이크로서비스 (Microservices), 서버리스 컴퓨팅 (Serverless Computing), [[관심사의 분리 (Separation of Concerns)]]
|
||||
- **Projects/Contexts:** Reloaded, Optimus, Plato, Stratum, Timestone, Tapas, Sagan
|
||||
- **Contradictions/Notes:** "서버리스 함수를 조율하는 워크플로우를 트리거하는 마이크로서비스"라는 Cosmos의 프로그래밍 모델은 강력하지만, 단순한 애플리케이션에 적용하기에는 부가되는 복잡성이 이점보다 클 수 있다는 점이 지적된다 [14]. 또한, Cosmos 플랫폼 도입 당시 애플리케이션 개발자들은 일관성과 신뢰성을 획득하는 대신 일정한 유연성을 포기하는 방향으로 마인드셋을 전환해야 했다 [14].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-18*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Cosmos 플랫폼 (Netflix).md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-C15CB2
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -38,5 +38,5 @@ github_commit: "[P-Reinforce] Continuous Worker - Cumulative Layout Shift (CLS)"
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Cumulative Layout Shift (CLS).md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-09DD84
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -23,11 +23,11 @@ github_commit: "[P-Reinforce] Continuous Worker - DAST (동적 애플리케이
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[SAST (정적 애플리케이션 보안 테스트)]], [[Black-box Testing]], [[Fuzzing]]
|
||||
- **Projects/Contexts:** [[AppSec (애플리케이션 보안)]], [[CI/CD 파이프라인]], [[SDLC (소프트웨어 개발 수명 주기)]]
|
||||
- **Related Topics:** [[SAST (정적 애플리케이션 보안 테스트)]], Black-box Testing, [[Fuzzing]]
|
||||
- **Projects/Contexts:** [[AppSec (애플리케이션 보안)]], CI/CD 파이프라인, [[SDLC (소프트웨어 개발 수명 주기)]]
|
||||
- **Contradictions/Notes:** 소스 내용 간의 모순은 존재하지 않으며, DAST는 코드를 직접 분석하는 SAST와 접근 방식(블랙박스 vs 화이트박스)에서 명확히 대비되지만 상호 배타적인 것이 아니라 강력한 보안 태세를 위해 함께 구축해야 하는 보완재로 설명됩니다 [4, 5].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-18*
|
||||
- Raw Source: [[00_Raw/2026-04-20/DAST (동적 애플리케이션 보안 테스트).md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-3A0CD0
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -33,11 +33,11 @@ github_commit: "[P-Reinforce] Continuous Worker - DOM 요소 조작 및 타입
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Type Narrowing]], [[Type Assertions]], [[Discriminated Unions]], [[Branded Types]]
|
||||
- **Projects/Contexts:** [[안전한 DOM 조작 및 데이터 정제]], [[React 컴포넌트 Props 처리]]
|
||||
- **Related Topics:** Type Narrowing, Type Assertions, [[Discriminated Unions]], Branded Types
|
||||
- **Projects/Contexts:** 안전한 DOM 조작 및 데이터 정제, React 컴포넌트 Props 처리
|
||||
- **Contradictions/Notes:** 타입 단언(`as`)은 DOM 요소를 다루며 타입을 좁힐 때 유용하고 흔하게 사용되지만 [5], 런타임 동작에는 영향을 주지 않으므로 타입 에러를 우회하여 잘못된 코드를 통과시킬 위험이 있습니다. 따라서 가능한 한 `satisfies`나 사용자 정의 타입 가드 등 더 안전한 방식을 우선적으로 고려하는 것이 좋습니다 [7, 8, 15].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-18*
|
||||
- Raw Source: [[00_Raw/2026-04-20/DOM 요소 조작 및 타입 좁히기.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-15DA1E
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -25,11 +25,11 @@ github_commit: "[P-Reinforce] Continuous Worker - DOM 요소 조작"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[타입 단언(Type Assertions)]], [[브랜디드 타입(Branded Types)]]
|
||||
- **Projects/Contexts:** [[안전한 TypeScript 프론트엔드 개발 및 XSS 방어]]
|
||||
- **Related Topics:** [[타입 단언(Type Assertions)]], 브랜디드 타입(Branded Types)
|
||||
- **Projects/Contexts:** 안전한 TypeScript 프론트엔드 개발 및 XSS 방어
|
||||
- **Contradictions/Notes:** 소스에 DOM 요소 조작의 본질적인 원리나 구체적인 API(예: 순수 자바스크립트 DOM API)에 대한 정보가 절대적으로 부족하므로 "소스에 관련 정보가 부족합니다."
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-18*
|
||||
- Raw Source: [[00_Raw/2026-04-20/DOM 요소 조작.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-5FB09F
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -22,11 +22,11 @@ github_commit: "[P-Reinforce] Continuous Worker - DeepReadonly"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[readonly]], [[Readonly<T>]], [[Mapped Types]], [[Conditional Types]]
|
||||
- **Projects/Contexts:** [[상태 관리(State Management)]], [[설정 객체(Configuration Objects)]], [[ts-essentials]]
|
||||
- **Related Topics:** [[readonly]], Readonly<T>, Mapped Types, Conditional Types
|
||||
- **Projects/Contexts:** [[상태 관리(State Management)]], 설정 객체(Configuration Objects), ts-essentials
|
||||
- **Contradictions/Notes:** 깊은 수준의 불변성을 보장하는 기능이 실무적으로 널리 요구되었음에도 불구하고 `DeepReadonly`는 TypeScript에 공식적으로 기본 내장되어 있지 않다는 점이 특징적이다 [5]. 이로 인해 추가적인 구현이나 외부 라이브러리 의존성이 요구된다 [5].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-18*
|
||||
- Raw Source: [[00_Raw/2026-04-20/DeepReadonly.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-B5A436
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -25,11 +25,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Depth Pre-Pass"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Occlusion Culling]], [[Z-buffer]], [[Overdraw]], [[Fragment Shader]]
|
||||
- **Projects/Contexts:** [[WebGL/Three.js CAD Rendering Optimization]]
|
||||
- **Related Topics:** Occlusion Culling, Z-buffer, [[Overdraw]], Fragment Shader
|
||||
- **Projects/Contexts:** WebGL/Three.js CAD Rendering Optimization
|
||||
- **Contradictions/Notes:** 소스에 상충되는 내용은 없으며, 오클루전 컬링을 CPU에서 처리하기 어렵거나 GPU 레이턴시로 인해 비용이 높을 때 이를 해결하는 가장 효과적인 우회(workaround) 기법으로 설명됩니다 [1].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Depth Pre-Pass.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-DEC013
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -30,11 +30,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Discriminated Unions"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Union Types]], [[Type Narrowing]], [[Exhaustiveness Checking]], [[Literal Types]], [[never type]]
|
||||
- **Projects/Contexts:** [[React State Management]], [[State Machine Pattern]], [[API Response Handling]], [[Redux Reducers]]
|
||||
- **Related Topics:** [[Union Types]], Type Narrowing, Exhaustiveness Checking, Literal Types, never type
|
||||
- **Projects/Contexts:** React State Management, State Machine Pattern, API Response Handling, Redux Reducers
|
||||
- **Contradictions/Notes:** Discriminated Union 패턴은 타입 안정성과 예측 가능성을 크게 높여주지만, 유니온 타입이 지나치게 복잡해지거나 깊은 중첩 구조를 가지게 되면 오히려 TypeScript의 컴파일 성능을 저하시키고 에러 메시지의 가독성을 떨어뜨리는 부작용(단점)을 유발할 수 있습니다 [10].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-18*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Discriminated Unions.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-0B8FFC
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -26,11 +26,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Draw Call Optimization"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[InstancedMesh]], [[BatchedMesh]], [[Frustum Culling]], [[Texture Atlas]], [[Level of Detail (LOD)]]
|
||||
- **Projects/Contexts:** [[Three.js]], [[WebGL]], [[Unity]]
|
||||
- **Related Topics:** [[InstancedMesh]], BatchedMesh, [[Frustum Culling]], [[Texture Atlas]], [[Level of Detail (LOD)]]
|
||||
- **Projects/Contexts:** Three.js, [[WebGL]], [[Unity]]
|
||||
- **Contradictions/Notes:** 일반적으로 드로우 콜을 줄이는 것은 렌더링 성능을 향상시킨다고 알려져 있지만, `InstancedMesh`를 통해 드로우 콜을 1회로 줄였음에도 불구하고 정렬되지 않은 인스턴스들이 유발하는 막대한 오버드로우(Overdraw) 비용이나 비효율적인 컬링으로 인해, 개별 메쉬를 렌더링할 때보다 오히려 프레임 속도(FPS)가 낮아지는 역설적인 상황이 실증적 연구와 버그 리포트 등에서 보고되고 있습니다 [29, 31, 35].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Draw Call Optimization.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-BDDA30
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -31,10 +31,10 @@ github_commit: "[P-Reinforce] Continuous Worker - ESLint"
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Prettier]], [[Husky]], [[lint-staged]], [[정적 분석(Static Analysis)]], [[AST(Abstract Syntax Tree)]]
|
||||
- **Projects/Contexts:** [[모노레포(Monorepo) 기반 구성 중앙화]], [[Git Hook을 이용한 CI/CD 자동화 파이프라인]]
|
||||
- **Projects/Contexts:** [[모노레포(Monorepo) 기반 구성 중앙화]], Git Hook을 이용한 CI/CD 자동화 파이프라인
|
||||
- **Contradictions/Notes:** 소스 [33]에서는 `eslint-plugin-prettier` 사용 시 에디터에 밑줄이 너무 많이 생기고 느려져 문서에서도 추천하지 않는다며 설정을 삭제했다고 언급하지만, 소스 [25]에서는 Prettier의 포매팅 이슈를 ESLint의 린터 오류로 띄워 통합적으로 관리할 수 있는 효과적인 방식이라고 설명하는 등 개발자 또는 조직 간의 `eslint-plugin-prettier` 활용에 대해 엇갈린 평가 및 설정 선호도 차이가 존재합니다.
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-18*
|
||||
- Raw Source: [[00_Raw/2026-04-20/ESLint.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-D03C5F
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -23,10 +23,10 @@ github_commit: "[P-Reinforce] Continuous Worker - Early-Z"
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Overdraw]], [[InstancedMesh]], [[Alpha Blending]]
|
||||
- **Projects/Contexts:** [[Three.js WebGL 렌더링 최적화]]
|
||||
- **Projects/Contexts:** Three.js WebGL 렌더링 최적화
|
||||
- **Contradictions/Notes:** 소스에 관련 정보가 부족합니다.
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Early-Z.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-2BC744
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -23,10 +23,10 @@ github_commit: "[P-Reinforce] Continuous Worker - Edge Bleeding"
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Texture Atlas]], [[Mipmap]], [[Data Array Textures]]
|
||||
- **Projects/Contexts:** [[InstancedMesh 최적화]], [[WebGL 2.0]]
|
||||
- **Projects/Contexts:** [[InstancedMesh 최적화]], WebGL 2.0
|
||||
- **Contradictions/Notes:** 소스에 관련 정보가 부족합니다. (소스 내에서 명시적인 의견 대립은 발견되지 않으며, Edge Bleeding은 텍스처 아틀라스의 명확한 단점[1, 2]이자 WebGL 2.0의 텍스처 배열 도입으로 쉽게 극복 가능한 문제[3, 4]로 일관되게 설명됩니다.)
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Edge Bleeding.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-C0B018
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -28,11 +28,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Effect TS 및 ts-brand 라이
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Branded Types]], [[Opaque Types]], [[Nominal Typing]], [[Structural Typing]]
|
||||
- **Projects/Contexts:** [[TypeScript Type Safety]]
|
||||
- **Related Topics:** Branded Types, Opaque Types, Nominal Typing, [[Structural Typing]]
|
||||
- **Projects/Contexts:** TypeScript Type Safety
|
||||
- **Contradictions/Notes:** 두 라이브러리는 모두 타입 안정성을 높이는 데 기여하지만, 타입 브랜드 단언 함수를 다루는 방식에서 차이를 보입니다. `ts-brand`는 `make`를 활용하는 반면, `Effect TS`는 유효성 검사 함수와 에러 처리 함수를 분리하여 입력받는 `Brand.refined`를 사용하도록 설계되었습니다 [5, 6].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-18*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Effect TS 및 ts-brand 라이브러리 활용.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-C7A07F
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -22,11 +22,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Effect TS"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Branded Types]], [[TypeScript]]
|
||||
- **Projects/Contexts:** [[Type-rich TypeScript Applications]]
|
||||
- **Related Topics:** Branded Types, TypeScript
|
||||
- **Projects/Contexts:** Type-rich TypeScript Applications
|
||||
- **Contradictions/Notes:** 소스에 관련 정보가 부족합니다.
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-18*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Effect TS.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-2DCEFC
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -24,11 +24,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Electron V8 Memory Cage"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Pointer Compression]], [[ArrayBuffer]], [[Type Confusion]], [[JIT Compiler]]
|
||||
- **Projects/Contexts:** [[Electron 21]], [[Chromium]], [[Node.js Native Modules]]
|
||||
- **Related Topics:** [[Pointer Compression]], ArrayBuffer, Type Confusion, JIT Compiler
|
||||
- **Projects/Contexts:** Electron 21, [[Chromium]], Node.js Native Modules
|
||||
- **Contradictions/Notes:** 소스에 따르면 V8 Memory Cage 및 Pointer Compression은 힙 크기를 최대 40% 줄이고 성능을 5-10% 향상시키는 등 긍정적 효과가 크지만 [6], 그 대가로 네이티브 모듈의 오프힙(Off-heap) 메모리 래핑을 금지시키고 힙을 4GB로 엄격히 제한하는 뚜렷한 트레이드오프를 가지고 있습니다 [3, 5, 7].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Electron V8 Memory Cage.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-687305
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -22,11 +22,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Electron"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[SharedArrayBuffer]], [[OOM (Out of Memory)]], [[Chromium GPU process]]
|
||||
- **Projects/Contexts:** [[Large-scale CAD applications]], [[WebGL/Three.js Rendering Optimization]]
|
||||
- **Related Topics:** SharedArrayBuffer, OOM (Out of Memory), Chromium GPU process
|
||||
- **Projects/Contexts:** Large-scale CAD applications, WebGL/Three.js Rendering Optimization
|
||||
- **Contradictions/Notes:** 소스에 Electron 프레임워크 자체의 전반적인 동작 원리나 일반적인 데스크톱 앱 개발과 관련된 정보가 부족합니다. 제공된 문서는 대규모 3D/CAD 렌더링 최적화 환경에서의 메모리 관리 및 누수 문제에 국한하여 Electron을 설명하고 있습니다.
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Electron.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-71F155
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -22,11 +22,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Escape Hatch (탈출구)"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Facade 패턴]], [[Low-level 인터페이스]], [[추상화(Abstraction)]]
|
||||
- **Projects/Contexts:** [[Toss Front SDK]], [[AWS CDK]]
|
||||
- **Related Topics:** Facade 패턴, Low-level 인터페이스, [[추상화(Abstraction)]]
|
||||
- **Projects/Contexts:** Toss Front SDK, AWS CDK
|
||||
- **Contradictions/Notes:** 소스에 따르면 추상화 수준이 높아질수록 세밀한 제어가 어려워진다는 필연적인 트레이드오프가 존재하지만, 20%의 특수 케이스를 위한 탈출구(Escape Hatch)를 제공함으로써 편의성과 유연성 사이의 이상적인 균형을 잡을 수 있다고 강조합니다 [1-3].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-18*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Escape Hatch (탈출구).md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-648FC3
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -27,11 +27,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Excess Property Checking"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Structural Typing]], [[satisfies Operator]], [[Weak Type Detection]]
|
||||
- **Projects/Contexts:** [[TypeScript Type System]], [[ESLint Rule Proposals (no-excess-properties)]]
|
||||
- **Related Topics:** [[Structural Typing]], [[satisfies Operator]], Weak Type Detection
|
||||
- **Projects/Contexts:** TypeScript Type System, ESLint Rule Proposals (no-excess-properties)
|
||||
- **Contradictions/Notes:** 소스 [25]에 따르면, Facebook의 Flow처럼 초과 속성을 허용하지 않는 정확한 객체 타입(`Exact<T>`) 구문을 TypeScript에도 도입하자는 오랜 제안이 있었으나, TypeScript 팀은 Excess Property Checking 자체를 더 똑똑하게 개선하는 방향을 선호한다. 한편, ESLint의 린트 룰을 통해 초과 속성 검사를 강제하려는 시도에 대해서는, TypeScript의 모든 객체가 본질적으로 구조적 타이핑에 의해 "inexact"한 특성을 갖기 때문에 린트 룰 적용 시 노이즈(False Positive)가 과도하게 발생할 수 있다는 반론이 제기된다 [26, 27].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-18*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Excess Property Checking.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-44E45F
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -23,11 +23,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Exergaming"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Virtual Reality (VR)]], [[Flow]], [[VR Sickness]]
|
||||
- **Related Topics:** Virtual Reality (VR), Flow, [[VR Sickness]]
|
||||
- **Projects/Contexts:** [[Beat Saber]]
|
||||
- **Contradictions/Notes:** VR 기술은 사용자의 몰입도(presence)를 극대화하여 엑서게임의 동기를 부여하고 신체적 피로를 잊게 하는 긍정적인 역할을 하지만, 동시에 VR 멀미(motion sickness)를 유발하여 오히려 사용자의 게임 플레이 성과와 체감하는 즐거움을 떨어뜨릴 수 있는 양면성을 지니고 있습니다 [2, 4].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Exergaming.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-7C58EE
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -30,11 +30,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Facade Pattern (퍼사드 패
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[단일 책임 원칙(SRP)]], [[인터페이스 분리 원칙(ISP)]]
|
||||
- **Projects/Contexts:** [[Toss Front SDK]], [[AWS CDK]]
|
||||
- **Related Topics:** [[단일 책임 원칙(SRP)]], 인터페이스 분리 원칙(ISP)
|
||||
- **Projects/Contexts:** Toss Front SDK, AWS CDK
|
||||
- **Contradictions/Notes:** 퍼사드 패턴은 사용자에게 높은 편의성을 제공하지만 필연적으로 세밀한 제어에 제약을 초래한다 [4]. 따라서 퍼사드의 편리함에만 안주하지 않고, 필요 시 세밀한 조작이 가능한 저수준 API(Escape Hatch)를 동시에 제공해 설계적 균형을 잡아야 한다고 소스들은 강조한다 [4, 5].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-18*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Facade Pattern (퍼사드 패턴).md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-524A98
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -24,11 +24,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Figma"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Smart Animate]], [[Hidden Layers]], [[Variants]]
|
||||
- **Projects/Contexts:** [[Figma Performance Optimization]]
|
||||
- **Related Topics:** Smart Animate, Hidden Layers, Variants
|
||||
- **Projects/Contexts:** Figma Performance Optimization
|
||||
- **Contradictions/Notes:** 베리언트의 수를 최소화하기 위해 중첩된 구조적 컴포넌트(nested structure components)를 사용하는 것은 직관과 달리 성능에 최악의 영향을 미칠 수 있습니다 [8]. 소스에 따르면, 구조적 컴포넌트로 인해 발생하는 숨겨진 레이어를 제거하고 대신 베리언트의 수를 늘리거나 개별 컴포넌트로 쪼개는 것이 오히려 성능 향상에 훨씬 유리합니다 [6, 7].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Figma.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-41DF27
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -28,5 +28,5 @@ github_commit: "[P-Reinforce] Continuous Worker - Flame Chart"
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Flame Chart.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-CE0886
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -23,11 +23,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Fuzzing"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[DAST]], [[Vulnerabilities]]
|
||||
- **Related Topics:** DAST, Vulnerabilities
|
||||
- **Projects/Contexts:** 애플리케이션의 동작 및 취약점을 포괄적으로 이해하기 위한 소프트웨어 보안 테스트 컨텍스트에서 활용됩니다 [1].
|
||||
- **Contradictions/Notes:** 소스에 관련 정보가 부족합니다.
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-18*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Fuzzing.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-31335C
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -22,11 +22,11 @@ github_commit: "[P-Reinforce] Continuous Worker - GC Root"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Garbage Collection]], [[Mark-Sweep Algorithm]], [[Memory Leak]], [[Reachability]]
|
||||
- **Projects/Contexts:** [[V8 Engine]], [[IBM SDK Java Technology]]
|
||||
- **Related Topics:** [[Garbage Collection]], Mark-Sweep Algorithm, Memory Leak, Reachability
|
||||
- **Projects/Contexts:** [[V8 Engine]], IBM SDK Java Technology
|
||||
- **Contradictions/Notes:** 소스에 따르면 V8 엔진(JavaScript)과 IBM Java 구현 모두 GC 루트를 통한 참조 추적이라는 핵심 원리를 공유하고 있습니다. 다만 실행 환경의 차이에 따라 V8은 DOM 요소나 클로저 등을 주로 다루고 [1, 5], Java는 JNI 참조나 클래스 정적 필드 등을 다룬다는 세부적인 특성의 차이를 보입니다 [2].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/GC Root.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-CA2F39
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -41,11 +41,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Garbage Collection(가비지
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Mark-Sweep]], [[Scavenger]], [[Stop-the-world]], [[Generational Hypothesis]], [[Memory Leak]]
|
||||
- **Projects/Contexts:** [[V8 JavaScript Engine]], [[IBM Eclipse OpenJ9]], [[Orinoco Garbage Collector]]
|
||||
- **Related Topics:** [[Mark-Sweep]], Scavenger, [[Stop-the-world]], [[Generational Hypothesis]], Memory Leak
|
||||
- **Projects/Contexts:** [[V8 JavaScript Engine]], IBM Eclipse OpenJ9, Orinoco Garbage Collector
|
||||
- **Contradictions/Notes:** 가비지 컬렉션은 메모리 누수를 대폭 줄여주지만, 프로그래머가 메모리 관리에 대한 전적인 통제권을 잃는다는 단점이 존재합니다(모바일 앱 등에서는 큰 문제점) [4, 5]. 또한 대안으로 거론되는 레퍼런스 카운팅(Reference Counting) 방식 역시 대규모 객체 그래프의 마지막 참조가 제거될 때 가비지 컬렉션과 유사한 예측 불가능한 정지 현상을 유발할 수 있어 완벽한 대체재는 아닙니다 [5].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Garbage Collection(가비지 컬렉션).md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-D9833D
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -24,11 +24,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Generational Hypothesis"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Garbage Collection]], [[V8 JavaScript Engine]], [[Young Generation (New Space)]], [[Old Generation (Old Space)]], [[Scavenger (Minor GC)]]
|
||||
- **Projects/Contexts:** [[V8 Memory Management]]
|
||||
- **Related Topics:** [[Garbage Collection]], [[V8 JavaScript Engine]], Young Generation (New Space), Old Generation (Old Space), Scavenger (Minor GC)
|
||||
- **Projects/Contexts:** V8 Memory Management
|
||||
- **Contradictions/Notes:** 제공된 소스들은 모두 일관되게 세대 가설의 원리와 V8 엔진 내 적용 방식을 지지하며, 이에 반대되는 모순된 주장이나 기록은 확인되지 않습니다.
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Generational Hypothesis.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-F69A27
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -36,10 +36,10 @@ github_commit: "[P-Reinforce] Continuous Worker - Git Hooks"
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** `[[Husky]]`, `[[lint-staged]]`, `[[ESLint]]`, `[[Prettier]]`
|
||||
- **Projects/Contexts:** `[[CI/CD 파이프라인 (CI/CD Pipelines)]]`, `[[코드 품질 관리 및 자동화 (Code Quality Management and Automation)]]`
|
||||
- **Projects/Contexts:** `CI/CD 파이프라인 (CI/CD Pipelines)`, `[[코드 품질 관리 및 자동화 (Code Quality Management and Automation)]]`
|
||||
- **Contradictions/Notes:** 소스에 따르면 Git Hook은 개발자가 강제로 우회(`--no-verify` 등)할 수 있으므로 절대적이고 완벽한 강제 수단이 될 수는 없습니다. 따라서 Hook은 로컬 환경에서 빠른 피드백을 제공하기 위한 도구로 취급되어야 하며, 최종적인 보안 및 품질 검증의 권한은 항상 CI(지속적 통합) 서버가 담당해야 한다고 강조합니다 [8, 14, 15].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-18*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Git Hooks.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-E60BE3
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -32,10 +32,10 @@ github_commit: "[P-Reinforce] Continuous Worker - Git Hook을 이용한 CI_CD
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Husky]], [[lint-staged]], [[ESLint]], [[Prettier]]
|
||||
- **Projects/Contexts:** [[자동화된 코드 품질 및 스타일 검사 워크플로우]]
|
||||
- **Projects/Contexts:** 자동화된 코드 품질 및 스타일 검사 워크플로우
|
||||
- **Contradictions/Notes:** lint-staged는 버전 10부터 성공적으로 파일이 수정되면 자동으로 `git add`를 수행하므로, 설정 파일의 커맨드 목록에 수동으로 `git add`를 넣는 것은 중복 작업 및 레이스 컨디션(race condition)을 유발할 수 있어 더 이상 권장되지 않는다 [17], [21]. 또한, 로컬 Git 훅은 우회(`--no-verify`)가 가능하므로 완벽한 정책 집행 경계가 될 수 없으며, CI 서버를 보완하는 성격으로 사용해야 한다 [19], [8], [21].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Git Hook을 이용한 CI_CD 자동화 파이프라인.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-26C070
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -30,5 +30,5 @@ github_commit: "[P-Reinforce] Continuous Worker - Git Pre-commit 훅을 활용
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-18*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Git Pre-commit 훅을 활용한 개발 워크플로우 자동화.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-D96374
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -24,11 +24,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Global Network Positioning (GN
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Latency Estimation]], [[Landmark Nodes]], [[Simplex-downhill Algorithm]]
|
||||
- **Projects/Contexts:** [[Google Content Delivery Network (CDN)]]
|
||||
- **Related Topics:** Latency Estimation, Landmark Nodes, Simplex-downhill Algorithm
|
||||
- **Projects/Contexts:** Google Content Delivery Network (CDN)
|
||||
- **Contradictions/Notes:** 기존의 수많은 GNP 모델과 구현체들은 시스템 확장을 위해 호스트들의 능동적인 측정 참여를 필수적으로 요구했으나, 구글의 대규모 CDN 구현 사례는 랜드마크 측에서의 수동적 측정과 스케줄러 조합만으로도 능동적 참여의 단점(보안 및 과부하 위험)을 극복하고 시스템을 구축할 수 있음을 증명했습니다.
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Global Network Positioning (GNP).md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-A2356F
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -31,10 +31,10 @@ github_commit: "[P-Reinforce] Continuous Worker - Google Chrome"
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** `[[V8 JavaScript Engine]]`, `[[Chrome DevTools]]`, `[[Garbage Collection]]`, `[[Pointer Compression]]`, `[[Blink]]`
|
||||
- **Projects/Contexts:** `[[Orinoco]]`, `[[Oilpan]]`, `[[V8 Memory Cage]]`
|
||||
- **Projects/Contexts:** `[[Orinoco]]`, `[[Oilpan]]`, `V8 Memory Cage`
|
||||
- **Contradictions/Notes:** 가비지 컬렉션은 개발자가 명시적으로 메모리를 관리하지 않도록 편의를 제공하지만, 처리 과정에서 예측할 수 없는 중단(Pause)을 발생시킬 위험이 있습니다. 이를 극복하기 위해 Chrome과 V8은 메인 스레드를 멈추는 대신 점진적(Incremental), 동시성(Concurrent), 병렬(Parallel) 기법 및 유휴 시간(Idle-time) 활용 모델을 도입하여 성능 저하를 방지하고 있습니다 [25-28].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Google Chrome.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-A3BFE1
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -29,11 +29,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Google Code Jam Dataset"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Code Stylometry]], [[Authorship Attribution]], [[Abstract Syntax Tree (AST)]], [[Concrete Syntax Tree (CST)]]
|
||||
- **Projects/Contexts:** [[Google Code Jam]], [[Machine Learning for Source Code]]
|
||||
- **Related Topics:** Code Stylometry, Authorship Attribution, Abstract Syntax Tree (AST), [[Concrete Syntax Tree (CST)]]
|
||||
- **Projects/Contexts:** Google Code Jam, Machine Learning for Source Code
|
||||
- **Contradictions/Notes:** 소스에 따르면 Google Code Jam 데이터셋은 높은 순도와 통제된 환경을 제공하여 식별 모델 학습에 매우 적합하지만 [3], 실제 프로덕션 환경의 코드와는 달리 대회 특유의 반복적인 보일러플레이트 코드가 다수 포함되어 있어 실제 현실의 소프트웨어(In the wild)를 대상으로 할 때와는 차이가 발생할 수 있다는 점이 지적됩니다 [6].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Google Code Jam Dataset.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-88077C
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -22,11 +22,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Google Lighthouse"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Chrome DevTools]], [[PageSpeed Insights]], [[Time to Interactive (TTI)]], [[Synthetic Lab Data]]
|
||||
- **Related Topics:** [[Chrome DevTools]], [[PageSpeed Insights]], [[Time to Interactive (TTI)]], Synthetic Lab Data
|
||||
- **Projects/Contexts:** [[Web Performance Optimization]]
|
||||
- **Contradictions/Notes:** 소스에 따르면 Lighthouse 점수의 단순 평균값은 일부 특이값(outlier)에 의해 왜곡될 수 있으므로 해석 시 주의가 필요합니다 [7]. 또한, Lighthouse의 스로틀링 시뮬레이션은 때때로 실제 브라우저 동작과 다르게 자원 로딩 영향을 평가하는 한계가 지적되어 최적화 작업이 요구되고 있습니다 [5].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Google Lighthouse.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-E3AFF4
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -32,11 +32,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Heap Snapshot"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Garbage Collection (GC)]], [[Memory Leak]], [[Shallow Size]], [[Retained Size]], [[Retainer Tree]]
|
||||
- **Projects/Contexts:** [[Chrome DevTools]], [[Node.js]], [[V8 Engine]]
|
||||
- **Related Topics:** Garbage Collection (GC), Memory Leak, Shallow Size, Retained Size, Retainer Tree
|
||||
- **Projects/Contexts:** [[Chrome DevTools]], Node.js, [[V8 Engine]]
|
||||
- **Contradictions/Notes:** 모든 데이터가 JavaScript 힙 스냅샷에 기록되는 것은 아닙니다. 네이티브 코드를 실행하는 Getter를 통해 구현된 속성이나 숫자와 같은 비문자열(non-string) 값은 스냅샷에 캡처되지 않습니다 [11]. 또한, 원시 힙 데이터에는 수천 개의 V8 내부 객체가 포함되므로, 실제 애플리케이션의 메모리 누수를 찾으려면 "Constructor(생성자)" 필터를 사용하여 분석 대상을 좁혀야 합니다 [17].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Heap Snapshot.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-9068BA
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -27,10 +27,10 @@ github_commit: "[P-Reinforce] Continuous Worker - Husky"
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Git Hooks]], [[lint-staged]], [[ESLint]], [[Prettier]]
|
||||
- **Projects/Contexts:** [[CI/CD Pipeline]], [[Monorepo]], [[Submodules]]
|
||||
- **Projects/Contexts:** CI/CD Pipeline, [[Monorepo]], [[Submodules]]
|
||||
- **Contradictions/Notes:** 소스에 따르면, 많은 개발자가 Husky와 `lint-staged`를 혼동하여 하나의 덩어리로 생각하곤 합니다. 하지만 두 도구는 명확히 구분되어야 합니다. Husky는 단순히 Git의 기본 훅을 관리하고 연결하는 '배선(hook wiring)' 역할을 할 뿐 작업 실행기(task runner)가 아니며, 실제 변경된 파일 단위로 작업을 오케스트레이션 하는 것은 `lint-staged`의 역할입니다 [2, 4, 16].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-18*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Husky.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-A6562D
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -32,11 +32,11 @@ github_commit: "[P-Reinforce] Continuous Worker - IBM 가비지 컬렉션"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[GC Policies (gencon, optavgpause, balanced)]], [[Stop-the-world (STW) Pause]], [[Mark, Sweep, and Compact Operations]]
|
||||
- **Projects/Contexts:** [[Eclipse OpenJ9™]], [[Java Object Heap]]
|
||||
- **Related Topics:** GC Policies (gencon, optavgpause, balanced), Stop-the-world (STW) Pause, Mark, Sweep, and Compact Operations
|
||||
- **Projects/Contexts:** Eclipse OpenJ9™, Java Object Heap
|
||||
- **Contradictions/Notes:** 애플리케이션 성능 최적화를 위해 동시 마크(Concurrent mark) 방식을 사용하면 STW 일시 중지 시간은 줄일 수 있지만, 쓰기 장벽(Write barrier) 작동으로 인한 추가 CPU 소비와 힙 락 할당 중 객체 추적에 따른 부하가 발생하는 트레이드오프(단점)가 존재합니다 [3]. 또한, 개발자가 `System.gc()`를 직접 호출하거나 finalizer를 이용해 GC를 통제하려 하면 오히려 애플리케이션 성능을 크게 저하시킬 수 있습니다 [5].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/IBM 가비지 컬렉션.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-659684
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -26,11 +26,11 @@ github_commit: "[P-Reinforce] Continuous Worker - IFCjs"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[BufferGeometry]], [[InstancedMesh]], [[Fragment]], [[Draw call]]
|
||||
- **Projects/Contexts:** [[대규모 기하학적 환경 시각화]], [[Autodesk Forge]]
|
||||
- **Related Topics:** [[BufferGeometry]], [[InstancedMesh]], Fragment, [[Draw call]]
|
||||
- **Projects/Contexts:** 대규모 기하학적 환경 시각화, Autodesk Forge
|
||||
- **Contradictions/Notes:** 소스에 명시적인 모순은 없으나, 모델 렌더링에 있어 `BufferGeometry` 병합 방식(메모리 소모 큼)과 `InstancedMesh` 방식(드로우 콜 증가) 간의 근본적인 트레이드오프(Trade-off)가 존재하며, IFC.js는 이를 해결하기 위해 두 방식을 혼합한 하이브리드 솔루션을 제안합니다 [2, 4, 5].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/IFC.js.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-A29470
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -30,11 +30,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Incremental Marking"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Garbage Collection]], [[Write Barrier]], [[Lazy Sweeping]], [[Mark-Sweep]], [[Orinoco]]
|
||||
- **Projects/Contexts:** [[V8 JavaScript Engine]], [[IBM OpenJ9]]
|
||||
- **Related Topics:** [[Garbage Collection]], [[Write Barrier]], Lazy Sweeping, [[Mark-Sweep]], [[Orinoco]]
|
||||
- **Projects/Contexts:** [[V8 JavaScript Engine]], IBM OpenJ9
|
||||
- **Contradictions/Notes:** V8 엔진의 Incremental Marking은 메인 스레드가 자바스크립트 실행 중간에 간헐적으로 마킹 작업을 나누어 수행하는 구조이지만 [2], IBM JVM의 Incremental concurrent mark 작업에서는 애플리케이션 스레드가 객체 추적에 관여하지 않으며 오직 백그라운드 스레드만이 사용된다는 기술적 차이가 존재합니다 [8].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Incremental Marking.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-42C840
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -23,10 +23,10 @@ github_commit: "[P-Reinforce] Continuous Worker - Index Masking"
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Spectre and Meltdown]], [[Pointer Poisoning]], [[Branchless Security Checks]]
|
||||
- **Projects/Contexts:** [[WebKit]], [[Micro-latency Measurement in Web Graphics Pipelines]]
|
||||
- **Projects/Contexts:** [[WebKit]], Micro-latency Measurement in Web Graphics Pipelines
|
||||
- **Contradictions/Notes:** 소스 [5]에서는 Index Masking 기술이 그래픽 실행의 크리티컬 패스에 명령어를 추가하여 마이크로 지연 시간을 증가시킨다고 설명하지만, 소스 [4]의 벤치마크 결과에 따르면 실제 환경의 주요 성능 테스트(Speedometer 등)에서는 그 영향이 측정되지 않거나 2.5% 미만으로 매우 미미하다고 보고합니다.
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Index Masking.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-D6CCE0
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -27,11 +27,11 @@ github_commit: "[P-Reinforce] Continuous Worker - InstancedMesh 동적 버퍼
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[InstancedMesh]], [[가비지 컬렉션 (Garbage Collection)]], [[객체 풀링 (Object Pooling)]], [[버퍼 사전 할당 (Buffer Preallocation)]]
|
||||
- **Projects/Contexts:** [[Needle Engine]], [[A-Frame (instanced-mesh 컴포넌트)]], [[실시간 웹 그래픽스 최적화]]
|
||||
- **Related Topics:** [[InstancedMesh]], [[가비지 컬렉션 (Garbage Collection)]], 객체 풀링 (Object Pooling), 버퍼 사전 할당 (Buffer Preallocation)
|
||||
- **Projects/Contexts:** [[Needle Engine]], A-Frame (instanced-mesh 컴포넌트), 실시간 웹 그래픽스 최적화
|
||||
- **Contradictions/Notes:** 예측 불가능한 다량의 객체를 렌더링하려면 동적 확장이 필수적인 기능처럼 보이나, 실제 렌더링 환경에서는 이 과정이 프레임 드랍과 메모리 누수 위험 등 높은 리스크를 수반하므로 오히려 고정 용량 할당이나 풀링을 통해 원천적으로 확장을 회피하는 것이 강력히 권장된다 [1, 3, 4].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/InstancedMesh 동적 버퍼 확장.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-88CEC2
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -36,11 +36,11 @@ github_commit: "[P-Reinforce] Continuous Worker - InstancedMesh 사용 시 드
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Frustum Culling]], [[Overdraw]], [[BatchedMesh]], [[WebGPU Compute Shader]], [[Texture Atlas]], [[Garbage Collection (GC)]]
|
||||
- **Related Topics:** [[Frustum Culling]], [[Overdraw]], BatchedMesh, [[WebGPU Compute Shader]], [[Texture Atlas]], Garbage Collection (GC)
|
||||
- **Projects/Contexts:** [[대규모 웹 그래픽스 프로젝트]], [[CAD 렌더링 최적화]], [[BIM 모델 렌더링]]
|
||||
- **Contradictions/Notes:** 소스에 따르면 InstancedMesh 기술은 드로우 콜을 획기적으로 줄여 CPU 부담을 최소화하지만, 자체적인 정렬 부재와 컬링의 한계로 인해 조명 연산이 복잡한 환경에서는 오버드로우를 유발하여 결과적으로 GPU 픽셀 처리 성능을 상회하게 만들어 전체 FPS를 하락시킬 수 있다는 모순된 현상이 발생함을 강력히 지적합니다 [6]. 또한 대안으로 제시되는 BatchedMesh 역시 드로우 콜을 줄일 수는 있으나, 극한의 대규모 삼각형 렌더링 시에는 버퍼 패킹 비용이 오히려 일반 메쉬 렌더링보다 낮은 성능을 보이는 병목 사례가 보고됩니다 [15].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/InstancedMesh 사용 시 드로우 콜 최적화의 한계점 사례 연구.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-7D070F
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -22,11 +22,11 @@ github_commit: "[P-Reinforce] Continuous Worker - InstancedMesh 최적화"
|
||||
* **컬링(Culling)의 비효율성:** InstancedMesh는 엔진 수준에서 단일 객체로 취급되므로, 개별 인스턴스 단위가 아닌 전체를 아우르는 거대한 바운딩 볼륨을 기준으로 단 한 번의 시야 절두체 컬링(Frustum Culling)을 수행합니다 [15]. 이로 인해 시야 밖의 수많은 객체에 대해서도 불필요한 GPU 정점 연산이 강제될 수 있습니다 [15], [16].
|
||||
* **정렬 부재와 오버드로우(Overdraw):** 카메라 거리에 따른 자동 정렬 기능을 제공하지 않기 때문에, 뒤에 가려진 픽셀 연산을 조기에 종료(Early-Z)하지 못해 오버드로우가 발생합니다 [17], [18]. 특히 투명/반투명 객체 렌더링 시에는 깊이 정렬이 뒤섞여 시각적 오류를 초래합니다 [19].
|
||||
* **메모리 대역폭 한계:** 애니메이션 등으로 매 프레임 수백만 개의 인스턴스 변환 행렬(인스턴스당 64바이트)을 갱신해야 할 경우, 데이터 전송량이 시스템 버스 대역폭을 포화시켜 프레임 지연(Stuttering)을 유발할 수 있습니다 [20], [21].
|
||||
* **다양성 표현의 제약:** 단일 지오메트리와 단일 재질만 참조할 수 있어 다양한 에셋을 표현하기 어렵습니다 [22]. 개별 인스턴스에 서로 다른 텍스처를 적용하려면 [[Texture Atlas]]나 [[데이터 배열 텍스처(Data Array Textures)]]를 활용하고 UV 오프셋을 조정하는 추가적인 셰이더 조작이 강제됩니다 [23], [24], [25].
|
||||
* **다양성 표현의 제약:** 단일 지오메트리와 단일 재질만 참조할 수 있어 다양한 에셋을 표현하기 어렵습니다 [22]. 개별 인스턴스에 서로 다른 텍스처를 적용하려면 [[Texture Atlas]]나 데이터 배열 텍스처(Data Array Textures)를 활용하고 UV 오프셋을 조정하는 추가적인 셰이더 조작이 강제됩니다 [23], [24], [25].
|
||||
|
||||
* **한계 극복을 위한 개선 및 대안 전략**
|
||||
* **공간 분할 기반 그룹화:** 모든 객체를 하나의 거대한 InstancedMesh로 묶기보다는, 공간적으로 인접한 객체끼리 소규모(100~500개)로 분할하여 관리하면 절두체 컬링의 정밀도를 높여 GPU 연산 낭비를 줄일 수 있습니다 [7].
|
||||
* **InstancedMesh2 및 BatchedMesh 활용:** 단일 지오메트리 제약이 문제가 된다면, 서로 다른 지오메트리를 하나의 드로우 콜로 묶어주는 [[BatchedMesh]] 사용이 권장됩니다 [26], [27]. 또한, 커뮤니티 생태계의 `InstancedMesh2` 라이브러리를 활용하면 개별 인스턴스의 프러스텀 컬링, 정렬, [[Level of Detail (LOD)]], BVH 기반의 빠른 레이캐스팅, 스킨드 애니메이션 최적화 등의 기능을 확장 적용할 수 있습니다 [28], [29], [30].
|
||||
* **InstancedMesh2 및 BatchedMesh 활용:** 단일 지오메트리 제약이 문제가 된다면, 서로 다른 지오메트리를 하나의 드로우 콜로 묶어주는 BatchedMesh 사용이 권장됩니다 [26], [27]. 또한, 커뮤니티 생태계의 `InstancedMesh2` 라이브러리를 활용하면 개별 인스턴스의 프러스텀 컬링, 정렬, [[Level of Detail (LOD)]], BVH 기반의 빠른 레이캐스팅, 스킨드 애니메이션 최적화 등의 기능을 확장 적용할 수 있습니다 [28], [29], [30].
|
||||
* **WebGPU 컴퓨트 셰이더 도입:** WebGPU 환경에서는 GPU가 직접 가시성 판단과 컬링을 처리하여 CPU와 GPU 간의 통신 비용을 "0"에 수렴하게 하는 간접 그리기(Indirect Draw) 방식이 차세대 대안으로 떠오르고 있습니다 [31].
|
||||
|
||||
## ⚠️ 모순 및 업데이트 (Contradictions & RL Update)
|
||||
@@ -34,13 +34,13 @@ github_commit: "[P-Reinforce] Continuous Worker - InstancedMesh 최적화"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Draw Call]], [[Frustum Culling]], [[BatchedMesh]], [[Texture Atlas]], [[Level of Detail (LOD)]], [[Overdraw]]
|
||||
- **Projects/Contexts:** [[Three.js]], [[WebGL/WebGPU Rendering]], [[Babylon.js]], [[Unity GPU Instancing]]
|
||||
- **Related Topics:** [[Draw Call]], [[Frustum Culling]], BatchedMesh, [[Texture Atlas]], [[Level of Detail (LOD)]], [[Overdraw]]
|
||||
- **Projects/Contexts:** Three.js, WebGL/WebGPU Rendering, Babylon.js, Unity GPU Instancing
|
||||
- **Contradictions/Notes:**
|
||||
* "InstancedMesh를 사용하면 항상 성능이 향상된다고 가정하기 쉽지만, 소스는 매우 단순한 기하학(예: 단일 삼각형)의 경우 인스턴싱 변환 행렬 데이터를 처리하는 오버헤드가 더 커서 단순히 지오메트리를 병합(Merging)하는 방식이 오히려 프레임 레이트 측면에서 유리할 수 있다고 주장합니다 [32], [33]."
|
||||
* "드로우 콜 수가 극적으로 감소함에도 불구하고, 5,000개 수준의 객체 환경에서는 인스턴스 정렬 부재로 인한 오버드로우 비용이 CPU 이득을 상회하여 일반 메쉬 렌더링보다 낮은 FPS를 기록할 수 있다고 경고합니다 [18]."
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/InstancedMesh 최적화.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-354B99
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -28,11 +28,11 @@ github_commit: "[P-Reinforce] Continuous Worker - InstancedMesh"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Draw Call]], [[BatchedMesh]], [[Frustum Culling]], [[BufferGeometry]], [[Overdraw]]
|
||||
- **Projects/Contexts:** [[Three.js]], [[WebGL]], [[InstancedMesh2]]
|
||||
- **Related Topics:** [[Draw Call]], BatchedMesh, [[Frustum Culling]], [[BufferGeometry]], [[Overdraw]]
|
||||
- **Projects/Contexts:** Three.js, [[WebGL]], [[InstancedMesh2]]
|
||||
- **Contradictions/Notes:** InstancedMesh는 드로우 콜 횟수를 줄여 전반적인 성능을 높이기 위해 사용되지만, 자동 정렬의 부재 및 개별 인스턴스 컬링 불가 문제로 인해 극심한 오버드로우가 발생할 경우, 일반적인 Mesh(공유 속성 활용)를 사용할 때보다 오히려 프레임 레이트(FPS)가 급격히 저하되는 역설적인 병목 현상이 발생할 수 있다고 여러 소스에서 경고한다 [15, 17, 28, 29].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/InstancedMesh.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-48DB08
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -22,11 +22,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Interop 2025"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Core Web Vitals]], [[Largest Contentful Paint]], [[Interaction to Next Paint]], [[Cumulative Layout Shift]]
|
||||
- **Related Topics:** [[Core Web Vitals]], Largest Contentful Paint, Interaction to Next Paint, Cumulative Layout Shift
|
||||
- **Projects/Contexts:** [[Interop 2026]]
|
||||
- **Contradictions/Notes:** 소스에 관련 정보가 부족합니다. (특별한 모순이나 상충하는 의견은 발견되지 않음)
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Interop 2025.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-9C355C
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -23,10 +23,10 @@ github_commit: "[P-Reinforce] Continuous Worker - Inventory Management Example"
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[satisfies Keyword]], [[Excess Property Checking]], [[Type Casting]]
|
||||
- **Projects/Contexts:** [[Frontend-Backend Data Transformation]]
|
||||
- **Projects/Contexts:** Frontend-Backend Data Transformation
|
||||
- **Contradictions/Notes:** 소스는 데이터 변환 시 `as` 키워드를 사용한 타입 캐스팅에 의존하는 것을 경고합니다. 타입 캐스팅은 초과 속성 검사를 우회하여 조용한 오류(silent errors)와 의도치 않은 동작을 유발할 수 있으므로, 엄격한 계약을 강제하기 위해서는 `satisfies`를 사용하는 것이 더 안전합니다 [3, 4].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-18*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Inventory Management Example.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-EC8C7D
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -31,11 +31,11 @@ github_commit: "[P-Reinforce] Continuous Worker - JPEG XL"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[AVIF]], [[WebP]]
|
||||
- **Projects/Contexts:** [[Web Performance]], [[Google Chrome Browser Support]]
|
||||
- **Related Topics:** AVIF, WebP
|
||||
- **Projects/Contexts:** Web Performance, Google Chrome Browser Support
|
||||
- **Contradictions/Notes:** 구글은 2022년 10월에 "생태계의 관심 부족"을 이유로 JPEG XL 지원 코드를 제거했으나, 3년 뒤인 2025년 11월에는 "개발자들의 지속적인 관심"을 이유로 크롬 지원에 반대하지 않는다고 입장을 전환했다 [2, 3].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/JPEG XL.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-1AF373
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -24,10 +24,10 @@ github_commit: "[P-Reinforce] Continuous Worker - JavaScriptCore"
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[WebKit]], [[Spectre]], [[WebAssembly]], [[Speculative execution]], [[Pointer poisoning]]
|
||||
- **Projects/Contexts:** [[WebKit's Spectre and Meltdown Mitigations]]
|
||||
- **Projects/Contexts:** WebKit's Spectre and Meltdown Mitigations
|
||||
- **Contradictions/Notes:** 소스에 관련 정보가 부족합니다.
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/JavaScriptCore.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-A0754B
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -23,11 +23,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Joern"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[AST(Abstract Syntax Tree)]], [[Authorship Attribution]]
|
||||
- **Projects/Contexts:** [[Caliskan-Islam 등의 프로그램 바이너리 작성자 식별 연구]]
|
||||
- **Related Topics:** [[AST(Abstract Syntax Tree)]], Authorship Attribution
|
||||
- **Projects/Contexts:** Caliskan-Islam 등의 프로그램 바이너리 작성자 식별 연구
|
||||
- **Contradictions/Notes:** 소스에 관련 정보가 부족합니다. Joern 자체의 상세한 구조나 추가적인 기능에 대해서는 소스 내에 언급된 바가 없으며, 디컴파일된 코드를 파싱하는 도구로서 단 1회 언급되었습니다.
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-18*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Joern.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-F8BE8B
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -31,11 +31,11 @@ github_commit: "[P-Reinforce] Continuous Worker - MVC (Model-View-Controller)"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Separation of Concerns (SoC)]], [[Software Architecture]], [[Clean Architecture]]
|
||||
- **Projects/Contexts:** [[Web Applications]], [[GUI Development]]
|
||||
- **Related Topics:** Separation of Concerns (SoC), Software Architecture, Clean Architecture
|
||||
- **Projects/Contexts:** Web Applications, GUI Development
|
||||
- **Contradictions/Notes:** 소스에 관련 정보가 부족합니다.
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-18*
|
||||
- Raw Source: [[00_Raw/2026-04-20/MVC (Model-View-Controller).md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-D3B770
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -30,13 +30,13 @@ github_commit: "[P-Reinforce] Continuous Worker - Major GC"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Minor GC]], [[Mark-Sweep]], [[Mark-Compact]], [[Orinoco]], [[Old Space]]
|
||||
- **Projects/Contexts:** [[V8 JavaScript Engine]], [[Node.js Memory Management]]
|
||||
- **Related Topics:** Minor GC, [[Mark-Sweep]], Mark-Compact, [[Orinoco]], [[Old Space]]
|
||||
- **Projects/Contexts:** [[V8 JavaScript Engine]], Node.js Memory Management
|
||||
- **Contradictions/Notes:**
|
||||
- Minor GC(Scavenge)는 새롭게 할당된 작고 수명이 짧은 객체를 신속하게 처리하는 반면, Major GC는 크기가 크고 수명이 긴 Old Space 영역을 처리하므로 상대적으로 비용이 더 많이 들며 덜 빈번하게 발생합니다 [1, 3, 4, 10].
|
||||
- 과거의 주요 가비지 컬렉터들은 전체 과정을 동기적으로 수행하여 'Stop-the-world' 상태를 초래했지만, 현재의 메이저 GC는 점진적이고 동시적인 기법을 통해 메인 스레드의 멈춤 시간을 사실상 사용자가 인지하지 못할 수준으로 개선했습니다 [6-8, 22].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Major GC.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-AF3315
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -25,11 +25,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Mark-Sweep-Compact 알고리
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Garbage Collection]], [[V8 Engine]], [[Old Space]], [[Java Heap Memory]]
|
||||
- **Projects/Contexts:** [[V8 엔진의 Old Generation 메모리 관리]], [[IBM JVM의 가비지 컬렉션 메커니즘]]
|
||||
- **Related Topics:** [[Garbage Collection]], [[V8 Engine]], [[Old Space]], Java Heap Memory
|
||||
- **Projects/Contexts:** V8 엔진의 Old Generation 메모리 관리, IBM JVM의 가비지 컬렉션 메커니즘
|
||||
- **Contradictions/Notes:** 컴팩트(Compact) 작업은 단편화를 해결하여 캐시 지역성(cache locality)을 높이지만, 포인터 재조정과 객체 이동 비용으로 인해 애플리케이션의 'Stop-the-world(STW)' 일시 중지 시간을 증가시킬 수 있습니다 [3]. 이를 보완하기 위해 V8 엔진은 객체 그래프가 변경될 가능성을 쓰기 장벽(Write barrier)으로 제어하며 점진적 마킹(Incremental marking) 및 지연 스윕(Lazy sweeping) 기술을 도입하여 메인 스레드 멈춤 시간을 줄이고 있습니다 [12], [13], [14].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Mark-Sweep-Compact 알고리즘.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-50957B
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -37,11 +37,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Mark-Sweep-Compact(메이저 G
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Garbage Collection]], [[Old Generation/Space]], [[Memory Fragmentation]], [[Incremental Marking]]
|
||||
- **Projects/Contexts:** [[V8 Engine (JavaScript)]], [[JVM (Java Virtual Machine)]], [[Orinoco Garbage Collector]]
|
||||
- **Related Topics:** [[Garbage Collection]], Old Generation/Space, Memory Fragmentation, [[Incremental Marking]]
|
||||
- **Projects/Contexts:** V8 Engine (JavaScript), JVM (Java Virtual Machine), Orinoco Garbage Collector
|
||||
- **Contradictions/Notes:** 소스 자료 전반에 걸쳐 큰 모순은 존재하지 않습니다. 다만, 컴팩팅(Compacting) 작업은 메모리 파편화를 완전히 해결하는 훌륭한 방법이지만 V8과 JVM 두 환경 모두에서 매우 무겁고 값비싼(expensive) 동작으로 공통되게 취급되며, 항상 실행되지 않고 철저한 휴리스틱이나 임계조건에 의해 선택적으로 발동된다는 점이 강조됩니다 [6, 16, 17].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Mark-Sweep-Compact(메이저 GC).md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-261A28
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -34,11 +34,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Mark-Sweep"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Garbage Collection]], [[Old Generation]], [[Mark-Compact]], [[Incremental Marking]], [[Lazy Sweeping]]
|
||||
- **Projects/Contexts:** [[V8 JavaScript Engine]], [[JVM (Java Virtual Machine)]], [[Orinoco Garbage Collector]]
|
||||
- **Contradictions/Notes:** 마크-스위프는 빠르고 공간을 효과적으로 재활용하지만, 메모리 파편화(Fragmentation)를 유발할 수 있습니다. 따라서 V8에서는 파편화가 심한 페이지의 라이브 객체를 이동시키고 빈 공간을 병합하는 [[Mark-Compact]] 알고리즘과 밀접하게 연계되어 사용됩니다 [2, 4, 5, 20]. 또한, Node.js 환경에서 `--trace_gc` 로그 상에 'Mark-sweep'이 지나치게 자주 발생하거나 반환되는 메모리가 미미하다면 애플리케이션 내 메모리 누수(Memory Leak)나 CPU 집약적 블로킹 작업이 존재할 가능성이 높습니다 [21, 22].
|
||||
- **Related Topics:** [[Garbage Collection]], Old Generation, Mark-Compact, [[Incremental Marking]], Lazy Sweeping
|
||||
- **Projects/Contexts:** [[V8 JavaScript Engine]], JVM (Java Virtual Machine), Orinoco Garbage Collector
|
||||
- **Contradictions/Notes:** 마크-스위프는 빠르고 공간을 효과적으로 재활용하지만, 메모리 파편화(Fragmentation)를 유발할 수 있습니다. 따라서 V8에서는 파편화가 심한 페이지의 라이브 객체를 이동시키고 빈 공간을 병합하는 Mark-Compact 알고리즘과 밀접하게 연계되어 사용됩니다 [2, 4, 5, 20]. 또한, Node.js 환경에서 `--trace_gc` 로그 상에 'Mark-sweep'이 지나치게 자주 발생하거나 반환되는 메모리가 미미하다면 애플리케이션 내 메모리 누수(Memory Leak)나 CPU 집약적 블로킹 작업이 존재할 가능성이 높습니다 [21, 22].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Mark-Sweep.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-9CC04F
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -36,5 +36,5 @@ github_commit: "[P-Reinforce] Continuous Worker - Monorepo(Turborepo 등) 환경
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-18*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Monorepo(Turborepo 등) 환경의 린트 관리.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-D52D12
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -24,10 +24,10 @@ github_commit: "[P-Reinforce] Continuous Worker - Monorepo"
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[ESLint]], [[Prettier]], [[lint-staged]], [[Husky]], [[Turborepo]]
|
||||
- **Projects/Contexts:** [[대규모 소프트웨어 엔지니어링 및 CI/CD 파이프라인]], [[자동화된 코드 거버넌스(Automated Governance)]]
|
||||
- **Projects/Contexts:** 대규모 소프트웨어 엔지니어링 및 CI/CD 파이프라인, 자동화된 코드 거버넌스(Automated Governance)
|
||||
- **Contradictions/Notes:** 모노레포 내 `lint-staged` 적용과 관련하여 `lint-staged`의 공식 지침은 저장소 루트에 도구를 설치하고 각 패키지에 완전히 격리된 별도의 설정 파일을 두는 것을 권장하지만 [12, 13], Turborepo를 활용하는 모던 아키텍처 환경에서는 루트에 오케스트레이션 설정 하나를 두고 파일 패턴을 각 패키지 환경에 매핑하는 방식이 더 나은 개발자 경험(DX)을 제공하는 대안으로 제시되기도 합니다 [4, 8].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Monorepo.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-7C6103
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -31,11 +31,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Netflix 마이크로서비스
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[모놀리식 아키텍처]], [[수평적 확장 (Scale out)]], [[Cassandra]], [[오픈소스 (OSS)]], [[서버리스 함수]]
|
||||
- **Projects/Contexts:** [[Reloaded 시스템]], [[Cosmos 플랫폼]], [[Chaos Monkey (Simian Army)]]
|
||||
- **Related Topics:** 모놀리식 아키텍처, 수평적 확장 (Scale out), Cassandra, 오픈소스 (OSS), 서버리스 함수
|
||||
- **Projects/Contexts:** Reloaded 시스템, Cosmos 플랫폼, Chaos Monkey (Simian Army)
|
||||
- **Contradictions/Notes:** 마이크로서비스 아키텍처는 혁신과 배포 속도 향상이라는 큰 장점을 가져다주었지만, 반대로 구현 시 분산 시스템의 복잡성을 관리해야 하고 다수의 서비스 인스턴스를 실행하는 데 따른 심각한 메모리 사용량(오버헤드) 증가를 초래한다는 구조적 한계점이 소스에서 분명히 지적되고 있습니다 [10, 11].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-18*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Netflix 마이크로서비스 전환.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-BF761A
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -35,11 +35,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Network Coordinate Systems"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Global Network Positioning (GNP)]], [[Latency Estimation]], [[Passive Latency Discovery]]
|
||||
- **Projects/Contexts:** [[Google Content Delivery Network (CDN)]], [[Test Traffic Measurements (TTM)]]
|
||||
- **Related Topics:** [[Global Network Positioning (GNP)]], Latency Estimation, Passive Latency Discovery
|
||||
- **Projects/Contexts:** Google Content Delivery Network (CDN), Test Traffic Measurements (TTM)
|
||||
- **Contradictions/Notes:** Lighthouses나 NPS와 같은 분산형 네트워크 좌표 시스템들은 기존 호스트들을 로컬 랜드마크로 활용하여 확장성을 높일 수 있다고 주장합니다 [22, 23]. 하지만 구글 CDN 연구에서는 이러한 분산형 구조가 오히려 악의적 호스트 관리, 측정 스케줄링 동기화, 전역적 일관성 유지 등의 복잡한 문제를 유발하므로, 고정된 랜드마크 인프라와 중앙 집중식 스케줄러를 사용하는 것이 확장성 제한 없이 훨씬 효율적이고 단순한 해결책이라고 반대 의견을 제시합니다 [24].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Network Coordinate Systems.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-9FB32F
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -30,11 +30,11 @@ github_commit: "[P-Reinforce] Continuous Worker - New Space(Young Generation)"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[Minor GC(Scavenger)]], [[Old Space(Old Generation)]], [[Generational Hypothesis]], [[Semi-space Design]]
|
||||
- **Projects/Contexts:** [[V8 JavaScript Engine]], [[Node.js Memory Management]]
|
||||
- **Related Topics:** Minor GC(Scavenger), [[Old Space(Old Generation)]], [[Generational Hypothesis]], Semi-space Design
|
||||
- **Projects/Contexts:** [[V8 JavaScript Engine]], Node.js Memory Management
|
||||
- **Contradictions/Notes:** 소스 간에 New Space의 일반적인 크기 범위에 대한 서술에 약간의 차이가 존재합니다. 소스 [4]은 행동 휴리스틱에 따라 "1MB에서 8MB 사이"라고 명시하지만, 소스 [7]은 "일반적으로 1MB에서 64MB 사이"로 다소 더 큰 범위를 제시합니다.
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/New Space(Young Generation).md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-254A8B
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -35,11 +35,11 @@ Node.js는 메모리 최적화를 위해 V8 엔진의 메모리 관련 설정을
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[V8 JavaScript Engine]], [[Garbage Collection]], [[Heap Memory]], [[Memory Leaks]]
|
||||
- **Projects/Contexts:** [[Node.js Production Profiling]], [[Performance Optimization]]
|
||||
- **Related Topics:** [[V8 JavaScript Engine]], [[Garbage Collection]], Heap Memory, [[Memory Leaks]]
|
||||
- **Projects/Contexts:** Node.js Production Profiling, [[Performance Optimization]]
|
||||
- **Contradictions/Notes:** `--expose-gc` 플래그를 통해 수동으로 가비지 컬렉션을 실행하더라도, V8의 일반적인 자동 GC 알고리즘이 비활성화되는 것은 아닙니다. 수동 호출을 과도하게 사용하면 오히려 성능에 부정적인 영향을 미칠 수 있으므로 주의가 필요합니다 [15]. 또한, `--gc-interval`의 간격을 너무 짧게 설정할 경우 잦은 GC 수행으로 인해 애플리케이션의 성능 저하를 유발할 수 있습니다 [14].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Node.js Memory Tuning.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-D6D630
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -28,11 +28,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Nodejs Production Monitoring"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[V8 Garbage Collection]], [[Heap Snapshot]], [[Memory Leak]], [[Performance Hooks]], [[Prometheus]]
|
||||
- **Projects/Contexts:** [[Node.js Production Server]]
|
||||
- **Related Topics:** V8 Garbage Collection, [[Heap Snapshot]], Memory Leak, Performance Hooks, Prometheus
|
||||
- **Projects/Contexts:** Node.js Production Server
|
||||
- **Contradictions/Notes:** Node.js는 단일 프로세스로 수명이 길기 때문에 요청 컨텍스트가 프로세스와 함께 소멸하는 전통적인 다중 프로세스 서버와 다르게 메모리 참조가 지속적으로 누적된다는 구조적 차이점이 있습니다 [1]. 한편, 모니터링이나 특정 엣지 케이스에서 `--expose-gc`를 통해 수동으로 GC(`global.gc()`)를 트리거할 수 있지만, 이는 정상적인 자동 GC 알고리즘을 비활성화하는 것은 아니며 남용할 경우 심각한 성능 저하를 유발할 수 있으므로 주의가 필요합니다 [13, 14].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Node.js Production Monitoring.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-4670EE
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -39,11 +39,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Nodejs 메모리 최적화"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[V8 JavaScript Engine]], [[Garbage Collection (GC)]], [[Heap Snapshot]]
|
||||
- **Projects/Contexts:** [[Chrome DevTools Memory Profiling]], [[Node.js Production Environments]]
|
||||
- **Related Topics:** [[V8 JavaScript Engine]], Garbage Collection (GC), [[Heap Snapshot]]
|
||||
- **Projects/Contexts:** [[Chrome DevTools Memory Profiling]], Node.js Production Environments
|
||||
- **Contradictions/Notes:** `--expose-gc` 플래그를 통한 수동 가비지 컬렉션 호출(`global.gc()`)은 대량의 데이터 처리 후 즉시 메모리를 회수해야 하는 특수 상황에서 유용할 수 있지만, 일반적인 V8의 자동 GC 메커니즘을 대체하는 것은 아니며 남용 시 과도한 GC 사이클 실행으로 인해 애플리케이션 성능을 크게 저하시킬 위험이 있습니다 [20].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Node.js 메모리 최적화.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-EA5D5E
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -40,13 +40,13 @@ github_commit: "[P-Reinforce] Continuous Worker - Nodejs 메모리 튜닝"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[V8 자바스크립트 엔진]], [[가비지 컬렉션(GC)]], [[힙 스냅샷(Heap Snapshot)]], [[메모리 누수(Memory Leak)]]
|
||||
- **Projects/Contexts:** [[Orinoco GC 프로젝트]], [[Chrome DevTools 메모리 분석]]
|
||||
- **Related Topics:** V8 자바스크립트 엔진, 가비지 컬렉션(GC), 힙 스냅샷(Heap Snapshot), 메모리 누수(Memory Leak)
|
||||
- **Projects/Contexts:** Orinoco GC 프로젝트, Chrome DevTools 메모리 분석
|
||||
- **Contradictions/Notes:**
|
||||
- V8 엔진의 포인터 압축(Pointer Compression) 기능 활성화 시, 64비트 시스템에 128GB의 RAM이 있더라도 단일 V8 프로세스(Isolate)의 관리 힙 크기는 4GB의 연속된 메모리 케이지(Cage)로 엄격하게 제한됩니다 [36-38]. 이 제한에 도달하면 메모리를 확보하기 위해 Major GC의 빈도가 극적으로 증가하며, 결과적으로 OOM 충돌을 유발할 수 있습니다 [38].
|
||||
- 메모리 최적화를 위해 애플리케이션 코드 내에서 `global.gc()`를 수동으로 지속 호출하는 것은 V8의 자동화된 GC 알고리즘을 방해하고 성능을 떨어뜨릴 수 있으므로 권장되지 않습니다 [22, 39].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Node.js 메모리 튜닝.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-7A23E5
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -38,11 +38,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Nodejs 성능 디버깅"
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[V8 JavaScript Engine]], [[Garbage Collection]], [[Heap Snapshot]], [[Memory Leak]]
|
||||
- **Projects/Contexts:** [[Chrome DevTools Memory Panel]], [[Node.js Production Environment]]
|
||||
- **Related Topics:** [[V8 JavaScript Engine]], [[Garbage Collection]], [[Heap Snapshot]], Memory Leak
|
||||
- **Projects/Contexts:** [[Chrome DevTools Memory Panel]], Node.js Production Environment
|
||||
- **Contradictions/Notes:** 애플리케이션 개발자가 `System.gc()` 또는 `global.gc()`를 사용하여 수동으로 가비지 컬렉션을 트리거할 수는 있으나, GC 동작을 임의로 예측 및 강제 실행하는 행위는 오히려 애플리케이션의 성능을 저하시킬 수 있으므로 주의해서 사용해야 한다 [27, 28].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Node.js 성능 디버깅.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-C8E2E0
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -32,11 +32,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Nodejs 성능 최적화 및
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[할당 타임라인(Allocation Timeline)]], [[힙 스냅샷(Heap Snapshot)]], [[V8 힙(Heap)]], [[가비지 컬렉션(Garbage Collection)]]
|
||||
- **Projects/Contexts:** [[Chrome DevTools(크롬 개발자 도구)]], [[Node.js 메모리 누수 분석]]
|
||||
- **Related Topics:** [[할당 타임라인(Allocation Timeline)]], 힙 스냅샷(Heap Snapshot), [[V8 힙(Heap)]], 가비지 컬렉션(Garbage Collection)
|
||||
- **Projects/Contexts:** [[Chrome DevTools(크롬 개발자 도구)]], Node.js 메모리 누수 분석
|
||||
- **Contradictions/Notes:** 그래프에서 메모리 사용량이 증가한다고 해서 그것이 모두 메모리 누수를 의미하는 것은 아니다. 캐시(Caches), 실행 취소 기록(Undo histories) 등은 의도적으로 데이터를 메모리에 유지하므로, 정상적인 데이터 보존과 우발적인 메모리 누수를 명확히 구분하여 분석해야 한다 [17].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Node.js 성능 최적화 및 디버깅.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-56A451
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -42,11 +42,11 @@ github_commit: "[P-Reinforce] Continuous Worker - Nodejs 프로세스 모니터
|
||||
- **정책 변화:** Programming & Language 분야의 자동 자산화 수행.
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[V8 Garbage Collection]], [[Heap Snapshot]], [[Memory Leak Patterns]]
|
||||
- **Projects/Contexts:** [[Node.js Production Environment]], [[Chrome DevTools Memory Panel]]
|
||||
- **Related Topics:** V8 Garbage Collection, [[Heap Snapshot]], Memory Leak Patterns
|
||||
- **Projects/Contexts:** Node.js Production Environment, [[Chrome DevTools Memory Panel]]
|
||||
- **Contradictions/Notes:** `--expose-gc` 플래그를 사용하여 수동으로 GC를 실행(`global.gc()`)할 수 있지만, 이것이 V8의 일반적인 자동 GC 알고리즘을 비활성화하는 것은 아닙니다. 수동 호출은 보조적인 역할일 뿐이며, 과도하게 사용할 경우 오히려 애플리케이션 성능에 심각한 악영향을 미칠 수 있습니다 [36].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Node.js 프로세스 모니터링 및 메모리 분석.md]]
|
||||
|
||||
---
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
---
|
||||
id: P-REINFORCE-AUTO-09A043
|
||||
category: "[[10_Wiki/💡 Topics/Programming & Language]]"
|
||||
category: "10_Wiki/💡 Topics/Programming & Language"
|
||||
confidence_score: 0.90
|
||||
tags: [auto-reinforced]
|
||||
last_reinforced: 2026-04-20
|
||||
@@ -25,10 +25,10 @@ github_commit: "[P-Reinforce] Continuous Worker - Nodejs"
|
||||
|
||||
## 🔗 지식 연결 (Graph)
|
||||
- **Related Topics:** [[V8 JavaScript Engine]], [[Garbage Collection]], [[Memory Management]]
|
||||
- **Projects/Contexts:** [[Node.js Memory Tuning and Diagnostics]], [[Electron and the V8 Memory Cage]]
|
||||
- **Projects/Contexts:** Node.js Memory Tuning and Diagnostics, Electron and the V8 Memory Cage
|
||||
- **Contradictions/Notes:** 수동으로 가비지 컬렉션을 트리거하기 위해 `--expose-gc` 플래그를 사용하여 `global.gc()`를 호출할 수 있지만, 이는 V8의 자동 GC 알고리즘을 비활성화하는 것이 아니며 남용할 경우 성능 저하를 일으킬 수 있으므로 주의해서 사용해야 합니다 [19, 26]. 또한, 전통적인 가비지 컬렉터는 애플리케이션을 완전히 멈추는(stop-the-world) 문제를 유발했으나, V8의 최신 Orinoco GC는 메인 스레드의 멈춤을 최소화하기 위해 병렬(Parallel), 증분(Incremental), 동시(Concurrent) 기법을 도입하여 백그라운드에서 메모리를 회수합니다 [27-30].
|
||||
|
||||
---
|
||||
*Last updated: 2026-04-19*
|
||||
- Raw Source: [[00_Raw/2026-04-20/Node.js.md]]
|
||||
|
||||
---
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user