profile
공부 기록

Index

우리가 책을 읽는다고 가정하자. 책을 읽을 때 필요한 부분을 찾아가기 위해 우리는 첫 부분에 있는 목차나, 뒷부분에 A,B,C 이런 식으로 정리되어있는 Index를 참고해서 원하는 페이지를 찾아간다.만약 이런 목차가 없다면 최악의 경우 우리는 첫페이지부터 끝까지 모두

5일 전
·
0개의 댓글
post-thumbnail

[해결하기] Zuul / Redis 적용

현재 모놀리스 아키텍처로 작업하던 것을 마이크로서비스 아키텍처로 점진적 변경 중Board -> Board, Account, Alarm 등 분리 작업을 진행하고 있다.필요한 작업마다 각 해당 서버를 호출하기 때문에, 세션 클러스터링 작업이 필요했다.저번에 서버를 scal

2022년 6월 15일
·
0개의 댓글
post-thumbnail

ThreadLocal

Thread 단위로 로컬 변수를 할당하는 기능을 제공하는 클래스.자바 1.2 버전부터 제공.일반 변수의 수명은 특정 코드 블록 범위 내에서만 유효.변수 공유를 위해서는 파라미터로 받아서 사용.자신의 변수를 다른 곳에서 사용하게 하기 위해서는 리턴 값으로 제공해야함.👉

2022년 6월 8일
·
0개의 댓글

[운영체제] 1. 개요

사실 국비수업 처음 시작할 때부터 컴퓨터 기초를 굉장히 중요하다는 말을 많이 들었다. 하지만 조별로 진행하는 프로젝트에서 내가 맡은 부분을 구현하는 것만으로도 벅찼기 때문에, 피해주기 싫어서 따로 공부할 생각을 못했다. 항상 밤새 구글링해서 겨우 겨우 만들어 냈기 때문

2022년 6월 6일
·
0개의 댓글
post-thumbnail

Zuul 적용 시 응답 헤더

현재 모놀리스 구조에서 마이크로서비스 구조로 점진적 변화를 시도해보는 공부를 하고있다. api-gateway의 필요성을 느껴서 netfilx에서 만든 zuul을 적용하던 중 발생한 문제점에 대해 정리해두려고 한다. 현재 더 이상 서비스 되고 있지 않은 zuul을 선택

2022년 6월 5일
·
0개의 댓글

임계 영역 (Critical Section)

교착 상태 (Dead Lock) > 둘 이상의 프로세스가 다른 프로세스가 점유하고 있는 자원을 서로 기다릴 때 무한 대기에 빠지는 상황. 예시 A와 B가 필기를 하려한다. 필기를 하려면 연필과 노트가 필요하다. A는 연필을 가지고 있고, B는 노트를 가지고 있다.

2022년 6월 1일
·
0개의 댓글
post-thumbnail

AOP 적용해보기

저번 포스팅에서 AOP에 대한 정리를 했었다. 직접 사용해보면 더 기억에 잘 남고 이해도 잘 될 것 같아서 현재 진행하고 있는 프로젝트에 적용해보려고 했다.현재 로그인 여부를 체크하는 필터를 사용하고 있다. 필터와 인터셉터의 차이를 정리하면서 언급했듯이 보통 스프링에서

2022년 5월 31일
·
0개의 댓글
post-thumbnail

AOP (Aspect Oriented Programming)

들어가기 전에 정리 로그인 체크 기능을 구현하면서 필터와 인터페이스에 대해 조사한 적이 있었다. 그때 항상 같이 등장하던 것이 AOP였는데, 그 당시 이해하기 어려워서 (아직도 어려움😂) 일단 미뤄두었다가 이제 다시 정리해보려고 한다. 처음 들었을 땐 그냥 필터 같

2022년 5월 25일
·
0개의 댓글

필터(Filter)와 인터셉터(Interceptor)

📌 공통 관심사를 분리하자. 어플리케이션 전 영역에 걸쳐 사용되는 공통 업무에 관련된 코드를 모든 페이지마다 작성한다면 1) 중복된 코드가 많아진다. 2) 프로젝트 단위가 커질수록 서버에 부하를 줄 수 있다. 3) 유지, 보수가 쉽지 않다. 📌 필터와 인터셉터

2022년 5월 21일
·
0개의 댓글
post-thumbnail

📌 예외

수업 들으면서 `try-catch` 문을 JSP 수업 JDBC 관련 코드 때 처음 만났던 것으로 기억한다. 그 당시 왜 사용하는지만 알고 넘어가서 어떤 상황에 꼭 써줘야하고 어떤 식으로 쓰면 안되는지 자세히는 알지 못했다. 부끄럽지만 프로젝트를 진행하면서 IDE가 빨간

