dev-dongwon / rust-server

rust를 배우며 간단한 웹서버 구현해보기

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

rust를 배우며 간단한 웹서버 만들기

요약

  • rust 학습 목적으로 공식 문서와 강좌를 참고해 간단한 웹서버 빌드

역할

  • 1인 개인 프로젝트

기간

  • 2023.01 - 2023.02

목적

  • 평소 가비지 컬렉터 덕분에 메모리 관리에 대해 의식하지 않고 프로그래밍
  • 직접 메모리 할당, 해제를 관리하는 rust의 프로그래밍 철학과 관점을 배우고자 함
  • 러스트 공식 문서에도 예제로 실려 있고, 과거 웹서버를 만들며 효과적인 학습을 한 경험이 있어 rust 웹서버를 만들어보기로 함

세부 기능

  • tcp stream으로 요청 request를 읽어 프로토콜, method 종류, 쿼리 스트링, path 파싱
  • 요청에 따라 정적 파일을 response로 응답

실행 영상

사용 기술

  • language: rust
  • build: cargo

프로젝트를 통해 배운 점

  • 메모리 할당과 해제를 신경써야 하고, 소유권과 생명 주기를 관리하는 메모리 세이프한 관점을 배울 수 있었음
  • 러닝 커브가 비교적 높은 편에 속해 숙련도를 올리려면 꾸준한 학습이 필요함을 인지
  • 아주 고성능을 보장받고 싶거나, 엄격한 메모리 관리가 필요한 상황에서 rust를 선택할 수 있도록 입문한 것에 의의를 둠.

About

rust를 배우며 간단한 웹서버 구현해보기


Languages

Language:Rust 96.5%Language:HTML 3.3%Language:CSS 0.1%