분류 전체보기286 해외 개발자 취업 도전기 준비단계 #1 : 다짐 한국 취업 시장이 얼어 붙었다....사실 빨리 취업을 할라고 했더라면 유럽여행을 떠나지 말고 친구들과 같이 취업준비를 했더라면 이미 취업을 했겠지만이것은 핑계다. 사실 유럽 여행을 다녀온것을 후회하지 않는다. 내 인생에 있어서 가장 중요한 시기 였다고 생각하기 때문이다.그 덕분에 내 앞으로의 미래 가치관이나 어떻게 삶을 꾸려나가야겠다 하는 많은 것들이 바뀌었다. 그렇기 때문에 이 얼어붙은 한국 개발자 취업 시장도 자연스레 내가 겪어야하는 것이라고 생각하고 스스로를 단련하고 있는 요즈음이다. 이전에는 한국에서 취업을 1순위로 생각했지만, 취준이 조금 걸리겠다는 생각이 들어서 이제는 미래에.. 30대 넘어서 할 계획이였던 해외/외국계 취업 준비도 같이 병행 하려고 한다. 그래서 이 글이라도 먼저 써야지 .. 2025. 5. 8. @Transactional 도대체 언제 쓰고 언제 안써야해? 알아보게된 이유수정을 하는 로직이 있다면 무조건 Transactional을 붙여야하는가?언제 Transactional을 붙여야하는건지Transactional에 대한 이해 부족 @Transactional이란?spring에서 메서드의 원자성을 보장하기 위해 정의된 annotation interface입니다.Spring으로 원자성을 보장하기 위해서는 persistence layer를 구성하여 수행하는데요, 이는 보통 DB 연결로 수행 하기 때문에 구현체로 DB 관련 TransactionManager를 많이 사용하게 됩니다.하지만 @Transactional은 DB에 한정되서 사용하는 것이 아니라 기능 동작에 관한 원자성을 보장하는 interface입니다. 하지만 Spring은 데이터 저장소가 아니라서 어떤 솔루.. 2025. 2. 26. 로드밸런싱 알고리즘과 SPOF에 의한 DNS 로드밸런싱 개념로드 밸런서 (Switch/LB)이름 그대로, 사용자의 요청을 서버에 분배하는 역할을 한다.서버에 가해지는 트래픽을 여러 대의 서버에 고르고 분배하서, 특정 서버의 부하를 막아준다.짚고 넘어갈것 💡DNS에서 알려주는 IP주소는 최종 목적지 서버의 IP 주소야? 아니면 로드밸런서의 IP 주소야? 🗣️ 일반적인 대규모 서비스에서는 로드밸런서의 IP 주소를 가리키고 있다. ⇒ 이후 로드밸런서가 적합한 최종 목적지 서버로 요청을 전달한다. 로드밸런싱의 이점로드 밸런싱은 여러 서버나 컴퓨터 자원에 작업을 고르게 분산하는 기술이다.로드밸런싱으로 인해 아래와 같은 이점을 얻을 수 있다.가용성로드 밸런서는 서버 문제를 자동으로 감지하고 클라이언트 트래픽을 사용 가능한 서버로 리다이렉션하여 시스템의 내결함성을 높.. 2025. 2. 11. [운영체제] ThreadPool /Blocking Queue의 종류들은 각각 언제 사용할까 기본 개념프로세스실행중인 프로그램, 메모리에 적재되어 있음, 메모리 공유X쓰레드 (Thread)프로세스 내에서 실행되는 단위이며, CPU의 실행단위같은 프로세스내에서 메모리 공간을 공유하며 작업을 병렬로 수행가능쓰레드 풀이란동시에 실행되는 작업(쓰레드)를 관리하는 데 사용되는 기법현재 풀이 corePoolSize보다 많은 수의 스레드들을 가지고 있다면 초과된 스레들은 keep-alive Time시간보다 더 오래 할 일이 없다면 제거된다.쓰레드 풀을 쓰는 이유 & 주의 할 점원인 다중 스레드를 사용하는 경우, 특정 서비스가 실행될 때마다 스레드를 생성하는데 소요되는 시간이 문제가된다.과정 그래서 프로세스를 시작할 때, 아예 일정한 수의 쓰레드들을 미리 풀로 만들어 두는 것이다.결과 새 스레드를 매번 만들기.. 2025. 2. 4. HealthCheck는 뭔가 오늘은 HealthCheck가 뭔지 왜하는지에 대해서 적어보려고해요 이전 프로젝트에서 Docker + GitHub Action을 사용해서 무중단 CICD를 구축했었는데 구축 당시 HealthCheck라는 단계를 거쳤습니다. 그 당시에는 구현이 가장 급했기 때문에 코드 하나하나가 어떤 의미로 사용되는지 몰랐는데 문득 이걸 왜하지? 라는 생각이 들었습니다.그전에.. 왜 무중단 CICD를 구축했는지, 그리고 대략적인 툴 사용 이유와 개념 가볍게 짚고 넘어갈께요 무중단 CICD(Blue Green) 구축이유이전 프로젝트에서 수작업으로 배포를 진행을 했습니다. 그렇다 보니 코드의 수정이 생길 때마다 SSH을 통해 서버를 닫고 열어야했는데, 너무 잦은 수정으로 인해 배포 과정에서 시간을 너무 잡아먹드라구요그래서 C.. 2024. 6. 20. [Spring] File과 JSON 데이터를 multipart/form-data로 받아오는 방법 목차 이글을 쓴 이유 Case 1의 경우에서 문제상황 Case 1의 문제 상황에서 파싱을 하면서 까지 해결하고 싶었던 이유 Case 2를 사용하게 된 이유 Case 2에서 아직도 고민이 되는 부분 Case 2를 사용한 이유 결론 안녕하세요 안녕주입니다. 이번 프로젝트를 하면서 POST 메소드에 Request Body로 MultiPartFile을 받는 경우가 많았습니다. MultiPartFile을 받을 경우 클라이언트 선생님들께서 FormData 헤더로 보내주셔야합니다. FormData란 HTML 폼 데이터를 나타냅니다. 이때 브라우저가 보내는 HTTP 메시지는 인코딩되고 Content-Type 속성은 multipart/form-data로 지정된 후 전송됩니다. 1️⃣ 이글을 쓴 이유 이글을 쓴 이유는 M.. 2024. 1. 19. 이전 1 2 3 4 ··· 48 다음