오늘 프로젝트 회의에서는 협업 관련된 컨벤션들을 정했다.
저희는 gitlab-flow에 저희가 추가로 설정한 dev 브랜치 종류(feat, refactor)를 추가하였습니다.
참고) https://techblog.woowahan.com/2553/
{종류}/{issue-number}-{feature-name}
<커밋 타입>[(옵션) scope]: <description>
[(옵션) body]
[(옵션) footer(s)]
// 예시
fix: prevent racing of requests
또는 fix(로그인): prevent racing of requests
Introduce a request id and a reference to latest request. Dismiss
incoming responses other than from latest request.
Remove timeouts which were used to mitigate the racing issue but are
obsolete now.
Refs: #123
결국 이해 못했습니다. 아래 정리된 내용은 인증안된 내용이니 패스하세요.
non-direct buffer
direct buffer
Java I/O 를 사용하면 JVM 프로세스가 System call 로 입출력을 요청한다.
read() 의 경우 받아온 데이터를 커널 영역의 버퍼에 저장하고,
이를 복사해 JVM 이 접근할 수 있는 영역의 버퍼에 저장한다.
복사 이유는 JVM이 커널 영역의 버퍼에 접근할 수 없어 복사를 하는 것인데, 이게 비효율적이다.
Java NIO 에서는 읽은 데이터를 무조건 buffer 에 저장하는데, IO 와 달리
커널 영역에 저장된 버퍼에 바로 접근할 수 있다. 이것이 Direct Buffer 버퍼다.
NIO의 Channel 이 JVM과 커널 영역의 Direct Buffer 와 파이프 역할을 한다.
Scatter gather I/O 모델 형식으로 효율적인 I/O 처리를 지원한다. 여러개 버퍼에 데이터를 담을 수 있는데,
이 버퍼들을 모아서 한 번에 처리하기 때문에 IO 보다 시스템 호출 횟수가 적다.