[Spring] 동시성 문제 해결
·
Spring
java에서 단일 서버 환경의 동시성 문제를 해결하는 synchronized와 Lock에 대해 학습하였다. Synchronized자바의 synchronized 키워드는 한 개의 쓰레드만 접근이 가능하도록 해준다. 기본적인 이해를 위해 가장 간단한 코드를 보면Thread-safe하지 않은 코드`public class Counter { private int count = 0; public void increment() { count++; } public int getCount() { return count; } } 여러 스레드가 이 코드에 접근하면 문제가 발생할 수 있다. 예를 들어 두 스레드가 동시에 count++ 를 실행하면 두 스레드 모두 ..
2024.02.06 모각코 6회차 결과
·
2023-24 동계 모각코
계획 이번 6회차에서도 spring 기반 프로젝트의 동작원리를 이해하기위해 java의 servlet에 대해 더 학습하였다. ServeltContext Context란? 사전적 의미 - 문맥, 상황, 배경 소프트웨어 개발에서는 Execution Context의 의미로 많이 사용 실행 환경 그 자체 (runtime) 설정 정보 (Configuration) ServletContext란? Servlet Container 실행 환경 Servlet과 Servlet Container 간에 연동을 위해 사용 웹 애플리케이션마다 하나의 ServletContext 생성 하나의 웹 애플리케이션에 포함된 Servlet들은 동일한 ServletContext 공유 Servlet끼리 자원을 공유하는데 활용 Servlet Conta..
2024.02.02 모각코 5회차 결과
·
2023-24 동계 모각코
계획 이번 5회차에서는 spring이 동작하는 원리인 java의 servlet에 대해 알아보았다. CGI Common Gateway interface 웹 서버가 외부 프로그램을 실행할 수 있도록 해주는 인터페이스 명세(specification)이다. 외부 프로그램 = 동적 웹 콘텐츠를 생성하는 역할을 한다. c,c++,java,php,go .... 웹 서버와 GCI 프로그램(Applicaiton)간의 규칙이다. 환경변수나 표준입출력을 다룰 수 있는 프로그램 언어라면 어떤 언어든지 확장하여 이용 가능하다. 실행속도나 텍스트 처리의 용이함 등의 이유로, perl이나 python, ruby 등의 스크립트 언어를 주로 사용한다. CGI 프로그램 컴파일 방식 기계어, 컴파일 된 상태 c++, c 인터프리터 방식 ..