본문 바로가기

전체 글

(750)
[memcached] Arcus 구조 이해 Arcus는 Memcached 를 확장한 구조이며, Memcached에 대한 공식사이트 설명은 아래와 같다. 무료 및 오픈 소스, 고성능 분산 메모리 객체 캐싱 시스템이다. 데이터베이스 부하를 완화하여 동적 웹 응용 프로그램의 속도를 높이는데 사용하는것이 일반적이다. Memcached는 데이터베이스 호출, API 호출 또는 페이지 렌더링 결과에서 임의의 작은 데이터 청크(문자열, 객체)를 위한 메모리 내 키-값 저장소라고 볼수 있다. Arcus는 서비스코드로 Arcus cloud를 구분한다. 클라이언트는 서비스코드에 해당하는 cloud에만 접속할 수 있다. 서비스코드가 즉 Arcus Cache 클라우드의 이름이 되는 것이다. 한 개의 arcus 클라이언트는 하나의 arcus 클러스터에만 접속할 수 있게 ..
[JAVA] 개선된 동시성(3) - 리액티브 프로그래밍 보호되어 있는 글입니다.
[API] Rate Limiting & Resource ID 난독화 API 요청량 제한 관련 정보 - 출처 블로그. https://www.mimul.com/blog/about-rate-limit-algorithm/ https://github.com/appkr/l5essential/blob/master/lessons/49-rate-limit.md rate limiting과 rate shaping은 대표적인 혼잡 제어 기법이다. rate limiting은 policing(보안 정책)이라고도 하는데, 말그대로 traffic rate을 제한 하는 것이다. traffic rate를 제한하는 이유는 여러가지가 있을 수 있는데, 근본적인 이유는 과도한 트래픽이 네트웍 장비 안으로 들어오게 되면 시스템 전체의 성능을 떨어뜨리게 되며 심한 경우는 시스템을 정지시키게도 된다. 반면에 tr..
[JAVA] 개선된 동시성(2) - CompletableFuture 프로그래밍 보호되어 있는 글입니다.
[JAVA] 개선된 동시성(1) - CompletableFuture & Reactive Concept 최근 소프트웨어 개발 방법 추세 1. 애플리케이션을 실행하는 하드웨어 관련. 애플리케이션을 어떻게 구성하는가 (상호 작용 관점에서) 2. 인터넷 서비스에서 사용하는 애플리케이션의 증가 멀티코어 프로세서가 발전하면서 애플리케이션의 속도는 멀티 코어 프로세서를 얼마나 잘 활용할 수 있도록 소프트웨어를 개발하는가에 따라 달라질 수가 있게 되었다. 한 개의 큰 태스크를 병렬로 실행할 수 있는 개별 하위 태스크로 분리할 수도 있다. 자바7부터는 포크/조인 프레임워크가 존재하며, 자바8에 추가된 병렬 스트림으로 스레드에 비해 단순하고 효과적인 방법으로 병렬 실행을 달성할 수도 있다. 마이크로서비스 아키텍처 선택이 지난 몇년간 증가했다. 하나의 거대한 애플리케이션 대신 작은 서비스로 애플리케이션을 나누는 것이다. 서..