일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 인프런
- 컨테이너
- LIST
- 스레드 제어와 생명 주기
- 도커 엔진
- 쿠버네티스
- 도커
- 시작하세요 도커 & 쿠버네티스
- 실전 자바 고급 1편
- 중급자바
- 김영한
- Kubernetes
- 스레드
- Docker
- container
- 멀티 쓰레드
- contatiner
- 실전 자바 중급 2편
- 리스트
- 자바
- Collection
- 제네릭스
- 쓰레드
- 알고리즘
- 동시성
- 자료구조
- 시작하세요! 도커 & 쿠버네티스
- java
- 오케스트레이션
- Thread
- Today
- Total
목록전체 글 (235)
쌩로그
목차포스팅 개요본론 2-1. Lock Condition - 예제4 2-2. 생산자 소비자 대기 공간 분리 - 예제 5 코드 2-3. 생산자 소비자 대기 공간 분리 - 예제 5 분석 2-4. 스레드의 대기 2-5. 중간 정리 - 생산자 소비자 문제 2-6. BlockingQueue - 예제 6 2-7. BlockingQueue - 기능 설명 2-8. BlockingQueue - 기능 확인요약1. 포스팅 개요해당 포스팅은 김영한의 실전 자바 고급 1편 Section 10의 생산자 소비자 문제2 에 대한 학습 내용이다.학습 레포 URL : https://github.com/SsangSoo/inflearn-holyeye-java-adv1 (해당 레포는 완강시 public으로 전환 예정이다.)2. 본론2-1. L..
목차포스팅 개요본론 2-1. 생산자 소비자 문제 - 소개 2-2. 생산자 소비자 문제 - 예제1 코드 2-3. 생산자 소비자 문제 - 예제1 분석 - 생산자 우선 2-4. 생산자 소비자 문제 - 예제1 분석 - 소비자 우선 2-5. 생산자 소비자 문제 - 예제2 코드 2-6. 생산자 소비자 문제 - 예제2 분석 2-7. Object - wait, notify - 예제 3 코드 2-8. Object - wait, notify - 예제 3 분석 - 생산자 우선 2-9. Object - wait, notify - 예제 3 분석 - 소비자 우선 2-10. Object - wait, notify - 한계요약1. 포스팅 개요해당 포스팅은 김영한의 실전 자바 고급 1편 Section 9의 생산자 소비자 문제1 에 대..
목차포스팅 개요본론 2-1. LockSupport1 2-2. LockSupport2 2-3. ReentrantLock - 이론 2-4. ReentrantLock - 활용 2-5. ReentrantLock - 대기 중단요약1. 포스팅 개요해당 포스팅은 김영한의 실전 자바 고급 1편 Section 8의 고급 동기화 - concurrent.Lock 에 대한 학습 내용이다.학습 레포 URL : https://github.com/SsangSoo/inflearn-holyeye-java-adv1 (해당 레포는 완강시 public으로 전환 예정이다.)2. 본론2-1. LockSupport1synchronized 는 자바 1.0부터 제공되는 매우 편리한 기능이지만, 다음과 같은 한계가 있다.synchronized 단점 ..
목차포스팅 개요본론 2-1. 출금 예제 - 시작 2-2. 동시성 문제 2-3. 임계 영역 2-4. synchronized 메서드 2-5. synchronized 코드 블럭 2-6. 문제와 풀이 2-7. 정리요약1. 포스팅 개요해당 포스팅은 김영한의 실전 자바 고급 1편 Section 7의 동기화 - synchronized 에 대한 학습 내용이다.학습 레포 URL : https://github.com/SsangSoo/inflearn-holyeye-java-adv1 (해당 레포는 완강시 public으로 전환 예정이다.)2. 본론2-1. 출금 예제 - 시작멀티스레드를 사용할 때 가장 주의해야 할 점은, 같은 자원(리소스)에 여러 스레드가 동시에 접근할 때 발생하는 동시성 문제이다.참고로 여러 스레드가 접근하는..
내가 지금 하고 있는 업무는 엑셀에 있는 데이터를 DB에 넣는 작업 중에 있다.해당 글은 나에 대해 돌아보는 글이다.고객사로부터 넘어온 데이터를 DB에 넣고 있는데..효율을 찾다가 찾은 것이 CSV로 데이터를 넣는 것이다.지금 내린 결론이 어떻게 도달했는지에 대해 풀어보고자 한다.1. 믿었던 멀티커서DB에 접근하는 툴로는 현재 인텔리제이를 개발한 회사인 JetBrains에서 만든 Tool인 데이터 그립을 사용 중이다.인텔리제이와 단축키와 UI가 정말 똑같아서 유용하게 쓸 수 있다.물론, 인텔리제이에서도 Ultimate 버전이라면, DB를 접근할 수 있도록 지원을 한다.그리고 DataGrip에서 지원하는 멀티커서 기능을 믿고 엑셀 데이터를 밀어넣는 쿼리를 빠르게 쉽게 만들줄 알았다.처음에 200건의 데이터..
목록문제 발생 배경문제 해결 방향문제 해결요약1. 문제 발생 배경회사 사내 그룹웨어가 있다.각 직원마다 복지포인트가 주어진다.매달 11일마다 복지포인트가 새로 쌓여서 갱신된다.그런데, 1월 11일에 복지포인트가 갱신되지 않음과 동시에 백엔드로부터 받아온 데이터가 이상했다.코드를 확인해보니..@Component로 넣어놓은 클래스에 포인트를 계산하는 로직의 메서드가 있었고, 해당 메서드가 1월인지 아닌지에 따라 계산 방법이 틀려 if-else 처리되어 메서드를 호출한다.이때 API를 호출하는 날짜가 언제인지는 클래스의 인스턴스 변수로 넣어놓은 LocalDate 타입의 값을 통해 계산되는데, 이 값이 문제였다.왜 이 문제를 해가 바뀌고, 1월이 되었을 때야 발견했을까1월이 아니면, 문제가 되지 않기 때문이다...
목차포스팅 개요본론 2-1. volatile, 메모리 가시성1 2-2. volatile, 메모리 가시성2 2-3. volatile, 메모리 가시성3 2-4. volatile, 메모리 가시성4 2-5. 자바 메모리 모델(Java Memory Model)요약1. 포스팅 개요해당 포스팅은 김영한의 실전 자바 고급 1편 Section 6의 메모리 가시성 에 대한 학습 내용이다.학습 레포 URL : https://github.com/SsangSoo/inflearn-holyeye-java-adv1 (해당 레포는 완강시 public으로 전환 예정이다.)2. 본론2-1. 메모리 가시성1volatile 과 메모리 가시성을 이해하기 위해, 간단한 예제를 만들어보자. 주의: volatile 은 자바에서 예약된 키워드이다. ..
목록포스팅 개요본론 2-1. nGrinder는 무엇인가 2-2. nGrinder 설치(with. 도커) 2-3. nGrinder 사용하기 2-4. 스크립트 작성 2-5. 테스트 시작참고 사이트1. 포스팅 개요해당 포스팅은 성능 테스트 도구인 nGrinder에 대한 포스팅이다.nGrinder가 무엇인지,설치 및 사용방법에 대해 알아본다.2. 본론2-1. nGrinder는 무엇인가네이버에서 개발한 Enterpise 레벨 Java기반 성능 테스트 도구Agent가 반드시 필요하며, Controller는 이를 조종하는 역할을 한다.분산 테스트/Web UI/Multi Tenancy 지원하고 Groovy/Jyshon으로 테스트 스크립트를 작성할 수 있다.실무에서도 많이 사용되고 있다.테스트 결과 레포트 UI가 심플하..
목차포스팅 개요본론 2-1. 인터럽트 - 시작1 2-2. 인터럽트 - 시작2 2-3. 인터럽트 - 시작3 2-4. 인터럽트 - 시작4 2-5. 프린터 예제1 - 시작 2-6. 프린터 예제2 - 인터럽트 도입 2-7. 프린터 예제3 - 인터럽트 코드 개선 2-8. yield - 양보하기 2-9. 프린터 예제4 - yield 도입요약1. 포스팅 개요해당 포스팅은 김영한의 실전 자바 고급 1편 Section 5의 스레드 제어와 생명 주기2 에 대한 학습 내용이다.학습 레포 URL : https://github.com/SsangSoo/inflearn-holyeye-java-adv1 (해당 레포는 완강시 public으로 전환 예정이다.)2. 본론2-1. 인터럽트 - 시작1특정 스레드의 작업을 중간에 중단하려면 어..
어제 두 명의 개발자 친구들과 밥먹고 커피를 마시며 즐거운 시간을 보냈다.한 친구가 회사의 과제 전형이 있어서 과제를 한 후 제출한 코드를 다른 친구가 보고 리뷰를 해주었다.그 코드를 보고 리뷰를 해주는데, 같이 있는 나도 덩달아 배울 수 있었다.일단은 어제 들은 얘기를 통해서 배우게 된 것은 다음과 같다.배드 코드 vs 계층의 오염인 상황에서는 계층의 오염이 더 나쁘다.생각해보니깐 왜인지 안 물어봤다...;;서비스 계층에서 값 검증을 했으면, 엔티티에서 값 검증을 할 필요는 굳이다.예를 들어 어떤 값을 조회할 때 클라이언트로부터 id를 받는다고 가정하자.컨트롤러 Request에 애너테이션으로 @Postive를 줄 것이다.그리고 해당 값이 양수로 검증된 후에 서비스 계층으로 올 것인데.. 이미 id가 양..