2020-12-23(Wed)

  1. 학습 날짜 // 2020-12-23(수)

  2. 학습시간 // 9:00~22:00

  3. 학습 범위 및 주제 // webserv

  4. 동료 학습 방법 // sanam, yohlee 님들과 슬랙콜, vscode live share를 활용하여 학습함.

  5. 학습 목표 // 다양한 아이디어를 확인한다.

  6. 상세 학습 내용

트렌센던스 프로젝트를 위해 rails를 학습하는데 집중할 수 있도록 webserv 프로젝트를 마무리 짓기로 하였다.

오늘 하루 이상 시간을 쓰면 안된다는 판단 하에, webserv 프로젝트의 bonus 파트에 해당하는 부분 중 당일에 구현가능한 부분을 추려 구현하였다.

결과적으로 아래 기능들을 구현하였다.

Plugin

  1. On/Off [ 플러그인을 on/off할 수 있는 기능 ]

  2. accept_language [ 언어 관련 컨텐츠 협상을 진행할 수 있는 기능 ]

  3. show_fd_table [ Select를 거치는 Fd 테이블의 현황을 보여주는 기능 ]

  4. show_location_msg [ URI로 접근했을 때 해당 location 블록에 작성된 메세지를 출력하는 기능 ]

  5. control_timeout [ Timeout 체크를 끄거나, Timeout 시간을 조정할 수 있는 기능 ]

  6. log_at[ 로그 경로를 설정하여 별도로 저장시킬 수 있는 기능 ]

Others

  1. regex [ Request Uri가 Route의 정규표현식 패턴에 일치하는지 판단하는 기능 ]

  2. python 스크립트를 실행가능하도록 설정

  3. 플러그인 load/unload 여부를 터미널상에서 설정가능

7.학습 내용에 대한 개인적인 총평

webserv 보너스 파트 구현을 드디어 마쳤습니다. 시간관계상 프록시 서버와 멀티쓰레드 서버를 구현하지 못한 것은 아쉽지만 나름대로 의미있는 것 같습니다. 일전에 구현해둔 것들을 활용하니 생각보다 간단하네요!

플러그인 load/unload 여부를 터미널상에서 설정가능하도록 셋팅해야하는 것을 밤늦게 파악하는 바람에 추가로 개발하는 이슈가 있었습니다. 다음부터는 서브젝트 분석의 경우 개인간 해석차가 있을 수 있으니 저도 따로 챙겨야겠습니다.

8.다음 학습 계획

  • 루비온레일즈 학습

Last updated