
[Pingora] Cloudflare 네트워크 프레임워크
2024. 3. 2. 00:56
Open Source
Cloudflare은 클라우드 벤더 중 하나로, 최근에 내부적으로 사용하던 Pingora를 오픈소스로 공개했습니다. 클라우드 서비스를 제공함에 있어 nginx의 한계를 극복하고자 자체적으로 Pingora를 개발해서 사용했다고 합니다. Pingora는 Cloudflare의 운영 환경에서 battle testing을 거쳤기 때문에 충분히 검증되었습니다. Pingora는 네트워크 애플리케이션 개발에 사용할 수 있는 라이브러리로, nginx와 같이 executable binary를 제공하지 않습니다. 기능프로토콜: HTTP/1, HTTP/2, end-to-end grpc, TCP/UDP 커스터마이징: callback, filter 특징Rust로 작성되었기 때문에 메모리 안전성이 뛰어남 멀티스레드 아키텍처를 ..

[Rust] Rust Ownership이란
2023. 8. 31. 19:03
Rust/Basic Rust
Rust는 다른 언어에서 찾아보기 힘든 ownership이란 개념이 존재합니다. Java의 경우 garbage collector가 메모리를 관리하고 C/C++의 경우 프로그래머가 메모리를 직접 관리합니다. Rust는 ownership을 활용해 garbage collector와 프로그래머의 개입 없이도 메모리를 효과적으로 관리할 수 있습니다(여기서 말하는 메모리의 관리는 사용하지 않는 객체 등에 할당된 메모리를 해제하는 것을 의미합니다). 이번 포스팅에서는 Rust가 제공하는 ownership의 4가지 유형에 대해 살펴보겠습니다. Move Move는 ownership을 한쪽 위치에서 다른 쪽 위치로 옮기는 것을 의미합니다. fn main() { let string = String::new(); use_st..