프로젝트 중 동일한 게시글을 여러 유저가 동시에 접근했을 때 조회수의 증가값이 유저의 수만큼 나오지 않는 문제가 생겼습니다. 해당 문제의 원인과 해결과정에 대해 공유합니다. 테스트 세팅 어떤 문제가 발생했는지 코드와 JMeter를 통해 보여드리겠습니다. Post 엔티티 public class Post extends BaseEntity{ //... private Long view; public void increaseView() { this.view++; } } PostService @Transactional public PostResponseDto getPost(Long postId) { Post post = postRepository.findById(postId) .orElseThrow(()-> new..
서론 홈서버를 한대 운영중이고 nginx에 대해 공부중에 우분투 서버의 보안에 대한 포스트를 읽게 되었다. 이때 fail2ban을 알게 되었고 journalctl -f를 통해 외부에서 계속 홈서버에 접근시도하려는 것을 확인하였다. 이를 막기위해 fail2ban을 적용해보자. fail2ban이란? 공개 IP 주소를 갖는 컴퓨터에 ssh 서버를 열어 놓고 기다리면 전세계에서 접속 시도가 들어오는 것을 확인할 수 있다. 이를 막기 위해 사용하는 프로그램이 fail2ban이다. fail2ban은 서비스의 로그 파일을 읽어, 특정 IP에서 정해진 시간(findtime) 동안 정해진 횟수(maxretry)를 초과하여 접속에 실패했다면 정해진 시간(bantime) 동안 그 IP를 차단하는 간단한 서비스이다. 즉 ss..
서론 AWS EC2에 원격접속을 위해 ssh를 이용해 연결을 하는데 nginx를 적용할때마다 ssh접속이 끊기고 다시 접속할려고 시도할 때 timeout이 발생해서 접속하지 못하는 문제가 발생했다. 본론 EC2 인바운드 편집을 통해 80,22, 443포트에 대해 허용을 설정하고, EC2에 nginx를 설치한 뒤에 ufw를 통해 80, 443포트에 대한 방화벽을 열때 문제가 발생했다. 초반에는 nginx 자체적인 문제라고 생각했지만 여러번 인스턴스를 지우고 생성하고 nginx를 깔고 반복하다보니 ufw의 문제라는 것을 확인했다. ufw enable로 우분투 방화벽을 활성화시켰는데 80, 443만 허용하고 22번은 허용하지 않음으로 발생한 문제였다. 해결법 1. ufw를 건들지 않기 어차피 인바운드 편집에서..
Swap 메모리는 하드디스크 일부를 RAM처럼 사용하도록 만들어진 메모리입니다. 메모리를 초과하는 프로그램을 돌리는 경우 메모리의 부족으로 인해 메모리가 run out 되는 것을 막을 수 있습니다. 하지만 RAM이 아닌 하드디스크이기에 읽고 쓰는 속도가 느려지게 됩니다. 1. swap 파일 확인 먼저 swap 파일이 있는지 확인합니다. sudo free -m sudo swapon -s swqp 파일이 존재하면 작동을 중지합니다. sudo swapoff -a 2. swap 파일 생성 -l 뒤에 8G를 입력해서 8G의 추가적인 가상 메모리를 사용할 수 있습니다. sudo fallocate -l 8G /swapfile swapfile의 권한을 수정한 뒤, 해당 파일이 swap으로 동작하도록 만든다. sudo ..
내 블로그 - 관리자 홈 전환 |
Q
Q
|
---|---|
새 글 쓰기 |
W
W
|
글 수정 (권한 있는 경우) |
E
E
|
---|---|
댓글 영역으로 이동 |
C
C
|
이 페이지의 URL 복사 |
S
S
|
---|---|
맨 위로 이동 |
T
T
|
티스토리 홈 이동 |
H
H
|
단축키 안내 |
Shift + /
⇧ + /
|
* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.