Ruby on Rails

ActionCable & WebSockets

실시간 기능, channels, subscriptions, broadcasting, cable.yml 설정, Redis 어댑터

18 면접 질문·
Mid-Level
1

Ruby on Rails에서 ActionCable이란 무엇인가요?

답변

ActionCable은 Rails에 내장된 프레임워크로, WebSockets를 통해 실시간 기능을 구현할 수 있게 해줍니다. 브라우저와 서버 간에 지속적인 양방향 연결을 설정하기 위해 서버 측에서는 Ruby, 클라이언트 측에서는 JavaScript 추상화를 제공합니다. ActionCable은 Rails 애플리케이션의 나머지 부분과 자연스럽게 통합되어 models 및 기타 컴포넌트에 접근할 수 있습니다.

2

ActionCable이 pub/sub에 사용하는 어댑터를 정의하는 설정 파일은 무엇인가요?

답변

config/에 있는 cable.yml 파일은 ActionCable이 사용하는 pub/sub 어댑터를 정의합니다. 이 파일은 환경별로 다른 어댑터를 지정합니다. 개발 환경에는 async(인메모리, 단일 프로세스), 프로덕션 환경에는 redis 또는 postgresql(여러 프로세스/서버 간 통신 가능). 설정에는 일반적으로 Redis 서버 URL과 사용할 채널이 포함됩니다.

3

ActionCable의 서버 측 channel은 일반적으로 어느 디렉터리에 위치하나요?

답변

ActionCable의 서버 측 channel은 app/channels/에 위치합니다. 이 디렉터리에는 ApplicationCable::Connection(연결 관리 및 인증)과 ApplicationCable::Channel(모든 channel의 기본 클래스)이 포함됩니다. 커스텀 channel은 ApplicationCable::Channel을 상속하며 각 실시간 통신 유형에 대한 비즈니스 로직을 정의합니다.

4

문자열로 식별되는 메시지 스트림을 구독하기 위해 channel에서 사용해야 하는 메서드는 무엇인가요?

5

ActionCable에서 stream_from과 stream_for의 차이점은 무엇인가요?

+15 면접 질문

다음 면접을 위해 Ruby on Rails을 마스터하세요

모든 질문, flashcards, 기술 테스트, 코드 리뷰 연습, 면접 시뮬레이터에 접근하세요.

무료로 시작하기