일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- javascript
- jenkins
- java
- Web Server
- Spring Boot
- Git
- linux
- laravel
- Spring Batch
- Spring
- jsp
- ReactJS
- 요리
- php
- springboot
- db
- redis
- it
- Design Patterns
- AWS
- MySQL
- ubuntu
- Oracle
- JVM
- IntelliJ
- Gradle
- tool
- elasticsearch
- devops
- 맛집
Archives
- Today
- Total
아무거나
[Linux] Soft Limit, Hard Limit 본문
반응형
- Soft Limit, Hard Limit
- 각 계정 마다 하나의 프로세스가 가질 수 있는 file descriptor에 제한이 있다.
- Soft limit 는 새로운 프로그램이 생성되면 디폴트로 적용되는 제한 값
- Hard limit 는 Soft limit 부터 늘릴 수 있는 최대 값 (root만 조정 가능)
- aws ec2 기준으로는 인스턴스 타입에 따라 limit가 조정된다. 즉, 서버 사양에 따라 limit를 증가시킬 수 있다.
- Java는 hard 옵션까지 파일오픈이되고 Python에서는 soft옵션까지만 file이 오픈되는 이유
openjdk에서는 -XX:+MaxFDLimit
옵션이 true 인 경우setrlimit
으로 limit를 증가시키므로 hard 옵션까지 파일이 오픈된다.- 설치된 java의 MaxFDLimit 확인 방법
$ java -XX:+PrintFlagsFinal -version | grep MaxFDLimit
- 설치된 java의 MaxFDLimit 확인 방법
- Java에서 동시에 생성 가능한 쓰레드 수는
max user processes
를 따라간다. - Java에서 소켓 통신(HTTP API, JDBC 커넥션 등)은
open file
옵션을 따라간다.- 단, JDK 내부 코드상에서 hard limit 값이 soft limit에 update된다.
반응형
'Infra > Linux & Unix' 카테고리의 다른 글
tcp_max_tw_buckets 값 설정 (0) | 2021.02.11 |
---|---|
커널 파라미터 튜닝 (0) | 2021.02.11 |
[centos] 프로세스 systemd에 등록 및 서버 재부팅시에 자동 실행하게 등록 (3) | 2020.12.07 |
[ubuntu] Could not get lock /var/lib/dpkg/lock ... 오류 (0) | 2020.05.20 |
프로세스 백그라운드 실행 및 nohup (0) | 2020.04.16 |
Comments