일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 유난한 도전
- 토스책
- nestjs 예외
- 스프링오류
- 트러블슈팅
- nodejs
- 대규모 트래픽
- nginx
- nestjs
- JavaScript
- 스프링 이미지
- 스프링기초
- Mysql이미지
- 스프링jpa
- 스프링Entity
- connection reset by peer
- docker
- 토스팀
- 3WayHandshake
- 동시성 제어
- 동시성문제
- 예외 커스텀
- 분산시스템
- 동시성 문제
- 예외 핸들링
- Jenkins
- 예외필터
- OS
- 스프링
- 자바
- Today
- Total
목록nodejs (4)
삽질블로그
개인 프로젝트를 진행하면서 발생한 에러에 대해 공부하던 중 발생한 에러에 대해 공부한 내용입니다. 대규모 트래픽을 처리하는 개인 프로젝트를 진행하는 중 클라이언트에서 Connection reset by peer 에러가 계속해서 발생했습니다.그래서 원인을 찾던 중 서버에서 TCP연결을 재시도 하라는 RST패킷을 보낼 때TCP 연결이 즉시 끊기면서 발생하는 에러라는 것을 알았습니다.TCP통신은 데이터의 정확한 전송을 보장하기 위해서 상대방의 컴퓨터와 신뢰성을 수립하는 과정인3-way handshake과정을 가지게 됩니다.@Post('issue') async issueCoupon(@Body() body : IssueCouponDto) : Promise{ return await this.couponSer..
문제상황현재 진행하고 있는 분산 시스템 프로젝트에서 K6를 통해 10초 동안 1000명의 가상 유저로 스트레스 테스트를 진행하던 중클라이언트에서 connection reset by peer가 발생했다.서버에서는 에러 메시지가 뜨지 않았고 쿠폰도 정상적으로 발급이 되었다.코드와 에러는 다음과 같다. Nestjs를 이용한 백엔드 코드 ( 코드 수정 전)@Injectable()export class CouponService { constructor( @InjectRepository(Coupon) private readonly couponRepository: Repository, @InjectRepository(CouponWallet) private readonly couponWallet..
Algorithm Review 프로젝트를 끝내고 AWS에서 이것저것 테스트를 진행해볼까 하다가로컬에서 우선 이것저것 해보고 싶은 마음에 새로운 프로젝트를 진행하게 되었다.내가 가장 경험해보고 싶은 것은 1. 동시성 문제 해결2. 분산 시스템 구축 다음과 같은 경험을 하고 싶었다. 크게 read와 write로 나눴고 어떤 프로젝트를 하는게 좋을까 하다가쿠폰에 환장하는 나같은 사람들은 선착순 치킨 쿠폰 이벤트가 열리면 서버에 엄청난 트래픽을 주기 때문에그 트래픽이 마치 디도스 같아 프로젝트명을 치킨 디도스로 정했다ㅋ.ㅋ 그럼 차근차근 단계를 밟아보자. 프로젝트의 요구사항은 다음과 같다. 사용자는 다음 임의의 쿠폰 중 한 개를 선착순으로 발급받을 수 있다.중복 발급은 불가능하며, 쿠폰 종류는 3개가 존재한다...
🌟 Algorithm Review 프로젝트 이 개인 프로젝트는 알고리즘 복습을 하면서 내가 복습을 하고 싶은 날짜에 알림 설정을 통해 복습 알림을 받을 수 있게 만든 알고리즘 복습을 도와주는 웹 서비스이다.3월부터 시작했지만, 계속 버전이랑 기술스택도 바꾸고 중간 중간에 다른 프로젝트 때문에 지금에서야 완성했다. 평소에 백앤드 개발을 희망했지만 의도치않게 프론트개발만 해와서 이번 개인 프로젝트를 통해 드디어 백앤드 개발과 원하는 기술들을 사용해보았다. 아쉬운 점이 있다면 TDD로 개발을 하고 싶었지만 시간에 쫒겨 기능완성을 우선 했다. 그래서 작성해논 테스트 코드가 회원부분 밖에 없다. 비록 지향했던 TDD개발은 못했지만(?) 이제 남은 기능들에 대한 테스트 코드도 작성해보려고 한다. 이제 원하는 기능..