살구잼의 여정
보호되어 있는 글입니다. 내용을 보시려면 비밀번호를 입력해주세요.
NestJS 알아보기
카테고리 없음 2024. 11. 9. 23:37

NestJS /  https://docs.nestjs.com/- 구조화된 코드 작성과 모듈화에 강점을 가진 Node.js 프레임워크- Node.js의 웹 서버 프레임워크를 기반으로, TypeScript를 지원하여 타입 안정성과 코드 자동 완성을 제공 주요 개념들모듈(Module)- NestJS의 모든 애플리케이션은 모듈로 구성됨- 특정 기능을 그룹화하는 단위- NestJS에서 모듈은 @Module() 데코레이터로 정의되며, 모듈 내에서 사용할 수 있는 컴포넌트(서비스, 컨트롤러 등)를 지정할 수 있다.import { Module } from '@nestjs/common';import { AppController } from './app.controller';import { AppService } from..

article thumbnail
CS 및 기술면접 독서 블로깅(일부)
카테고리 없음 2024. 10. 12. 23:09

개발자에게 필요한 핵심 역량 = "근거를 설명하는 능력": 특정 코드가 어떻게 작동하는지, 왜 특정 성능을 내는지, => 원리를 모르는 개발자는 뛰어난 개발자가 아니다! 스파게티 코드(문제를 만났을때 그저 구글링을 통해 옷감을 기우듯이 복사 붙여넣기를 반복해서 만든 엉킨 코드)를 만들지 말자생성형 AI는 언제나 일관되고 정확한 진단을 하는 것이 아니니 의존하지 말자 구조 지도를 통해, 주제의 흐름을 시각적으로 바로 파악할 수 있는 점이 매우 장점이었다.실무를 위한 개발의 재료를 얼마나 갖고 있는지!  참고) 개발자를 위한 컴퓨터 과학 용어집 (https://csnote.net/)  CPU : ALU, CU, register캐시 메모리메모리 : ROM, RAM(하드웨어) / 주소, 휘발성보조기억장치 : 비..

article thumbnail
[review]업무에 활용하는 node.js

https://product.kyobobook.co.kr/detail/S000213381878 Node.js를 제대로 공부한 적도 없고, node 개발자도 아니었지만 갑자기 Node.js로 프로젝트를 진행해야하는 상황에서 초보 개발자에게 어느정도 길잡이가 되어주고 도움이 된 책인거 같다. 결과적으론 PoC 이슈로 노드가 아닌 파이썬을 쓰게 되었지만, 백엔드에서 스프링과 함께 양대산맥인 노드를 찍먹해볼 수 있는 계기가 되었다. 자바스크립트를 잘 모르는 사람을 위해 간단한 문법도 함께 다뤄주니 도움이 됬다. 뒷 챕터까지 모두 읽어보지는 못했지만, 처음 만나는 Node.js에 대해 약간의 개발 흐름과, 특징들(싱글 스레드, 이벤트 루프 등)에 대해 일부 알게되었고, 특히 프론트엔드와 백엔드가 자바스크립트라는 ..

article thumbnail
[review]조코딩의 챗GPT API를 활용한 수익형 웹 서비스 만들기

https://product.kyobobook.co.kr/detail/S000211817103 간단하게 말하자면 초보 개발자가 어떻게 챗 gpt를 사용해서 서비스를 쉽고 간단하게 만들 수 있는지 가볍게 볼 수 있는 책인것 같다. 나도 사이드 프로젝트나 개인적인 미니 프로젝트를 만들때, 챗 gpt는 그저 코드 작성에만 도움을 받을뿐이었지, 제대로 활용하고 있었던건 아닐지도 모르겠다는 생각이 들었다. 챗 gpt를 서비스에 어떻게 녹여낼 수 있는지, 작은 프로젝트여도 수익화도 생각할 수 있다는 점이 흥미로웠다. 다음에 개인적인 서비스를 개발할 때 참고하여 간단하고 재미있는 요소를 추가하여 개발해보고싶다. 또한, 지금까지 "내 작고 소중하고 하찮은 서비스에 수익화라니?!" 라는 생각으로, 아직은 수익화단계까지 ..

[TIL 20230802~20230807]
🖤 BE 45기/TIL 2023. 8. 7. 19:31

오늘 공부내용 main 브랜치 : 운영하고 있는 서비스가 상용되는 기준인 "가장 안정된 소스"가 들어가는 곳. 안정된 소스와 개발자들이 개발하고 있는 소스는 다르다! 개발자들이 개발하고 있는 소스들 중에서! 가장 안정된 소스가 dev 브랜치이다. 따라서 feature 브랜치가 개발자들이 가장 최근에 개발하고 있는 브랜치가 된다. 보통 dev 브랜치가 배포 기준이 되고, 배포가 끝나서 안정화가 인정된다면(테스트완료) main브랜치로 머지하는 것이다. 기능이 완성되었을때 feature 브랜치를 dev 브랜치로 머지한다. feature 브랜치를 만들때 기준이 되는 브랜치는 dev브랜치를 따서 만든다. 브랜치의 삭제는 용량문제 등으로 문제가 생기지 않는 한은, 기록을 남기기위해 웬만하면 머지 후에도 featur..

보호되어 있는 글입니다. 내용을 보시려면 비밀번호를 입력해주세요.
[TIL 20230728]
🖤 BE 45기/TIL 2023. 7. 28. 22:22

오늘 공부내용 오류) EC2를 이용한 파이프라인 구축 및 배포에 성공했으나, EC2로의 서버배포 자동화 결과가 확인이 안되었음. 원인 파악) 확실한 원인은 잘 모르겠으나, jar 파일이 EC2 인스턴스에서 실행되지 않았던 것으로 보임 해결) 파이프라인을 통해 배포가 제대로 완료 되었다면, EC2안에는 배포를 위한 파일들이 제대로 복사되어있어야 한다. 따라서 appspec.yml 파일의 destination 을 확인하면 어느 경로로 복사가 되는지를 확인할 수 있다.

