Java
-
Spring Boot 프로젝트의 패키지 구조 전략: Layer-First vs Domain-FirstJava 2025. 6. 25. 10:53
Package 구조 전략Spring Boot 프로젝트를 시작할 때 가장 고민되는 부분 중 하나가 바로 패키지 구조입니다. 처음에는 단순한 계층형 구조로 시작했다가, 프로젝트가 커지면서 유지보수가 어려워지는 경험을 한 번쯤은 해보셨을 것 같습니다.오늘은 다양한 패키지 구조 전략과 각각의 특징을 알아보겠습니다.Package by Layer전통적인 계층형 구조로, Spring MVC의 기본적인 구조를 따릅니다.src/main/java/com/example/├── controller/ ├── service/ ├── repository/ └── model/ 장점단점구조가 단순하고 직관적기능 수정시 여러 패키지 변경 필요계층별 역할이 명확도메인 경계가 불명확진입 장벽이 낮음순환..
-
JVM은 몇 개의 Thread를 생성할수 있을까?Java 2022. 8. 22. 16:13
문득 JVM은 몇 개의 thread를 생성할수 있을까? 라는 생각이 들어 정리합니다. 일단, 정답은 "몇 개를 생성하는지 정확히 알수 없다" 입니다. 해당 포스트에는 JVM이 생성할수 있는 최대 Threads 영향을 미치는 Factor를 정리합니다. Stack Memory Thread 구성 중 가장 중요한 요소 중 하나는 Stack 입니다. Thread가 생성되면 동시에 Thread Stack도 생성되고 Frame에 저장합니다. (Stack size를 지정하지 않으면 JVM이 Default size로 stack을 생성합니다.) 생성하는 최대 스택 크기와 Thread 수는 사용 가능한 시스템 메모리와 직접적인 관계가 있습니다. 따라서, 메모리 용량을 늘리면 시스템에서 생성할수 있는 Thread 수도 늘어납..