[카테고리:] IT
-
![[기술 면접] 6. 교착상태(Deadlock)와 경쟁상황(Race Condition)에 대해서 설명해주세요. 1 [기술 면접] 6. 교착상태(Deadlock)와 경쟁상황(Race Condition)에 대해서 설명해주세요.](https://allhoneytip.com/wp-content/uploads/2023/08/제목을-입력해주세요__복사본-9-001-2-1-e1692628820405-optimized.png)
[기술 면접] 6. 교착상태(Deadlock)와 경쟁상황(Race Condition)에 대해서 설명해주세요.
저번 시간에 이어, 이번 시간엔 교착상태(Deadlock)와 경쟁상황(Race Condition)에 대해 알아보겠습니다. 저번 시간에 배운 임계영역 개념과 밀접한 관련이 있으니, 이전의 포스팅을 먼저 정독하시길 권해드립니다. Q: 교착상태(Deadlock)와 경쟁상황(Race Condition)에 대해서 설명해주세요. 둘 이상의 thread가 다른 tread가 점유하고 있는 자원을 서로 기다릴 때, 무한 대기에 빠지는 상황을 말합니다. 발생 조건으로는 상호 배제(mutual exclusion), 점유 대기(hold-and-wait), 비선점(no deadlock), 순환…
-
![[기술 면접] 5. Multi process/thread 환경에서 임계영역의 동기화 문제를 어떻게 해결하나요? 5 [기술 면접] 5. Multi process/thread 환경에서 임계영역의 동기화 문제를 어떻게 해결하나요?](https://allhoneytip.com/wp-content/uploads/2023/08/제목을-입력해주세요__복사본-9-001-1-1-e1692626385575-optimized.png)
[기술 면접] 5. Multi process/thread 환경에서 임계영역의 동기화 문제를 어떻게 해결하나요?
[기술 면접] 5. Multi process/thread 환경에서 임계영역의 동기화 문제를 어떻게 해결하나요?
-
![[기술 면접] 5. Stack은 어떤 자료구조인가요? 6 [기술 면접] 5. Stack은 어떤 자료구조인가요?](https://allhoneytip.com/wp-content/uploads/2023/08/제목을-입력해주세요__복사본-9-001-2-e1692456831926-optimized.png)
[기술 면접] 5. Stack은 어떤 자료구조인가요?
저번 시간에 이어, 이번에는 스택(Stack) 자료구조에 대해 알아보겠습니다. Stack은 Queue와 비교되며 나오는 개념이긴 하지만, Queue에 비해 상대적으로 적게 나오는 편입니다. 중요하긴 해도 Queue만큼의 질문 범위가 넓진 않다고 할 수 있죠. 어렵지 않으니 간단하게 알아보고 넘어가도록 합시다. Q: Stack은 어떤 자료구조인가요? 후입선출 LIFO(Last In First Out)의 자료구조입니다. push, pop 모두 O(1)의 시간복잡도를 가지며 후위 표기법 연산,…
-
![[기술 면접] 4. Spring Bean이 무엇인가요? 10 [기술 면접] 4. Spring Bean이 무엇인가요?](https://allhoneytip.com/wp-content/uploads/2023/08/제목을-입력해주세요__복사본-7-001-1-e1692338069479-optimized.png)
[기술 면접] 4. Spring Bean이 무엇인가요?
저번 시간에 이어, 이번엔 Spring Bean에 대해 알아보도록 하겠습니다. Bean은 Spring Framework에서 관리되는 객체로 애플리케이션의 구성 요소입니다. 개발자가 생성하는 것이 아닌, 스프링 컨테이너가 생성하여 공급하는 객체를 의미하며 스프링 관련 질문으로 종종 등장하곤 합니다. Q: Spring Bean이 무엇인가요? Spring Framework에서 관리되는 객체로, Spring Container가 생성하여 관리합니다. 의존성 주입(Dependency Injection)으로 관리되며 Application의 각 Layer에 데이터 혹은 기능을…
-
![[기술 면접] 4. 추상클래스와 인터페이스를 설명해보세요. 14 [기술 면접] 4. 추상클래스와 인터페이스를 설명해보세요.](https://allhoneytip.com/wp-content/uploads/2023/08/제목을-입력해주세요__복사본-13-001-e1692250754834-optimized.png)
[기술 면접] 4. 추상클래스와 인터페이스를 설명해보세요.
저번 시간에 이어서, 추상클래스 / 인터페이스 / 클래스 / 객체 등의 헷갈릴 수 있는 표현들에 대해 알아보겠습니다. 각 항목을 비교하여 설명할 수 있어야합니다. 이번 기회에 한 번 정리하고 가시길 바랍니다. Q: 추상클래스와 인터페이스를 설명해보세요. 추상클래스는 미완성 메서드를 포함하고 있는 클래스로 인스턴스 생성은 불가능하며 다른 클래스인 자손 클래스를 작성하는데 도움을 줄 목적으로 작성합니다. 또한 단일 상속만…
-
![[기술 면접] 4. Proxy에 대해서 알고 계신가요? 18 [기술 면접] 4. Proxy에 대해서 알고 계신가요?](https://allhoneytip.com/wp-content/uploads/2023/08/제목을-입력해주세요__복사본-10-001-e1692236652621-optimized.png)
[기술 면접] 4. Proxy에 대해서 알고 계신가요?
저번 시간에 이어서, 이번엔 Proxy에 대해 알아보겠습니다. Proxy는 Server와 Client 사이에서 중계기 역할을 하는 매개체로써 웹 개발 시 성능, 보안, 데이터 변환 등 다양한 목적으로 사용되는 개념입니다. Q: Proxy에 대해서 알고 계신가요? Server와 Client 사이에서 대리로 통신을 수행하며 중계기 역할을 하는 것입니다. Proxy Server는 익명성으로 보안을 향상시키고, 캐시를 통한 속도 향상, 차단된 사이트를 IP 우회하여…
-
![[기술 면접] 4. Thread가 무엇인가요? 22 [기술 면접] 4. Thread가 무엇인가요?](https://allhoneytip.com/wp-content/uploads/2023/08/제목을-입력해주세요__복사본-7-001-e1692196697527-optimized.png)
[기술 면접] 4. Thread가 무엇인가요?
이전 시간에 이어서, Thread에 대해 알아보겠습니다. Thread는 Process와 같이 자주 등장하는 개념이며, 상대적으로 더욱 깊은 내용들이 있다고 할 수 있습니다. Process / Multi-Process / Thread / Multi-Thread 모두 핵심 개념이니, 이번 시간을 통해 자세히 배울 수 있으시길 바랍니다. Q: Thread가 무엇인가요? 한 process 내에서 실행되는 동작(기능 function)의 단위입니다. 각 Thread는 속해있는 process의 Stack 메모리를 제외한…
-
![[카프카] 4. 아파치 카프카의 ISR(In-Sync-Replicas) 27 [카프카] 4. 아파치 카프카의 ISR(In-Sync-Replicas)](https://allhoneytip.com/wp-content/uploads/2023/07/image-78-e1690629341647-optimized.png)
[카프카] 4. 아파치 카프카의 ISR(In-Sync-Replicas)
지난 시간에 이어, 아파치 카프카의 ISR(In-Sync-Replicas)에 대해 알아보겠습니다. ISR은 리더 파티션과 팔로워 파티션이 모두 Sync된 상태를 의미합니다. 복제 개수가 2인 토픽(리더 파티션 1개와 팔로워 파티션 1개가 존재)으로 가정해보면, 팔로워 파티션에 리더 파티션의 모든 오프셋이 존재해야 동기화가 완료된 상태라고 할 수 있습니다. ISR이 완전하지 못하다면? 팔로워 파티션이 리더 파티션의 오프셋을 모두 복제하지 못한 상태로 서비스가 지속된다면,…
-
![[카프카] 3. 아파치 카프카의 복제(Replication) 28 [카프카] 3. 아파치 카프카의 복제(Replication)](https://allhoneytip.com/wp-content/uploads/2023/07/image-78-e1690629341647-optimized.png)
[카프카] 3. 아파치 카프카의 복제(Replication)
지난 포스팅에 이어서, 아파치 카프카에서 가장 중요한 개념인 복제(Replication)에 대해 알아보겠습니다. 복제는 카프카를 장애 허용 시스템(Fault Tolerant System)이라고 할 수 있는 원동력입니다. 장애가 발생해도 데이터를 유지하고 안전하게 사용할 수 있게 해주죠. 카프카 브로커의 복제(Replication) 카프카의 데이터 복제는 파티션 단위로 이루어집니다. 토픽 생성 시 파티션의 복제 개수 (Replication factor)도 같이 설정 되는데, 디폴트로 브로커에 설정된 옵션…