2016년 4월 22일 금요일

4월 3주차 소식들..

보안

오라클의 4월 정기패치 릴리즈 소식.. 49개 제품에 139개의 결함에 대한 패치가 릴리즈 되었다고.. 링크

Git 2.7.4 이하 버전에서 원격 코드 실행 공격과 관련한 결함이 발견 되었는데 맥의 커맨드라인 툴의 최신버전에 Git이 2.6.4가 포함되어 있어 문제가 된다는 소식.. 개인적으론 Homebrew를 통해 최신 버전을 사용중인.. 링크


소프트웨어

Windows 10 패스트링에 1주년 기념 버전 기능을 포함한 레드스톤 빌드 14328이 배포됨.. 이번 빌드에서 드라이버 모델에 뭔가 변화가 있었는지 일단 AMD의 최근 디스플레이 드라이버는 화면을 제대로 드로잉하지 못하는 문제가 있고 앞전 버전부터 사운드 컨트롤쪽 문제는 여전하고.. 메인 장비가 맥북 프로라서 롤백 안하고 디스플레이 드라이버는 마소 베이직 드라이버를 쓰고 있는데 이번 버전은 드라이버 쪽에 이슈가 좀 많은 느낌이.. 링크

리눅스 커널 스케줄러의 멀티코어 환경에서 성능문제에 대한 논문을 기반으로 패치가 적용되는 배포판이 나오기 시작 했다는 소식.. 링크 링크

2016년 4월 18일 월요일

Reactive Java 참고 자료들..


6월에 Spring Framework 5가 나올 예정인데 Reactor 프로젝트의 스프링 적용 버전인 Spring Reactive가 포함되어 나올 예정임. Spring Framework 4.3 부터 선행 적용하기로 되서 미리 사용이 가능한데 간략히 설명하면 기존의 멀티쓰레드 방식 코드에 이벤트 루프 방식이 추가되는 형태라고 볼 수 있는.. 단적으로 Node.js의 경우는 싱글쓰레드 이벤트 루프 방식임.

Spring MVC에서 서비스 클래스 영역까지는 비동기 코드 작성에 대한 패턴들이 나와 있었는데 이제 컨트롤러까지 확장되는 추세이고 데이터소스 영역도 이미 NoSQL 데이터베이스 같은 경우 Non-block I/O를 지원하는 JDBC 드라이버들이 제작되고 있는 상황.

기존에 Java의 비동기 코드가 .NET에 비해 깔끔하지 못하다는 해외 커뮤니티의 평가가 많았는데 여기에서 모티브를 얻은 RxJava가 인기를 끌면서 RxJava의 Spring 버전인 Spring Reactive가 메인스트림에 합류하는 분위기.

선행 학습을 위해 참고한 자료들의 링크를 남깁니다.

메인 동영상은 기존의 레거시 코드를 Java 8으로 마이그레이션 하는 방법에 대한 내용을 다루는데 주로 Stream을 이용한 람다코드와 Consumer를 이용한 리소스 관리에 대한 이야기를 하고 있다. 강연 내용중에 기억에 남는 글귀가 있는데 "A good code is like a story not like a puzzle." 이라는 말이.. Spring Reactive에 대한 자료는 이곳 을 참고할 수 있고 관련자료의 슬라이드 링크를 포함하고 있다. 슬라이드 중 Reactive Web Applications에 대한 강연 영상은 이곳 에서 확인할 수 있고 서블릿에서 비동기 서블릿의 진화 과정에 대한 간략한 내용과 Reactive Stream에 대한 이야기를 담고 있다. Spring Boot와 RxJava를 이용해 RESTful API를 만드는 방법에 대한 내용은 이곳 에서 확인할 수 있고 Observable을 이용한 데이터 핸들링과 컨트롤러의 비동기 응답과 테스팅에 대한 힌트를 주고 있다. Spring Reactive의 REST 컨트롤러 구성에 대한 코드 예제는 이곳 에서 확인 가능하다.