Sqlite3 및 Javascript로 엄청나게 빠른 데이터 제공
3410 단어 rustwebperfsqlitejavascript
Sqlite3 및 Javascript로 엄청나게 빠른 데이터 제공
나는 SQLite3를 좋아합니다. 개인 프로젝트를 위한 사실상의 데이터베이스입니다. 사람들이 가져오는 것을 보았습니다millions of rows per minute. NOSQL Database으로 사용되는 것을 보고 깜짝 놀랐습니다. SQLite 데이터베이스를 호스트할 수 있다는 점이 마음에 듭니다everywhere. SQLite3의 다재다능함은 놀랍습니다.
SQLite3를 웹 서버와 함께 사용할 때의 성능을 살펴보고 싶었습니다. 과연 2022년 유럽 에너지 위기와 함께 비용 효율적인 솔루션을 찾는 것이 중요합니다.
Go, Ruby, JavaScript, Rust 등 다양한 프로그래밍 언어를 실험했습니다.
내 목표: 달성 가능한 동시성을 현명하게 파악하는 것입니다.
코드 복잡성과 속도의 균형을 맞췄습니다. 각 구현에 너무 많은 시간을 할애하고 싶지 않았습니다. 내가 사용한 SQLite 쿼리는 간단합니다. 하나의 삽입 문, 하나의 쿼리 문. 이것은 SQLite 성능을 확인하기 위한 테스트가 아닙니다. 나는 SQLite가 빠르다는 것을 안다. 웹 서버에 대한 SQLite 쿼리의 차단 영향을 확인하기 위한 테스트입니다.
JavaScript 결과는 저를 놀라게 했습니다.
마디:
녹:
Rust는 삽입 시 느리지만 쿼리 시에는 두 배 빠릅니다.
bun.sh(새로운 자바스크립트 런타임):
뭐? bun.sh는 삽입 시 두 배 빠르고 선택 시 더 좋습니다.
우리는 누구나 하나의 서버에서 초당 수만 건의 요청을 처리할 수 있는 시대에 살고 있습니다(내가 사용한 것은 3년 된 것입니다).
멋진 데이터베이스가 필요하지 않습니다.
동일한 호스트에서 호스팅되는 sqlite3 데이터베이스면 충분합니다.
나는 들었던 것을 기억한다
The engineering under JavaScript is really pretty phenomenal
bun.sh는 JavaScript를 위한 경이로운 엔지니어링의 새로운 예입니다.
놀랍도록 빠른 모든 JavaScript 최적화를 Sqlite3와 결합하면 컴파일된 언어와 동등한 성능을 얻을 수 있습니다.
더 빨리 녹이 생길 수 있다고 생각합니다.
그러나 구현 세부 사항을 파악하려면 더 많은 작업이 필요합니다.
bun.sh + SQLite3는 내 모든 성능 요구 사항에 충분합니다.
참조
Javascript에 대한 John Carmack:
Reference
이 문제에 관하여(Sqlite3 및 Javascript로 엄청나게 빠른 데이터 제공), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/auray/sqlite-performance-480b텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)