본문 바로가기

PKIX path building failed 오류? javax.net.ssl.SSLHandshakeException 해결 : sun.security.validator.ValidatorException : PKIX path building failed 오류? https://code.i-harness.com/ko-kr/q/92c656
git allow-unrelated-histories 개인 프로젝트를 진행하다가 GIT push를 할 때 문제가 발생 하였다. 상황 1. 신규 프로젝트 생성2. 소스 생성 및 초기 설정3. git init을 진행4. git hub 에 개인 repository remote 수행 (git remote add origin [repository url] )5. 생성한 소스를 커밋 과 푸시 시도6. push reject 발생7. pull 시도 하면 refusing to merge unrelated histories 로 pull 실패 원인 - 신규로 만든 프로젝트와 기존에 있는 프로젝트는 공통 적으로 같은 조상을 보고 있지 않아서 서로 다른 프로젝트라고 인식 함. 따라서 독립적인 두 프로젝트를 병합하려면 --allow-unrelated-histories를 사용해야 함..
스레드 소개 순차(Sequential) - 복수의 업무를 순차적으로 실행병렬(parallel) - 복수의 업무를 동시에 처리병행(concurrnt) - 한 개의 업무를 어떠한 순서로 처리하든 상관 없이 여러개로 분할하는 모습 데이터 레이스(data race) or 레이스 컨디션(race condition) - 쓰레드 A와 쓰레드 B가 경쟁 함으로써 예기치 않게 발생하는 상황베타제어 or 상호베타(mutual exclusion) - 하나의 쓰레드가 어느 부분을 실행하고 있으면 다른 쓰레드가 그 부분을 실행할 수 없게 만듬 Synchronized - 자바에서 베타제어를 가능하게 해주는 키워드 wait 셋 - 쓰레드 대합실wait 셋 - 정지하고 있는 쓰레드들의 집합 notify, notifyAll, interrupt, ..
URI를 사용하여 addParameter를 사용하면 자동 인코딩이 된다 RestTempate.exchange를 사용할 때 Apache에서 제공해주는 URIBuilder를 사용하여 add 파람을 하게 되면 자동으로 인코딩을 해준다.이걸 모르고 addParamter를 호출 할 때 URI.encoding("value", "UTF-8")를 하니까 검색이 잘 되지 않았다. if (this.encodedQuery != null) { sb.append("?").append(this.encodedQuery); } else if (this.queryParams != null) { sb.append("?").append(encodeUrlForm(this.queryParams)); } else if (this.query != null) { sb.append("?").append(encodeUr..
스레드 상태 변화
성능이란 성능이란 무엇인가? - 시스템 성능은 시간당 처리량, 영향을 미치는 요소는 응답시가노가 동시에 처리할 수 있는 프로세스 수 - 고객의 특정 업무를 대상으로 운영환경에서 고객이 수긍할 수 있는 응답시간 내에 처리할 수 있는 거래량 동시 사용자 - 동시 사용자 수 = 요청 사용자 수 + 비요청 사용자 수 요청 사용자 (Active user) : - 대상 서버에 부하를 발생시키고 있는 사용자 - 서버에 서비스를 요청한 수 응답 대기 사용자비요청 사용자(Inactive user) : - 현재 서버에 서비스 요청을 보내고 있지 않는 사용자( 화면 내용을 읽고 있거나, 화면에 값을 입력하는중) 처리량(throughput) - 서버가 일정 시간 내에 처리한 트랜잭션의 양 - 서버의 역할과 화면을 구성하는 방식에 따라..
옵저버 패턴 옵저버 패턴 요즘 부쩍 말을 안듣는 두 아들들을 위해 아버지는 옵저버를 고용해 옵저버를 통해서 미션을 전달하여 수행 하도록 합니다. 클래스 다이어 그램입니다. OnesParents : 부모 인터페이스이며 아이들을 감시하기 위해 옵저버를 고용합니다. 옵저버가 관리하는 아이들 등록 및 삭제 인터페이스를 제공하며 아버지의 미션을 아이들에게 알리는 인터페이스를 제공 합니다. Father : 아버지는 부모 인터페이스를 구현하여 옵저버에게 미션을 전달 합니다. ParentsObserver : 부모가 아이들에게 미션을 줄 때 필요한 미션을 받아서 아이들에게 알려줄수 있는 인터페이스를 제공합니다. SeungJae : 승재는 아버지가 고용한 옵저버에게 미션을 받아 수행합니다. SeungHyun : 승현이는 아버지가 고용..
Mysql Lock MySQL에서는 여러가지 종류의 락이 있다. 락은 쿼리 성능에도 많은 영향을 미치고 이러한 개념을 모른다면 쿼리 튜닝할때도 상당한 제약 사항이 있을것 같다. 그리하여 MYSQL에서 사용하는 락은 어떤것들이 있는지 정리해 본다. MYSQL엔진의 잠금 1. 글로벌락 - FLUSH TABLE WITH READ LOCK 명령으로만 획득 가능한데 실행과 동시에 서버에 존재하는 모든 테이블에 잠금을 건다. - MYSQL에서 제공하는 락 가운데 가장 범위가 큰 락이다. - 한 세션에서 글로벌 락을 획득한다면 다륵 세션에서 SELECT를 제외한 DDL DML문장을 실행하는 경우 글로벌 락이 해제될때 까지 대기 상태 2. 테이블락 : - 개별 테이블 단위로 설정되는 잠금이며, 명시적 또는 묵시적으로 특정 테이블 락을 획..