본문 바로가기

전체 글33

[Web] 웹 소켓(Web Socket)란? (특징, 동작 과정, 사용 사례, 롱 폴링(LongPolling)과 차이점) 웹 소켓(Web Socket)은 웹 상에서 두 프로그램이 양방향 통신을 할 수 있게 해주는 고급 기술입니다. 즉, 클라이언트와 서버 간에 지속적인 연결을 유지하며 양방향 통신을 가능하게 합니다. 이는 웹 개발에서 실시간 애플리케이션을 구현할 때 매우 유용하며, 채팅 앱, 실시간 게임, 실시간 정보 업데이트가 필요한 서비스 등에 널리 사용됩니다.  특징양방향 통신: 웹 소켓은 서버와 클러이언트가 서로에게 데이터를 주고받을 수 있는 양방향 통신 채널을 제공합니다. 이는 기존의 HTTP 통신 방식과 달리, 서버도 클라이언트에게 직접 데이터를 데이터를 보낼 수 있게 해줍니다.실시간성: 지속적인 연결을 통해 데이터가 거의 실시간으로 전송됩니다. 이는 웹 애플리케이션에서 실시간으로 정보를 교환해야 하는 경우 매우 .. 2024. 4. 10.
[기술 면접] CS 기술 면접 질문&답변 컴퓨터 과학(Computer Science, CS)은 컴퓨터 및 컴퓨팅 기술을 연구하고 응용하는 학문 분야입니다. 이 분야는 컴퓨터 시스템의 이론적 및 실용적 측면을 탐구하며, 문제 해결에 대한 알고리즘과 데이터 구조를 연구합니다. 주요 목표는 컴퓨터 및 정보 시스템의 설계, 개발, 분석 및 응용을 위한 이론과 기술을 발전시키는 것입니다.   알고리즘 및 데이터 구조: 문제 해결을 위한 효율적인 알고리즘과 데이터 구조를 개발하고 분석합니다.프로그래밍 언어 및 컴파일러: 다양한 프로그래밍 언어의 설계와 구현, 그리고 컴파일러 이론과 구현을 연구합니다.컴퓨터 아키텍처: 컴퓨터 하드웨어의 설계 및 동작 원리에 대해 연구합니다.운영 체제: 컴퓨터 시스템의 운영을 관리하는 소프트웨어 및 하드웨어 상호 작용을 연구.. 2024. 4. 9.
[보안] OAuth란? (개념, 특징, 장단점, 사용 사례) OAuth는 오픈 스탠다드 인증 프로토콜입니다. 사용자가 중요한 자원(ex: 비밀번호)을 공유하지 않고도, 한 서비스(서비스 제공자)가 다른 서비스(소비자 서비스)에게 사용자 대신 특정 자원에 접근할 수 있는 권한을 부여할 수 있게 해 줍니다. 주로 API를 통한 서비스 간의 안전한 인증과 권한 부여에 사용됩니다.   개념리소스 오너(Resource Owner): 사용자를 의미합니다. 사용자는 데이터에 접근할 수 있는 권한을 부여할 수 있습니다.클라이언트(Client): 사용자 대신 특정 자원에 접근하려는 애플리케이션을 의미합니다.리소스 서버(Resource Server): 사용자 데이터를 보유하고 있는 서버입니다. 클라이언트가 접근하려고 하는 자원을 관리합니다.인증 서버(Authorization Ser.. 2024. 4. 8.
[키클록] KeyCloak란? (개념, 특징, 장단점, OpenID Connect) KeyCloak은 오픈 소스 아이덴티티 및 엑세스 관리 솔루션으로, 애플리케이션 및 서비스에 대한 보안 인증 및 권한 부여를 제공합니다. Red Hat이 주도하는 이 프로젝트는 주로 Java 언어로 작성되어 있으며, WildFly 서버 위에서 실행됩니다. KeyCloak을 사용하면 개발자들이 보안 관련 복잡한 부분을 직접 처리하지 않고도, 애플리케이션에 강력한 보안 기능을 쉽게 통합할 수 있습니다.   개념Single Sign-On (SSO): KeyCloak은 Single Sign-On을 지원하여, 사용자가 한 번의 로그인으로 여러 다른 애플리케이션과 서비스에 접근할 수 있게 합니다. 이는 사용자 경험을 개선하고 보안을 강화하는 데 도움이 됩니다.Identity Brokering: 외부 아이덴티티 제공.. 2024. 4. 5.