일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 자바
- 스프링Entity
- 예외 커스텀
- 3WayHandshake
- nestjs
- 동시성 문제
- 예외필터
- 동시성 제어
- 스프링 이미지
- 스프링오류
- connection reset by peer
- 토스팀
- nestjs 예외
- Jenkins
- 스프링jpa
- 분산시스템
- 예외 핸들링
- nodejs
- docker
- 스프링
- nginx
- 스프링기초
- 트러블슈팅
- 유난한 도전
- 토스책
- OS
- Mysql이미지
- JavaScript
- 대규모 트래픽
- 동시성문제
- Today
- Total
목록분류 전체보기 (20)
삽질블로그
개인 프로젝트를 진행하면서 프론트는 Vercel로 배포하여 자동배포와 https를 적용하였는데, 서버는 아직 자동배포 환경을 만들어놓지 않아서 이번에 Jenkins로 구축을 하였습니다. Jenkins 란?Jenkins는 지속적인 통합 및 지속적인 배포 (CI/CD)를 지원하는 오픈 소스 자동화 도구입니다.Jenkins는 자바 기반 웹 애플리케이션이며, 빌드, 테스트, 배포를 자동화해 줍니다. CI / CD 란?CI/CD는 지속적 통합(Continuous Integration) 및 지속적 제공/배포(Continuous Delivery/Deployment)를 의미하며,소프트웨어 개발 라이프사이클을 간소화하고 가속화하는 것을 목표로 합니다.CI(지속적 통합)은 코드 변경 사항을 공유 소스 코드 리포지토리에 ..
이번에 알고리즘 리뷰 사이트를 개인프로젝트로 진행하면서 서버를 배포할 때 HTTPS를 적용하기로 했습니다.저는 AWS EC2를 이용했기 때문에 1. AWS의 로드밸런서를 통해 HTTPS를 적용하는 방법2. Nginx로 HTTPS를 적용하는 방법두 가지 방법 중 2번째 방법으로 진행하였습니다. Nginx로 HTTPS를 구현한 이유는 아래와 같습니다. 1. AWS의 로드밸런서 비용이 부담된다.2. 후에 Nginx로 무중단 배포를 구현해보려 계획중이다.3. Nginx로 로드밸런싱 성능 테스트를 진행할 예정이다. HTTPS란?하이퍼 텍스트 전송 프로토콜 보안(HTTPS)은 웹 브라우저와 웹 사이트 간에 데이터를 전송하는 데 사용되고 있는 기본 프로토콜인 HTTP의 암호화된 HTTP 프로토콜로서 안정화된 데이터 ..
저번에 간단한 프로젝트로 미팅과 소개팅을 할 수 있는 프로젝트를 만들려다가본인인증을 넣어야 한다는 피드백을 받아서전부터 알고리즘을 리뷰할 수 있는 사이트를 만들어보고 싶었는데이미 나와 같은 생각을 한 사람이 있어서 이 분의 프로젝트를 비슷하게 따라해보려고 한다. https://velog.io/@ayoung0073/Project-ARS-%EA%B0%9C%EC%9D%B8-%ED%94%84%EB%A1%9C%EC%A0%9D%ED%8A%B8-%ED%9B%84%EA%B8%B0 [프로젝트] ARS 개인 프로젝트 소개 및 정리ARS 개인 프로젝트 정리 (Springboot & React)velog.io ERD도 다음과 같이 수정하였다.앞으로 프로젝트를 진행하면서 기능을 추가할 때가 된다면 ERD도 다시 설계하려고 한다..
지금까지 스프링을 하려다가 진로에 대한 생각이 점점 확고해지면서 nodejs로 갈아탔다.그래서 차근차근 토이 프로젝트를 진행하려고 한다.프론트랑 서버를 같이 개발하기 때문에 시간이 좀 걸리겠지만 확실하게 배우면서 해야겠다.프론트는 React, 백엔드는 Express를 사용하기로 하고 후에 Js가 익숙해지면 Ts와 Nest.js로 확장하도록 해야겠다. 초기 버전을 바탕으로 계속해서 프론트와 백앤드를 넓혀갈거기 때문에 처음은 정말 간단히 시작하려고 한다.현재 데이터베이스 ERD는 다음과 같다. 간단한 게시판 프로젝트를 시작으로 계속해서 기능을 추가할 계획이다. 현재 깃 전략은 github flow전략을 사용하기로 했고, 이유는 다음과 같다.1. git flow전략은 어플리케이션에 더 적합한 전략이다.2. ..
JPA와 스프링을 공부하면서 db에 JPA로 값을 넣는 것을 진행하고 있었다. 순조롭게 진행되고 있었는데, 스프링에서 Entity를 인식하지 못하는 오류가 발생했다. domain -> Member package com.example.spring.domain; import org.springframework.boot.autoconfigure.domain.EntityScan; import org.springframework.context.annotation.Configuration; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.Id; @Entity public class Member { @I..
객체 지향 프로그래밍(OOP)은 절차 지향 프로그래밍이 아닌 ‘객체’들의 상호작용(메시지 주고받기, 데이터 처리 등)으로 프로그램 로직을 구성하는 프로그래밍이다. 절차 지향 프로그래밍으로는 대표적으로 C언어가 있고, 객체 지향 프로그래밍으로는 대표적으로 자바가 있다. OOP는 캡슐화, 추상화, 다형성, 상속성 이 4가지 대표적인 특징을 알아야 한다. 1. 캡슐화 (Encapsulation) 한 객체가 특정한 하나의 목적을 위해 필요한 데이터(변수)나 메소드를 하나로 묶는 것을 의미한다. 즉, 클래스를 만들 때 나중에 이클래스에서 만들어진 객체가 특정한 목적을 가지고 사용할 변수와 특정한 액션을 취하는 메서드를 관련성 있게 클래스에 구성해야한다. 쉽게 말해서 연관 있는 변수와 함수를 클래스로 묶는 작업을 ..
전에 나는 자바에서 프로젝트를 진행했었는데, 순수 자바로 코드를 작성했을 때는 서로 다른 클래스에서 같은 하나의 객체를 생성하는 것이 불필요하므로 인자를 통해 넘겨주는 방식으로 작성을 했다. 예를 들어 test1, test2, test3 클래스가 있고 각각 test1, test2클래스에서 test3 클래스를 사용하고 싶을 때 package com.example.springStudy.controller; public class test1 { test3 test = new test3(); } package com.example.springStudy.controller; public class test2 { test3 test = new test3(); } 이렇게 각 클래스마다 객체를 생성해서 사용하면 데이터..
저번 회원관리 예제에 대한 코드를 테스트 코드로 작성해보았다. 실무에서 실제 코드를 작성하는 시간보다 테스트 코드를 작성하는데 비중을 더 쏟는다는 말이 신기했다. 테스트 코드먼저 작성하고 후에 실제 코드를 작성하는 것을 테스트 주도 개발이라고 한다. 종종 기업에서 테스트 주도 개발 경험관련 유무자라는 글을 본 적이 있는데, 그냥 흘러넘겼다가 이번에 김영한 강사님께서 하시는 말씀을 듣고 테스트 주도 개발에 대해서 알게 되었다. 나중엔 테스트 주도 개발도 간단한 프로젝트로 진행 해봐야겠다는 생각을 했다. package com.example.springStudy.repository; import com.example.springStudy.domain.User; import org.junit.jupiter.ap..