본문 바로가기
반응형

전체 글139

[Algorithm] BFS, DFS, 이진 탐색, 순차 탐색 등 알아보자... 아~ 알고리즘 너무 어려워~ 하지만 공부 하고 넘어가야겠지...? BFS(Breadth-First Search) - 너비 우선 탐색BFS는 가장 가까운 노드부터 차례대로 탐색하는 방식이다.하나의 노드를 방문한 후, 그 노드와 인접한 모든 노드를 먼저 방문하고, 그 다음으로 인접한 노드를 방문하는 방식이다.예시: 친구 관계 탐색상황: 친구들 간의 관계를 나타낸 그래프가 있다고 가정해보자! 'A'라는 친구가 있고 'A'의 친구들은 'B', 'C', 'D'이다. 이제 'A'와 가장 가까운 친구들을 먼저 만나고, 그 다음으로 더 먼 친구들을 만날거다.A - B - E| |C - D탐색 순서(BFS)'A'를 시작으로 'B', 'C', 'D'를 차례대로 방문한다.그다음 'B'의 친구인 'E'를 방문하게된다.BF.. 2025. 1. 9.
[나혼자공부] 6주차 복습-2 오늘도 힘내자!오늘의 공부 내용내 답변은 혼자 계속 다듬어 가면서 고치고 고치고 고치다가 정리된 답변입니다... 처음부터 절때 저렇게 정리하지 않았습니다...! DI와 DIP의 주요 차이점은 무엇인가요?DI는 객체간의 의존성을 외부에서 주입하여 객체간의 결합도를 낮추는 개념이고 DIP는 추상화가 구체화를 의존하는 것이 아니고 구체와가 추상화에 의존해야한다는 설계 개념입니다. DIP는 설계의 원칙을 제공하는 것이고 DI는 이를 구현하는 실질적인 개념입니다.디자인 패턴을 선택할 때 어떤 기준을 가장 우선시하시나요?해결하려는 문제가 어떤 것인지 명확해야 하고 패턴을 사용함으로써 성능문제가 발생하지 않을지 판단해야합니다.프록시 패턴을 사용하는 상황과 이 패턴이 해결할 수 있는 문제점을 설명해주세요 싱글턴 패턴의.. 2025. 1. 9.
[나혼자공부] 6주차 복습-1 오늘은 가수 솔리드노래를 들으며  SOLID개념에 대해서 공부하였다. 오늘의 공부 내용내 답변은 혼자 계속 다듬어 가면서 고치고 고치고 고치다가 정리된 답변입니다... 처음부터 절때 저렇게 정리하지 않았습니다...! SOLID 원칙에 대해 설명해주세요.SRP(Single Responsibility Principle) 단일 책임 원칙: 클래스는 하나의 책임만 가져야하며, 변경사유는 하나뿐이다.OCP(Open Closed Principle) 개방-폐쇄 원칙:자신의 확장에는 열려있고, 주변의 변화에는 닫혀있어야 한다.LSP(Liskov Substitution Principle) 리스코프 치환 원칙 : 자식 클래스는 부모클래스의 기능을 대체할 수 있어야 한다.ISP(Interface Segregation Pri.. 2025. 1. 8.
[대규모 시스템 설계 기초] 3장, 4장 으어 스터디 하다가 아파서 버티다가 마지막에 못듣고 나와버렸다............ ㅠㅠㅠ 일단 스터디한 부분까지 정리!설계 계산 해보기TPS는 Transactions Per Second에 줄임말이다. 초당 처리되는 트랜잭션 수를 의미한다. Read TPS와 Write TPS를 사용하여 유저 수와 기간에 따른 데이터 량을 계산 하는 방법을 알아보쟈~TPS 관련 글: https://docs.whatap.io/en/best-practice-guides/about-apm-dashboard ❓ 30일동안 얼만큼의 데이터가 쌓일까  ❓ READ TPS: 100WRITE TPS: 10유저: 1000명1초 동안의 총 트랜잭션 수총 트랜잭션 수는 유저 수에 TPS를 곱한다.Read 트랜잭션 수/초 = 100 * 1,.. 2025. 1. 8.
[HTTP] Stateless/Stateful 뭘 사용해야 할까? 프로젝트 전 알아야하는 개념들을 정리해보았다... 후... 개념은 뭐 정리할 수 있지만 잘 써먹을 수 있겠찌??서버와 클라이언트 간에 진행되는 통신 방식을 알아보자! Stateful서버가 각 클라이언트의 세션이나 상태 정보를 유지하는 것을 말한다. 서버는 클라이언트가 이전에 보낸 요청, 세션 정보 등을 기억하기 때문에 클라이언트가 다시 연결해도 맥락을 잃지 않는다.예시: 로그인한 상태에서 쇼핑몰 장바구니에 물건을 담거나, 게임 중 진행 상황을 저장하는 것이 가능하다.Stateful 원리세션 유지서버는 클라이언트의 상태를 추적하기 위해 메모리에 상태 정보를 저장한다.예: 로그인 정보, 사용 중인 데이터.클라이언트가 새로운 요청을 보내면, 서버는 이 상태 정보를 참조하여 적절히 응답한다.세션 ID 또는 연결.. 2025. 1. 7.
[대규모 시스템 설계 기초] 1장, 2장 스터디에 참여하게 되었다...! 어렵다...! 하지만 해야지 뭐 어케1장. 사용자 수에 따른 규모 확장성로드 밸런서(Load Balancer)1. 동작 원리 및 구현로드 밸런서는 여러 서버에 들어오는 네트워크 트래픽을 분산시켜 서버 과부하를 방지한다.요청 분배: 클라이언트 요청을 받아 백엔드 서버 중 하나로 전달한다.방식:라운드 로빈: 순서대로 서버에 요청을 분배.가중치 기반: 성능이 높은 서버에 더 많은 요청 할당.최소 연결: 현재 연결 수가 가장 적은 서버에 요청 전달.2. 장단점 사용 이유장점:시스템 가용성 및 확장성 향상.특정 서버 과부하 방지.장애 서버 자동 감지 및 제외.단점:초기 설정 및 유지보수 필요.로드 밸런서 자체가 장애 지점이 될 수 있음.사용 이유: 많은 사용자가 동시에 접속하는 서.. 2025. 1. 6.
2025년... 새해...가 밝았다...퇴사하고 벌써 3개월이 다되어간다... 대학원도 시작인데 공부할께 참 많구나..! 일을 많이 벌려놔서 몸이 고생하는중이다 ㅋㅋ아침에 일어나서 저녁까지 앉아있는데 좋은곳으로 이직 잘 하고싶다! 일단 다짐했던게 있으니까 흔들리지말고! 목표한거 쭉 나아가자!2025년에도 나는 해낼 수 있다! 2025. 1. 5.
[나혼자공부] 5주차 복습-2 오늘도 힘내자!오늘의 공부 내용내 답변은 혼자 계속 다듬어 가면서 고치고 고치고 고치다가 정리된 답변입니다... 처음부터 절때 저렇게 정리하지 않았습니다...! 세션을 사용할 때 서버 측에서 어떤 방식으로 클라이언트를 식별하나요?일반적으로 세션 ID는 쿠키에 저장됩니다. 클라이언트는 서버로 요청을 보낼 때 이 쿠키를 함께 전송하여 세션을 유지합니다. 세션을 언제 생성하고 관리하는지 설명해 주세요클라이언트가 서버에 처음 접속하면 서버는 새로운 세션을 생성하고 고유한 세션 ID를 발급합니다. 서버는 세션 정보를 메모리 또는 외부 저장소에 저장합니다.디스패처 서블릿이 무엇인가요?클라이언트 요청을 적절한 컨트롤러로 전달하고, 응답을 생성하여 반환하는 역할을 합니다. 클라이언트에서 받은 요청을 디스패처 서블릿이 .. 2025. 1. 4.
[나혼자공부] 5주차 복습-1 으ㅇ아아ㅏ아아ㅏ 공부할께 많다아ㅏ 오늘의 공부 내용내 답변은 혼자 계속 다듬어 가면서 고치고 고치고 고치다가 정리된 답변입니다... 처음부터 절때 저렇게 정리하지 않았습니다...! 서블릿은 웹 서버예요? WAS예요?서블릿(Servlet)을 실행하려면 서블릿 컨테이너같은 WAS가 필요하지만 웹서버나 WAS가 아닙니다. 자바 기반 웹 어플리케니션의 구현 기술이고 동적인 콘텐츠를 생성하기 위해 사용됩니다.웹 서버와 와스를 구분하는 이유에 대해 설명해 주시겠어요?웹 서버와 WAS는 역할과 책임이 다릅니다. 웹 서버는 주로 정적인 콘텐츠를 클라이언트에 제공하고 WAS는 동적인 콘텐츠를 생성하는 차이가 있습니다.로드 밸런싱을 위해 웹 서버를 사용하는 경우, 어떤 설정이 필요한가요?Nginx, HTTP Server등.. 2025. 1. 3.
반응형