본문 바로가기

OS/Linux

[Linux] 서비스와 소켓

 

서비스

  - 시스템과 독자적으로 구동되어 제공하는 프로세스를 말한다. 예로 웹 서버(httpd), DB 서버(mysqld), FTP 서버(vsftpd) 등이 있다.
  - 실행 및 종료는 대개 'systemctl start/stop/restart 서비스이름'으로 사용된다.
  - 서비스의 실행 스크립트 파일은 /usr/lib/systemd/system/ 디렉터리에 '서비스이름.service'라는 이름으로 확인할 수 있다. 예를 들어 웹 서비스는 httpd.service라는 이름의 파일로 존재한다.

 

소켓
  - 서비스는 항상 가동되지만, 소켓은 외부에서 특정 서비스를 요청할 경우에 systemd가 구동시킨다. 그리고 요청이 끝나면 소켓도 종료된다.
  - 그래서 소켓으로 설정된 서비스를 요청할 때는 처음 연결되는 시간이 앞에서 설명한 서비스에 비교했을 때 약간 더 걸릴 수 있다. 왜냐하면 systemd가 서비스를 새로 구동하는 데 시간이 소요되기 때문이다. 이와 같은 소켓의 대표적인 예로 텔넷 서버를 들 수 있다.
  - 소켓과 관련된 스크립트 파일은 /usr/lib/systemd/system/ 디렉터리에 소켓이름.socket라는 이름으로 존재한다.
  ※ 예전 CentOS에서는 소켓과 비슷한 개념으로 xinetd 데몬이 주로 사용되었다.
  ※ CentOS 7도 xinetd 데몬을 지원한다. 하지만 많은 서비스가 xinetd 대신에 소켓으로 사용된다.

 

 

참고 : https://www.youtube.com/playlist?list=PLVsNizTWUw7EoFNBhIdVFp9eT6P22hU1o

 

'OS > Linux' 카테고리의 다른 글

[Linux] 모듈의 개념과 커널 컴파일(업그레이드) 순서  (0) 2016.04.12
[Linux] GRUB 부트로더  (0) 2016.04.12
[Linux] 프로세스  (0) 2016.04.12
[Linux] 파이프, 필터, 리다이렉션  (0) 2016.04.12
[Linux] 마운트  (0) 2016.04.12