일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- cache
- ajax
- javascript
- redis
- Heap
- Elk
- NoSQL
- reactive
- network
- 네트워크
- effective
- HTTP
- r
- Static
- mybatis
- libuv
- html
- nodejs
- spring
- Java
- AWS
- socket
- github
- Linux
- mongodb
- reactor
- Lombok
- git
- VCS
- 데이터통신
- Today
- Total
목록memory (2)
빨간색코딩
redis 기본 개념 포스팅 : https://sjh836.tistory.com/178 maxmemory https://redis.io/docs/manual/config/ redis.conf 에서 초기설정 가능 런타임에는 CONFIG SET 으로 가능 32bit : 3GB 64bit : 0 = 상한선없음 RAM을 모두 사용하면, 디스크 swap 까지 사용 swap 사용부터는 상당한 성능저하 redis cluster 에서도 동작은 한다. 다만, 한 장비에 N개의 노드를 뛰울 경우, maxmemory 를 잘 생각해야한다. A 장비에 master 노드, slave 노드를 뛰울거면, ÷2 를 해야.. RDB 에 스냅샷을 남기는 경우, BGSAVE 를 수행하는 스레드가 메모리를 사용할 수도 있으므로, 고려해야한다..
구조체의 메모리 저장방식을 알면 멤버변수들을 선언할때 좀 더 메모리를 효율적, 최적화되게 쓸 수 있다.1. 구조체의 바이트 패딩바이트패딩이란 멤버 변수를 메모리에서 CPU로 읽을 때 한번에 읽을 수 있도록, 컴파일러가 레지스터의 블록에 맞춰 바이트를 패딩해주는 최적화 작업이다. 만약 컴파일러가 패딩을 하지 않는다면(=최적화를 해주지 않는다면) CPU가 메모리에 다시 접근하면서 성능이 떨어질 것이다.struct x { char a; int b; char c; }; struct x data; 위 구조체를 sizeof(data) 로 찍어보면 6이 나올 것같지만 12가 나온다. 컴파일러는 구조체를 구성하는 멤버들을 가장 크기가 큰 멤버 자료형의 배수가 되도록 정렬한다. 이 정렬을 위해 의미없는 바이트(패딩)들을..