categories

ci-cd-zero-downtime-auth

10 - Nginx를 활용한 무중단 배포 구축기

무중단 배포 배포 과정에서 서버가 일시 중단되는 문제에 대해 생각해 본적이 있는가? 만약, 서비스가 중단된다면 잠깐이지만 크게 3가지 정도의 문제점들이 발생할 수 있다. 실제 운영 환경에서 서비스 중단은 곧 손실 배포나 갑작스러운 장애로 서버가 다운될 경...

7 - Access Token과 Refresh Token

워밍업 JWT Token 프로젝트를 진행하면서 많은 어려움과 고민을 안겨다준 AccessToken과 RefreshToken. 서로 상호보완하는 두 토큰을 활용해서 인증/인가 플로우대로 기능 구현한다는 게 참 쉽지 않았던 일이었던 것 같다.

6 - 왜 JWT 토큰을 사용했을까?

다양한 옵션 중 어떤 기술을 왜 선택했는가? 일반적으로 로그인 구현에서 많이 사용되는 기술은 JWT 토큰 방식이다. 이 방식을 사용하게된 계기는 Session 방식과 비교해서 더 복잡하고 처리해야 될 것들이 많았기 때문이다. 하지만 이것은 구현하기 위한 생각일 뿐이다. 더 중요한 ...

5 - jwt 암호화와 secret key 생성 방법

양방향 암호화, 생성 방법 jwt 토큰 암호화를 진행하면서 양방향의 대칭키와 비대칭키 두 가지 방식이 있는데 어떤 걸 사용해야 적합한지 의문점이 생겨 이를 조사해보려고 한다. 그리고 선택한 양방향 키를 어떻게 생성했는지 사용한 방법을 기록하려고 한다.

4 - Spring Security 구조, 흐름

JWT Token을 사용하기 앞서 JWT 동작 과정을 이해하기 위해서는 ServletFilterChain과 SpringSecurity 구조와 동작 원리에 대해서 학습할 필요가 있다. 따라서 작성한 다이어그램을 바탕으로 학습한 내용을 정리 하려고 한다.

3 - Private RDS 접근하기

AWS RDS MySQL 현재 AWS EC2 인스턴스를 사용하여 서버를 구동하고 있으며, AWS RDS는 MySQL을 지원하는 관리형 데이터베이스 서비스이다. EC2와 RDS는 동일한 VPC 내 서브넷에서 원활하게 통합되며, 이를 통해 데이터베이스 관리와 운영의 복잡성을 크게 줄일...

1 - 프로젝트 기획 및 설계

기획 및 설계 CI/CD와 Auth Login 프로젝트 주제는 GitHubActions를 활용한 CI/CD와 SpringSecurity와 JWT를 결합한 인증 시스템이다.

맨 위로 이동 ↑

spring

IoC/DI 이전에 고충과 이후의 개념

IoC를 탄생 이전에 고충 과거 직접적으로 개발자가 객체를 관리할 때는 여러 가지로 불편함과 문제점들이 한 두가지가 아니었다. 지금부터 그 문제들을 살펴보자

맨 위로 이동 ↑

projects

hicoding groupware

Hicoding Groupware 클라우드 기반의 그룹웨어 시스템

enter the gungeon

소개 객체 설계와 알고리즘 구현을 목표로 해당 게임을 모작하기로 결정하여 만든 이 게임은 2.5D의 로그라이크 장르의 액션 슈팅 인디 게임이다. 깃허브 링크: https://github.com/songbyhyeok/enter-the-gungeon

맨 위로 이동 ↑

java

Java는 pass by value 라고 ??

자바는 객체 주소를 전달하는 방식이다. “Java는 Call by value = Pass by value만 존재한다”란 글을 읽고 여러 가지 면에서 혼란스러웠는데, 이것을 이해/정리 목적 취지로 글을 쓰게 되었다.

Java Reflection, JVM ClassLoader

서론 “지나가던 길, 근사한 아파트가 눈에 띈다. 스마트폰 어플을 실행하고, 내가 마음에 드는 동과 호수를 선택한다. 그 순간, 그 아파트의 명의가 내 것으로 바뀐다. 마치 프로그램 코드 한 줄로 세상을 조작하는 것처럼, 내가 원하는 대로 모든 것이 변한다. 이건 정말 현실일까?”

맨 위로 이동 ↑

cpp

배열은 포인터인가?

Issue 코딩을 하던 중 배열을 매개변수로 사용하는 상황이 생겼다. 배열의 크기를 내부 함수에서 계산하면 된다고 생각하고, 크기를 확인한 후 ‘?’ 떠올랐다. 예상했던 대로라면 10000000 바이트 크기가 나와야 했는데, 결과는 ‘8’이라는 값이 나왔다. 왜 이런 결과가 나온 ...

맨 위로 이동 ↑

http-network-basic

맨 위로 이동 ↑