Wisdom’s Cloud

[LINUX] 12. 서비스, 소켓 본문

LINUX/Beginner

[LINUX] 12. 서비스, 소켓

지혜로운지혜쓰 2021. 1. 30. 13:33
서비스와 소켓
  • 서비스(Service)는 평상시에도 늘 가동하는 서버 프로세스며, 소켓(Socket)은 필요할 때문 작동하는 서버 프로세스다.

  • 서비스와 소켓은 systemd라는 서비스 매니저 프로그램으로 작동시키거나 관리한다.

 

 

서비스의 특징
  • 시스템과 독자적으로 구동 및 제공되는 프로세스를 말하며, 웹 서버(httpd), DB 서버(mysqld), FTP 서버(vsftpd) 등을 예로 들 수 있다.

  • 실행 및 종료는 대게 systemctl start/stop/restart 서비스이름 명령으로 사용된다.

  • 서비스의 실행 스크립트 파일은 /usr/lib/systemd/system/ 디렉터리에 '서비스이름.service'라는 이름으로 확인할 수 있다.

  • 부팅과 동시에 서비스의 자동 실행 여부를 지정할 수 있는데, 터미널에서 systemctl list-unit-files 명령을 실행하면 현재 사용(enabled)과 사용 안 함(disabled)을 확인할 수 있다.

 

 

소켓의 특징
  • 서비스는 항상 가동되지만 소켓은 외부에서 특정 서비스를 요청할 경우 systemd가 구동시키며, 요청이 끝나면 소켓도 종료된다.

  • 따라서 systemd가 서비스를 새로 구동하는 데 시간이 소요되기 때문에 소켓으로 설정된 서비스를 요청할 때 처음 연결되는 시간은 서비스에 비해 약간 더 걸릴 수 있다.

  • 소켓의 대표적인 예로 텔넷 서버를 들 수 있으며, 소켓과 관련된 스크립트 파일은 /usr/lib/systemd/system/ 디렉터리에 '소켓이름.socket'이라는 이름으로 존재한다.