전체 글 (110) 썸네일형 리스트형 [문제기록] K3s 에서 Airflow 사용 중 Iptables 규칙 과부하로 인한 통신 불가 문제 알아둬야 할 사전 지식 (1) iptables 란 네트워크 담당 직무인 개발자 분들이라면 직접 관리까지 하시겠지만, 앱 개발자로서는 낯설 수 있어 간단히만 짚고 넘어가려 한다. 리눅스 계열 OS 에서 사용하는 방화벽 프로그램이라고 보면 된다. iptables 는 요청 단위가 아닌 개별 패킷 단위로 머신에 적용된 규칙을 확인하고 적용한다. 다음 예시를 살펴보자. $ sudo iptables -L -n --line numbers # iptable 에 적용된 규칙들 확인...Chain FORWARD (policy DROP)num target prot opt source destination 1 DOCKER-USER all -- 0.0.0.0/0 0.0.0.0/0 2 DOCKER-ISOLATION-STA.. [실전 Java 고급 1편] - 4. CAS와 동시성 컬렉션 CAS, 동기화와 원자적 연산 1. 원자적 연산에 대하여 CS에서 원자적 연산이라 함은, 해당 연산이 더 이상 나눌 수 없는 단위로 수행된다는 것을 의미하며, 중단되지 않고 간섭 없이 완전히 실행되거나 전혀 실행되지 않는 연산이다. 즉, 다른 스레드의 간섭 없이 안전하게 처리되는 연산이라는 뜻이다. 가령, i = 1 은 둘로 쪼갤 수 없는 원자적 연산이다. 하지만, i = i+1 은 원자적 연산이 아니라, i 값을 읽고, 1을 더하고, 더한 값을 i에 대입하는 세가지 순서로 나뉘어진다. 이 모든 것은 CPU 입장에서이다! 원자적 연산이 아닌데 멀티 스레딩이 적용되는 상황에서 우리가 동기화 처리를 해왔던 것이다. 다음 상황을 살펴보자 public class V1BasicInteger implement.. [실전 Java 고급 1편] - 3. 생산자 소비자 문제 (BlockingQueue 만들기까지) 생산자 소비자 문제 1 - Synchronized 심화 1. 소개 생산자 소비자 문제는 멀티 스레딩 세계에서 자주 등장하는 동시성 문제이다. 데이터 생산/소비하는 스레드가 동시에 많을 상황을 다룬다. 생산자는 데이터를 생산하는 스레드들을(파일에서 읽어오거나, 네트워크에서 받아옴) 말하고, 소비자는 이를 출력하거나, 저장하거나, Message Queue 로 활용하는 등 데이터를 소모하는 역할이다. 마지막으로 버퍼는 한정된 크기를 가지고, 데이터가 일시적으로 저장되는 공간이다. 생산자/소비자는 이 버퍼를 중심으로 데이터를 주고 받는다. 문제는 생산/소비 속도가 차이가 심해서, 한 쪽이 대기하는 상황에서 발생한다. 데이터가 생산 속도가 더 빠르면 버퍼에 더 이상 공간이 없으므로, 생산자 스레드는 대.. 이전 1 2 3 4 ··· 37 다음