0. 상황 - 이전 글 에서 말했듯이 aws의 t4g.micro(기존 : t3.micro)라는 작고 가녀린 ec2인스턴스에 docker compose로 spring 어플리케이션을 3개 + nginx까지 구동시키다가, oom kill java 이슈가 발생했다..(해당 상황을 참여중인 커뮤니티에 공유하니, 모두들 이구동성으로 t3.micro, t4g.micro에 사과하라고 하셨다😅😅)1. 에러코드 전문 - ec2 인스턴스의 System log에서 발견한 oom 관련 로그는 아래와 같았다.[69465.875991] systemd invoked oom-killer: gfp_mask=0x140cca(GFP_HIGHUSER_MOVABLE|__GFP_COMP), order=0, oom_score_adj..
해당 게시글은 (케인)멘토님께 멘토링 세션을 통해 주고받은 질의응답의 내용을 정리한 글 입니다.😲 Q1. NoSQL에서 no의 해석에서는 의견이 갈린다고 들었습니다. 멘토님께서는 NoSQL에서 no를 어떻게 해석하시나요?- no- not only- non-relational operational- non-relational database 👨🎓 A1. no는 not only의 NO라고 봅니다.SQL이 DB에서 우선순위가 높은 선택지였을때 나온것이 noSQL이라 불리우는 범주의 DB였기 때문입니다.즉, RDB만으로는 해결하기 어려운 문제가 점차 가속되던 상태에서 나온것이 noSQL입니다.(데이터가 늘어나는데 RDB에서는 그를 따라갈만한 RDB 퍼포먼스가 잘 나오지 않았고, DB가 못견뎌서 램을..
해당 게시글은 (케인)멘토님께 멘토링 세션을 통해 주고받은 질의응답의 내용을 정리한 글 입니다.😲 Q1. 멘토님께서는 service DTO controller DTO의 분리시기가 언제라고 보시나요? spring boot 어플리케이션에서 dto를 사용 할 때 어플리케이션 개발 초기에는 컨트롤러와 서비스 레이어 각각 나눠서 두기에는 두 dto간 요소 차이가 없을것이고 결국에는 코드의 중복으로 이어지기에, 대부분의 개발 초반에는 하나의 dto로 개발을 진행한 뒤, 프로젝트 규모가 커지면 추후에 분리하는편이라고 들었습니다. 저 또한 토이프로젝트 팀원들과 dto의 레이어별 분리 관련해서 논의를 진행중에 있습니다. 멘토님께서는 두 레이어에서 dto를 분리해야하는 시기는 언제쯤이라고 보실까요…! 👨🎓 A1...
해당 게시글은 (케인)멘토님께 멘토링 세션을 통해 주고받은 질의응답의 내용을 정리한 글 입니다.😲 Q1. 지난 11월 23일에 Spring Boot 3.2가 정식 릴리즈 되면서 생긴 궁금증입니다…!멘토님께서 보시기에, 현 상황에서 첫 스프링 프로젝트를 진행할 신입 개발자가 새로운 팀 프로젝트를 진행한다면가장 최근 릴리즈 버전인 3.2버전을 사용하는것을 추천하시는지, 아니면 조금 더 안정화되고 레퍼런스가 많은 3.0 혹은 3.1 버전을 추천하시는지 궁금합니다…! 👨🎓 A1. 제가 개발을 한다고 하면, 저는 새로운 이슈를 마주하는것을 즐기기 때문에 3.2버전을 쓸 것 같습니다. 하지만 신입과 주니어 개발자라는 대상이라고 하면 레퍼런스가 많은 3.0버전을 사용하라고 할 것 같습니다. 어느정도 경력이..
해당 게시글은 (케인)멘토님께 멘토링 세션을 통해 주고받은 질의응답의 내용을 정리한 글 입니다.😲 Q1. 특정 entity에 1:1 관계로 여러 개의 entity가 묶여있는 상황에서 특정 entity를 포함한 연계 entity들을 통합 조회하는 경우, 연계 entity의 값이 없는 경우에 대한 처리방법을 고민하고 있습니다.특정 entity에 여러개의 entity가 1:1관계로 묶여있습니다. 특정 entity에 1:1 관계로 여러 개의 entity가 묶여있기 때문에 entitygrapth를 이용해 일시에 값을 받아오고자 합니다. 하지만 연계되는 entity가 실제로 존재할지 아닐지는 알 수 없으며, 연계되는 entity값이 아직 생성되지 않았을 수 있습니다. 이러한 상황에서 현재 떠올린 방법은 두가지가..
해당 게시글은 (케인)멘토님께 멘토링 세션을 통해 주고받은 질의응답의 내용을 정리한 글 입니다.😲 Q1. spring에서도 모든 request에 특정 리소스를 담아서 보내줄 수 있는 방법이 있을까요?Spring backend, React frontend 프로젝트에서 프론트와 백엔드 어플리게이션을 서버에서 각각 구동시키는것이 아닌, react 앱을 빌드 한 뒤 spring 어플리케이션의 정적 리소스에 담아서 보내고자 합니다. 기존에 node 프로젝트에서 동일한 방법(프론트 앱 빌드 후 백엔드 서버의 resource로 전달)을 사용했던 경우에는 특정 정적 리소스를 모든 requerst에 담아서 보내도록 설정을 할 수 있어서 관련 설정을 해주었는데, spring에서도 모든 request에 특정 리소스를 담..
오늘 수강한 강의 : 【한글자막】 NodeJS 완벽 가이드 : MVC, REST APIs, GraphQL, Deno오늘의 강의 정리 📗Express.jsExpress.js는 Node.js를 위한 간편하고 유연한 웹 애플리케이션 프레임워크로, 웹 및 모바일 애플리케이션을 빠르게 개발할 수 있도록 도와줌. Express.js는 빠르고 간단한 웹 애플리케이션을 구축하기 위한 강력한 도구이며, Node.js의 생태계에서 많은 개발자들에게 선호되고 사용되고 있음주요 특징:미들웨어 지원:Express.js는 미들웨어를 지원하여 요청과 응답 사이에 여러 작업을 수행할 수 있습니다. 미들웨어는 app.use() 메서드를 통해 추가되며, 요청 처리 파이프라인을 구성할 수 있습니다.라우팅:Express는 HTTP 메서드..
Rest APINode.js 와 Express js 그리고 NestJSJavaScript (JS)개요:웹 브라우저에서 실행되는 스크립트 언어로, 주로 클라이언트 측 웹 개발에서 사용된다.객체 지향 프로그래밍 언어이며, 동적 타입 언어로 변수의 타입을 런타임에 결정한다.V8 JavaScript Engine개요:Google에서 개발한 오픈 소스 JavaScript 엔진.주로 웹 브라우저 (Google Chrome)과 Node.js에서 사용되며, 빠른 성능과 최적화된 메모리 관리를 제공한다.Node.js개요:Chrome V8 엔진을 기반으로 하는 JavaScript 런타임 환경.서버 측 JavaScript 실행을 가능하게 하며, 비동기적이고 이벤트 기반의 I/O를 지원한다.npm (Node Package Ma..
Spring Boot vs Spring vs Spring MVCSpring개요:자바 기반의 프레임워크로, 기업 환경에서 대규모 응용 프로그램을 개발하기 위한 종합적인 솔루션을 제공한다.모듈화, DI (의존성 주입), AOP (관점 지향 프로그래밍) 등을 지원하여 유연하고 확장 가능한 애플리케이션을 만들 수 있다.Spring Framework 구성요소:Core Container: IoC 컨테이너, 빈 팩토리 등이 포함되어 있으며, DI를 지원한다.Data Access/Integration: JDBC, ORM 등 데이터 액세스 및 통합을 위한 모듈 제공.Web: 웹 애플리케이션 개발을 위한 모듈로 Spring MVC 포함.AOP (Aspect-Oriented Programming): 관점 지향 프로그래밍을 ..
T-log 프로젝트에 대한 피드백 HttpURLConnection대신 사용할 수 있는 HTTP 웹 클라이언트에 대해서 알아보기를 조언받음. 보다 강력하고 유연한 웹 클라이언트란? HttpURLConnection RestTemplate WebClient