[TIL 20230726~20230727]
🖤 BE 45기/TIL 2023. 7. 27. 13:49

오늘 공부내용 [강사님 한마디] - 프록시 서버 : 서버 접근시 대리 서버 - 로드밸런서 : Scale-Out이라는 서버의 갯수를 늘려 하나의 서버에 줄 부하를 분산시키는 방법을 이용하는 경우, 요청을 여러 서버에 나눠 처리할 수 있도록 교통정리를 해주는 역할을 하는 기술,프로그램을 로드 밸런서라고 한다. 로드밸런싱을 이용하려면 적어도 서버가 2개 이상이여야 한다. 두개의 서버를 열려면 터미널이 2개 이상 있어야 한다.(실습시 주의) 클라이언트는 NGINX로 프록시 서버(80번 포트)를 통해 스프링부트(8080번 포트)로 요청을 보내게된다. - 오토 스케일링 : 무중단 서버(중단 없이 지속적으로 서비스를 제공하는 서버 시스템)는 오토 스케일링이 없으면 운영이 어렵다. - 롤링 업데이트(Rolling Up..

article thumbnail
16장. 트랜잭션과 락, 2차 캐시

트랜잭션과 락 트랜잭션은 ACID (원자성, 일관성, 격리성, 지속성을 보장해야 함) 원자성 : 트랜잭션 내에서 실행한 작업들은 하나의 작업인 것처럼 모두 성공 또는 모두 실패여야 한다. 일관성 : 모든 트랜잭션은 일관성있는 데이터베이스르 상태를 유지해야 한다. 예) DB에서의 무결성 제약 조건 항상 만족 격리성 : 동시에 실행되는 트랜잭션은 서로에게 영향이 미치치 않도록 격리해야한다. 동시에 같은 데이터를 수정하지 못하게 해야한다. 지속성 : 트랜잭션이 성공적으로 끝나면 항상 결과가 기록되어야 하고, 문제가 생겨 중간에 실패하면 로그 등을 통해 복구해야 한다. 문제는 격리성으로, 격리성을 완전히 보장하려면 트랜잭션을 순서대로 실행해야 하고, 그러면 동시성 처리 성능이 너무 나빠진다. 따라서 ANSI 표..