1. @Transactional 이란? @Transactional 어노테이션은 트랜잭션에 대한 전파, 격리, 시간 초과, 읽기 전용 및 롤백 조건을 설정할 수 있고, 트랜잭션 관리자를 지정할 수도 있다. 해당 어노테이션은 클래스 또는 메서드에 선언이 가능하고 클래스에 선언시 모든 메소드에 적용이 되고 특정 메소드에 선언시 선언된 메소드에만 적용이 된다. 개발 로직에 맞춰서 알맞게 사용을 하여야 한다. 2. 적용 우선 순위 1. 클래스의 메소드 2. 클래스 3. 인터페이스의 메소드 4. 인터페이스 3. @Transactional의 예제 @Transactional 선언 @Service @RequiredArgsConstructor public class MemberService{ private MemberMa..
SSHFS는 서버나 워크스테이션에 위치한 디렉토리와 파일을 SSH 연결을 통해 클라이언트가 마운트하고 통신할 수 있게 하는 파일 시스템이다. SSHFS는 SFTP를 사용하기 때문에 서버와 클라이언트 간에 전송된 모든 데이터를 암호화하고 암호를 해독해야 하며, 이로 인해 NFS에 비해 성능이 약간 저하되고 클라이언트 및 서버의 CPU 사용량이 증가한다. 1. SSHFS 설치# UBUNTUapt install sshfs# RedHat기반의 Linuxyum install sshfs# Macbrew cask install osxfusebrew install sshfs# WindowsWinFsp, SSHFS-WIN 두개의 패키지 설치 2. 원격 파일 시스템 마운트sshfs [user@]host:[remote_di..
# custom IntelliJ IDEA VM options (expand/override 'bin\idea64.exe.vmoptions')-Xms4096m-Xmx409m6m-XX:NewRatio=3-Xss16m : 각 스레드의 스택 크기-XX:+AlwaysPreTouch : 런타임 중 메모리 할당에 소요되는 시간을 줄여 성능을 향상-XX:+TieredCompilation : JVM은 자주 사용되는 메서드를 여러 번 컴파일하여 성능 향상, 실행 속도 향상-XX:ReservedCodeCacheSize=512m # 코드 캐쉬 사이즈 Heap 메모리 사이즈와 공유하지 않는다.-XX:SoftRefLRUPolicyMSPerMB=50 : SoftReference Least Recently Used(LRU) 정책을 ..
1. 발생원인 신입 개발자에게 사내 프로젝트를 맞기고 해당 프로젝트를 돌릴 사내 서버를 신입 개발자의 책상 아래 한대를 놔줬다. 어느날 신입 개발자가 멀티콘센트의 전원을 발로 누르면서 전원이 OFF가 되었고, 사내서버를 다시 부팅을 하는 과정에 "Reboot and Select proper Boot Device Insert Boot Midia in selected Boot device ad press a key"의 메세지와 함께 부트로더를 인식하지 못하는 부팅 불가 상태가 되었다. 2. BOOT-REPAIR를 이용한 부트로드 복구 Ubuntu 20.04기준으로 Live-server은 복구 불가이며, Desktop버전으로 다운로드한다. 다운로드 받은 ubuntu iso파일을 USB를 이용하여 우분투가 설치..
1. 방화벽 설정 UFW 비활성 root@daniel-server:~# systemctl stop ufw root@daniel-server:~# systemctl disable ufw root@daniel-server:~# apt install iptables-persistent netfilter-persistent root@daniel-server:~# vi /etc/iptables/rule.v4 # Generated by iptables-save v1.8.4 on Fri Jan 28 07:15:40 2022 # :INPUT DROP [0:0] *filter :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [167:32298] -A INPUT -m ..
1. Tar 옵션 tar [OPTION...] [FILE]... -f : 대상 tar 아카이브 지정. (기본 옵션) -c : tar 아카이브 생성. 기존 아카이브 덮어 쓰기. (파일 묶을 때 사용) -x : tar 아카이브에서 파일 추출. (파일 풀 때 사용) -v : 처리되는 과정(파일 정보)을 자세하게 나열. -z : gzip 압축 적용 옵션. -j : bzip2 압축 적용 옵션. -t : tar 아카이브에 포함된 내용 확인. -C : 대상 디렉토리 경로 지정. -A : 지정된 파일을 tar 아카이브에 추가. -d : tar 아카이브와 파일 시스템 간 차이점 검색. -r : tar 아카이브의 마지막에 파일들 추가. -u : tar 아카이브의 마지막에 파일들 추가. -k : tar 아카이브 추출 시, ..
1. MariaBackup 준비 MariaBackup을 수행하기 위해서는 계정을 생성해줘야 한다. Daniel~> mysql -uroot -p mysql mysql> CREATE USER 'mariabackup'@'localhost' IDENTIFIED BY 'password'; mysql> GRANT RELOAD, LOCK TABLES, PROCESS, BINLOG MONITOR, REPLICATION CLIENT ON *.* TO 'mariabackup'@'localhost'; mysql> GRANT CREATE, INSERT ON PERCONA_SCHEMA.* TO 'mariabackup'@'localhost'; mysql> FLUSH PRIVILEGES; mysql> exit 2. 데이터베이스 서..
- Total
- Today
- Yesterday
- Letsencrypt wildcard
- camelcase
- Intellj들여쓰기
- Letsencrypt wildcard auto renew
- letsencrypt
- 마이바티스
- SSL
- 마이바티스CamelCase
- Letsencrypt+nginx
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |