Programing78 Spring-Batch commit-interval 설정 spring-batch commit-interval 이 정상적으로 수행되지 않아 삽질했던 경험이 있다. (혹시 유사한 삽질을 경험하고 있으신 분에게 도움이 되시길...) 담당 시스템에서 spring-batch 를 사용하고 있다. chunk 단위로 reader-writer 구조를 갖고 있는데, writer 에서 약 150만건의 데이터를 insert 하는 로직이다. 여기서만 2시간 이상 시간이 소요되었다. (때론 3시간이 넘게 걸리는 경우도 있었다.) 왜 이렇게 오래 걸릴까를 생각하다가 한건씩 처리되고 있는 것은 아닐까? 라는 의문이 들었다. 그래서 재현을 진행해 보았다. =“testReader" writer 2016. 3. 19. Java DBCP Datasource 설정 정의한 값 1. initialSize : 풀의 초기 커넥션 갯수 2. maxActive : 최대 커넥션 갯수 3. maxWait : 커넥션이 존재하지 않을 때, 커넥션을 얻기까지 대기하는 최대 대기시간 4. maxIdle : Idle상태에 풀이 소유한 최대 커넥션 갯수 5. testOnBorrow : 풀에서 커넥션을 가져올시 커넥션의 유효성 검사 6. testOnReturn : 풀에 커넥션을 리턴할 때 커넥션의 유효성 검사 7. validationQuery : validate Query 8. testWhileIdle : Idle상태에 커넥션의 유효성 검사 9. timeBetweenEvictionRunsMillis : 설정된 주기를 통해 Evict(유효하지 않는 커넥션/정의된 시간이 만료된 커넥션을 풀에서.. 2016. 2. 23. [자바8 람다의 힘] 4장 람다 표현식을 이용한 설계 이 글은 "자바 8 람다의 힘" 책을 정리한 글입니다. Chapter 4. 람다 표현식을 이용한 설계 앞에서 다른 내용들만 봐도 람다를 이용하여 코드를 좀 더 간결하고 읽기 쉽게 작성할 수 있다는 것을 알았다. 이 장에서는 람다 표현식을 사용하여 여러가지 패턴이나 설계들을 구현하는 방법에 대해서 알아보자. 1. 전략패턴(Strategy Pattern) 클래스를 생성하는 이유 중 하나는 코드를 재사용하기 위함이다. 좋은 의도이긴 하나 항상 그런 것은 아니다. 자산의 총합을 구하는 예제를 통해 클래스 내의 코드 재사용성을 향상시켜 보자. 먼저 Asset 클래스를 생성한다. public class Asset { public enum AssetType { BOND, STOCK }; private final As.. 2016. 2. 10. Parallel Python http://www.parallelpython.com/ PPis a python module which provides mechanism for parallel execution of python code on SMP(systems with multiple processors or cores) and clusters(computers connected via network). PP 를 위와 같이 설명하고 있다. Multi-Therad 환경의 경우 단일 Process 에서 생성&수행된 Thread 끼리 데이터를 주고 받거나 영향을 준다. 물론 파일시스템이나 Hadoop 같은 분산 파일시스템을 적절히 사용한다면 다 가능하다.(선행작업이 좀 있음…) 하지만 PP 에서는 파이선 모듈만 설치하면 쉽게 사용할 수 .. 2016. 1. 20. 이전 1 ··· 11 12 13 14 15 16 17 ··· 20 다음