2022년 5월 11일
·
0개의 댓글
post-thumbnail

Resolver

Resolver는 ViewResolver만 알고 있었는데 따로 찾아보니 종류가 정말 많았다. 또 따로 Resolver만 찾으려하니 잘 검색도 되지 않아 계속 찾다보니 DispatcherServlet 전략 중에 포함된 속성들이라는 것을 알게 되었고, 이번엔 Resolve

2022년 5월 4일
·
0개의 댓글
post-thumbnail

XSS(Cross Site Scripting)

📌 XSS (Cross Site Scripting) > 게시판, 웹 메일 등에 삽입된 악의적인 스크립트에 의해 페이지가 깨지거나 다른 사용자의 사용을 방해하거나 쿠키 및 기타 개인 정보를 특정 사이트로 전송시키는 공격. (출처 : 네이버 지식백과)

2022년 5월 2일
·
0개의 댓글

OSI 7 Layer

OSI 7 Layer OSI 7 Layer 는 1984년 국제 표준기구 ISO가 발표한 네트워크 모델이다. OSI 7 Layer의 구성 통신이 일어나는 과정을 7단계로 크게 구분하여 한 눈에 들어올 수 있도록 정의 계층이름 7응용 계층 (Application

2022년 4월 27일
·
0개의 댓글

HTTPS

서로 다른 시스템들 사이에서 통신을 주고 받게하는 가장 기본적인 프로토콜, 통신 규약이다. 기본적으로 포트번호는 80을 사용.암호화가 되지않은 평문 데이터를 전송하는 프로토콜.HTTP에 데이터 암호화가 추가됨. 기본적으로 포트번호는 443을 사용.SSL (보안 소켓 계

2022년 4월 20일
·
0개의 댓글
post-thumbnail

Equals()와 Hashcode()를 override 해야하는 이유

Equals() 와 HashCode() equals와 hashCode는 모든 Java 객체의 부모인 Object 클래스에 정의되어 있다. 그렇기 때문에 모든 객체는 Object 클래스에 정의된 equals와 hashCode 함수를 상속받고 있다. equals()

2022년 4월 13일
·
0개의 댓글
post-thumbnail

프로세스(Process)와 스레드(Thread)

프로그램은 어떤 작업을 하기 위해 해야할 일을 순서대로 나열한 것.어떤 작업을 위해 실행할 수 있는 '정적인 상태'의 파일 (ex. exe파일)원하는 일을 처리할 수 있도록 프로그래밍 언어를 사용하여 올바른 수행절차를 표현해 놓은 명령어들의 집합 / 보조 기억 장치에

2022년 4월 6일
·
0개의 댓글

isEmpty() 와 isBlank()

String으로 받은 값이 null도 아니고 "" 이런 식으로 넘어왔다.그래서 if(A != "") 이런 식으로도 써보고 , if(A.isEmpty() == false) 이런 식으로도 써봤으나 걸러내질 못했다.그래서 다른 방법을 찾던 중 isBlank() 라는 메서드를

2022년 4월 6일
·
0개의 댓글
post-thumbnail

DB 서버를 분리해서 사용하기

개발할 때 개발 서버와 실제 사용하는 서버의 DB를 하나로 놓고 쓰면 문제점이 많다.개발 서버 DB와 실제 서버의 DB를 분리시켜야 과감하게 변경 사항을 적용해보고 테스트 해볼 수 있다. 예를 들어 하나의 DB를 쓸 때는 컬럼 하나만 변해도 에러가 날 가능성이 높아진다

2022년 3월 27일
·
0개의 댓글
post-thumbnail

thymeleaf에서 TemplateInputException 발생

로컬에서 작업할 땐 에러가 발생하지 않는데 이상하게 배포한 서버에서 에러가 자꾸 발생했다.에러 내용을 보면 Mapping Error라고 나와서 Mapping Error 라면 로컬에서도 발생해야 정상아니야? 라고 생각했다. ㅎㅎ 배포할 때 문제가 생긴 줄.github A

2022년 3월 24일
·
0개의 댓글

[SQL] 수정, 등록

간단한 게시판을 만들던 중에 문득 수정과 등록 부분 Controller를 각각 만들어서 사용하는 것이 비효율적이라고 느꼈고 글을 저장한다는 관점에서 본다면 하나로 볼 수 있지 않을까 생각이 들었다.그래서 생각한 점이 boardId 같이 pk키가 있으니 값이 없다면 새

2022년 3월 24일
·
0개의 댓글