일주일간 나의 흥미를 끈 인사이트는??
*일론 머스크가 트위터 아키텍쳐가 그려진 화이트 보드를 트윗했고 그걸 다른 사람이 정리해서 올려줬네요
https://twitter.com/elonmusk/status/1593899029531803649?s=46&t=ervPdEkJerC2hdR8i0Xyfg
주니어를 위한 소소한 백엔드 개발 이야기
https://brunch.co.kr/@springboot/780
주니어 개발자에서 미드레벨 개발자로 도약하기 위한 7단계
https://yozm.wishket.com/magazine/detail/1740
일론 머스크가 트위터를 인수한 이유는?
https://yozm.wishket.com/magazine/detail/1802/
캐시가 동작하는 아주 구체적인 원리
https://parksb.github.io/article/29.html
https://twitter.com/elonmusk/status/1593899029531803649?s=46&t=ervPdEkJerC2hdR8i0Xyfg
정확히 어떤 것이 어떤 역할을 하는지는 잘 모르겠는데, 간단하게 요약했겠지만 대규모의 서비스인 트위터가 간단하게 정리된 모습을 보니 신기했다. 지금은 잘 모르겠지만 후에 내가 발전한뒤 이것을 보면 또 보이는 것이 달라질 것같아 넣었다.
https://brunch.co.kr/@springboot/780
이전에 오프젝트 풀에 관해 정리해놓은 것이 있는데, 그 예시를 알 수 있어서 좋았다. 이참에 오브젝트 풀이 무엇인지 다시 한번 체크하고 노션에 있었던 글을 블로그에도 옮겼다. (https://velog.io/@sweet_sumin/%EC%98%A4%EB%B8%8C%EC%A0%9D%ED%8A%B8-%ED%92%80)
오브젝트 풀 패턴의 예시
1) DBCP (데이터베이스 커넥션 풀)
2) Tomcat thread pool
3) RestTemplate
4) @Async
결론!
애플리케이션의 성능에서 가장 중요한 요소는 Thread Pool Size고, 최대 성능을 내기 위해서는 size를 적절히 조정해야 한다.라고 이 글에서 써있다.
Thread Pool size를 왜 한없이 크게 만들면 안될까? thread pool을 크게 만들면 재활용할 수 있는 쓰레드가 많아진다는 말인데 말이다.알아보니 thread를 무작정 많이 만들면 context-switching이나 메모리 소모 등 시간, 공간적 자원이 많이 소모된다고 한다.
https://yozm.wishket.com/magazine/detail/1740
여기서 나온 글 중 내가 추구하고 싶은 것 두가지를 말하자면
이 두가지이다. 중요하면서도 하기 어려운것이라 생각하지만 조금이라도 발전을 위해!!
https://yozm.wishket.com/magazine/detail/1802/
개발 내용까지는 아니지만, 흥미로운 내용이라 이 글에 넣었다. 일론 머스크가 예고 트윗으로 '트위터는 앞으로 수개월간 바보 같은 짓을 많이 할 것입니다'라고 했는데 어떤 기능을 추가하고 폐기할지 궁금하다. 어떻게 트위터가 앞으로 바뀔까??
1) 캐시가 동작하는 아주 구체적인 원리
https://parksb.github.io/article/29.html
-- 캐시는 반응 속도가 빠른 SRAM으로 주소가 키로 주어지면 해당 공간에 즉시 접근할 수 있다.
-- 캐시가 하드웨어로 구현한 해시테이블과 같다.해시 테이블의 시간복잡도가 O(1)정도라 빠르다
--캐시는 블록으로 구성되어 있으며, 블록의 개수와 블록의 크기가 캐시의 크기를 결정한다.
-- 인덱스의 충돌을 줄이기 위해 주소값의 일부를 태그(Tag)로 사용한다
캐시에 대해 정말정말정말 얕게 알고 있다는것을 깨달았다...