본문 바로가기

분류 전체보기

(10)
vi 단축키 yy: 줄복사h,j,k,l: 좌,하,상,우 커서 이동p: 붙여넣기
유닉스/리눅스 명령어 touch: 파일의 타임스탬프를 업데이트하거나 빈 파일을 생성하는 데 사용빈 파일 생성touch filename여러 파일 생성touch file1 file2 file3
Redis 도커 도커 컨테이너 실행docker run -it -d --rm -p 6379:6379 redis:6.2redis-cli 접속docker exec -it f2cf4dc4b189 redis-cliredis-cli monitor 실행docker exec -it f2cf4dc4b189 redis-cli monitor
Innodb_flush_log_at_trx_commit 옵션 Innodb_flush_log_at_trx_commit 시스템 변수리두 로그를 어느 주기로 디스크에 동기화할지를 결정하는 시스템 변수0,1,2 세 가지 값을 가질 수 있으며 기본 값은 1이다.0: 1초에 한 번씩 리두 로그를 디스크로 기록(write)하고 동기화(sync)를 실행한다. 그래서 서버가 비정상 종료되면 최대 1초 동안의 트랜잭션은 커밋됐다고 하더라도 해당 트랜잭션에서 변경한 데이터는 사라질 수 있다.1: 매번 트랜잭션이 커밋될 때마다 디스크로 기록되고 동기화까지 수행된다. 그래서 트랜잭션이 일단 커밋되면 해당 트랜잭션에서 변경한 데이터는 사라진다.2: 매번 트랜잭션이 커밋될 때마다 디스크로 기록(write)은 되지만 실질적인 동기화(sync)는 1초에 한 번씩 실행된다. 일단 트랜잭션이 커밋..
webp 이미지 확장자 이미지의 썸네일을 보여주는 화면에서 이미지의 용량이 너무 커, 로딩시간이 긴 문제가 있었습니다.이에 대한 해결방안을 찾아보다 webp라는 이미지 확장자가 있어서 사용해 보았습니다. What is Webp?2010년 9월 30일 구글이 개발하여 공개함손실/비손실 압축 이미지 파일을 위한 이미지 포맷BSD 라이선스를 채용해 자유롭게 사용하고 수정, 재배포 가능 webp 이미지를 사용해 보니 이미지 용량이 많이 줄었고, 해상도는 크게 차이가 없었습니다. 하지만 호환성 문제가 좀 있는 것 같아 사용 시 주의해야 할 것 같습니다.
과연 java.nio는 java.io보다 항상 좋은 성능을 보일까? java.nio는 java4부터 java.io의 단점을 보완하기 위해 추가된 패키지로 nio(new-io)라는 이름으로 등장하였습니다.(+ java7부터 nio2를 통해 java.io와 java.nio가 추가 개선되었습니다.) 이번 포스팅에서는 File Read/Write 작업에 대해 java.io를 사용 한 코드와 java.nio를 사용한 코드를 직접 수행하여 비교를 통해 성능 비교를 진행해 보도록 하겠습니다.java IO 수행 로직성능 비교를 하기 전, 우선적으로 I/O를 할 때 어떤 작업들이 수행되는지 row-level에서 알아보도록 하겠습니다. (출처: https://howtodoinjava.com/java/io/how-java-io-works-internally/) Disk controller가..
Git 커밋 규칙 Git 커밋 규칙을 설정하는 이유는 코드베이스의 가독성, 유지보수성, 협업 효율성을 향상시키기 위함입니다. 일관된 커밋 메시지 형식과 규칙을 따르면 프로젝트 관리 및 협업이 훨씬 용이해집니다. 커밋 규칙타입 이름내용enh새로운 기능에 대한 커밋fix버그 수정에 대한 커밋build빌드 관련 파일 수정 / 모듈 설치 또는 삭제에 대한 커밋chore그 외 자잘한 수정에 대한 커밋cici 관련 설정 수정에 대한 커밋docs문서 수정에 대한 커밋style코드 스타일 혹은 포맷 등에 관한 커밋refactor코드 리팩토링에 대한 커밋test테스트 코드 수정에 대한 커밋perf성능 개선에 대한 커밋
equals()와 hashCode()에 대해 1. equals와 hashCode 란? equals와 hashCode는 모든 Java 객체의 부모 객체인 Object 클래스에 정의되어 있다. 그러므로 Java의 모든 객체는 Object 클래스에 정의된 두 개의 메서드를 상속받고 있다. [ equals() 란? ] 기본적으로 2개의 객체가 동일한지 검사하기 위해 사용 된다. equals가 구현된 방법은 2개의 객체가 참조하는 것이 동일한지를 확인하는 것이며, 이는 동일성(identity)을 비교하는 것이다. 즉 2개의 객체가 가리키는 곳이 동일한 메모리 주소일 경우에만 동일한 객체가 된다. public boolean equals(Object obj) { return (this == obj); } equals() Contract reflexive: an..