작성
·
313
0
안녕하세요 백엔드 개발자로 취업을 준비하고 있는 비전공자 취준생입니다.
현재 프로젝트 설계 중인데, 아키텍처에 관한 지식이 많이 부족해 글을 올려봅니다.
저희는 달력 일정 관리 프로젝트를 설계중인데,
NestJS를 사용해서 github actions, docker를 통해 무중단 배포를 하고자 합니다.
db는 postgreSQL을 사용하고자 하는데요.
여기서 db 대용량 데이터와 트랜잭션에 대한 대비로 멀티 서버 구축이 반드시 필요한지 궁금합니다.
저희가 서버 아키텍처 관련 지식이 많이 부족해서 구글링을 해도 잘 모르겠더라고요.
만약 멀티 서버 구축을 해야한다면 데이터 서버를 따로 분리해야하는지 아니면 다른 방식을 해야하는지 잘 모르겠어서 글을 올려봅니다. 만약 서버를 분리하지 않는다면 이를 대비할 다른 방법이 있을지도 궁금합니다.
읽어주셔서 감사합니다.
답변 1
0
안녕하세요, 인프런 AI 인턴이에요.
비전공자로서 백엔드 개발자로 취업을 준비하고 계시는 지루한 산호님의 질문에 답변드리겠습니다.
저희 프로젝트 설계에는 달력 일정 관리가 포함되어 있는데, NestJS를 사용해서 무중단 배포를 하고자 하시고, db는 postgreSQL을 사용하고 싶다고 말씀하셨네요.
데이터베이스 대용량 데이터와 트랜잭션에 대비하기 위해 멀티 서버 구축이 필요한지 궁금하시다고 하셨는데요. 멀티 서버 구축은 대용량 데이터와 트랜잭션 처리에 있어서 일반적으로 사용되는 방법 중 하나입니다. 여러 개의 서버를 사용하면 부하를 분산시켜 안정적인 서비스를 제공할 수 있기 때문입니다.
하지만 멀티 서버 구축은 복잡한 구성과 관리가 요구되기 때문에, 초보 개발자나 프로젝트 규모가 작을 때는 단일 서버로 시작하는 것도 좋은 선택일 수 있어요. 초기에 단일 서버로 시작하더라도, 나중에 프로젝트가 성장하면 멀티 서버 구축을 고려할 수도 있습니다.
멀티 서버 구축을 하지 않더라도 대용량 데이터와 트랜잭션에 대비하는 다른 방법으로는 성능 최적화를 고려할 수 있습니다. 예를 들어, DB 인덱스를 적절히 설정하거나 캐싱 메커니즘을 도입하는 등의 방법이 있을 수 있습니다. 하지만 이는 프로젝트에 따라 상황에 맞게 결정해야 하므로, 신중하게 고려해야 합니다.
아직 서버 아키텍처에 대한 지식이 부족하다고 말씀하셨는데요. 서버 아키텍처는 프로젝트의 성공과 안정성에 매우 중요합니다. 추가적인 공부와 연습을 통해 지식을 쌓고 경험을 쌓는 것이 좋습니다. 인프런에서 제공되는 다양한 백엔드 강의를 수강하시면 도움이 될 것입니다.
질문에 정확한 답을 드리기는 어렵지만, 비전공자로써 백엔드 개발을 준비하고 계신다면 기회가 된다면 개인 프로젝트를 진행해보면서 실제 경험을 쌓는 것을 추천드립니다. 또한 개발 커뮤니티나 온라인 포럼에서 다른 개발자들과 의견을 공유하고 정보를 얻는 것도 도움이 될 것입니다.
지루한 산호님의 프로젝트 설계와 취업 준비에 힘써주시는 것이 좋겠습니다. 부족한 지식을 채우는 과정은 조금 어려울 수 있지만, 꾸준한 노력과 공부를 통해 성장하실 수 있을 거라 믿습니다.
더욱 자세한 내용이나 실제 프로젝트에 대한 조언은 인프런 커뮤니티 내 백엔드 관련 카테고리에 질문을 올려보시는 것도 도움이 될 것입니다. 훌륭한 개발자가 되는 데 늘 응원하고 있겠습니다. 화이팅하세요!