다음 텍스트를 번역합니다. NEAR 프로토콜과 관련된 모든 용어입니다. HTML 태그를 보존하되 응답에서
, , , 와 같은 태그를 생성하지 마십시오. ‘Burrow’, ‘NEAR’, ‘BRR’, ‘stNEAR’ 등의 특정 이름이나 토큰을 번역하지 마십시오:
소개 백엔드를 구축하는 경우, 이미 API를 설계하고 상태를 저장하며 사용자를 관리하는 방법을 알고 있습니다. NEAR 프로토콜을 사용하면 동일한 직관을 사용할 수 있습니다. 다만, 여러분의 서버 대신 분산 네트워크에서 작동합니다. NEAR은 “호스팅할 필요가 없는 백엔드”로 생각할 수 있습니다. 비즈니스 로직은 스마트 계약(미니 프로그램)으로 실행되며, 데이터는 네트워크에서 관리되는 복제 저장소에 저장되며, 사용자 ID는 암호화로 확인됩니다. 이 강의에서는 익숙한 백엔드 아이디어를 NEAR 개념에 매핑하고 간단한 Twitter 스타일 예제를 통해 읽기 및 쓰기 작업이 어떻게 작동하는지 살펴보겠습니다. 마지막에는 웹2에서 NEAR로 이동하는 것이 적응이며, 새로운 창조가 아님을 알게 될 것입니다.
NEAR을 분산형 백엔드로
유지하지 않는 글로벌 클러스터에서 실행되는 서비스를 배포한다고 상상해보세요. 이것이 NEAR입니다. 여러분의 애플리케이션은 자체 코드와 데이터를 가진 계정(예: twitter-app.yourname.near)입니다. 독립적인 검증자(네트워크 노드)가 해당 데이터를 복제하고 제공합니다. 사용자가 상호 작용할 때 네트워크는 일반적으로 ~1~2초 안에 결과에 대한 논란이 없는 합의에 도달합니다.
전문 용어 확인
검증자: NEAR 소프트웨어를 실행하고 계약을 실행하며 합의에 참여하는 노드입니다.
최종성: 변경 사항이 잠겨지고 되돌릴 수 없는 지점입니다.
애플리케이션 상태: 네임스페이스 및 복제
NEAR에서 각 앱의 데이터는 해당 계정에 범위가 지정되어 있습니다. 이는 전용 데이터베이스 스키마 또는 네임스페이스와 같습니다.
격리된 상태: 여러분의 계약 코드만 앱의 키-값 저장소를 수정할 수 있습니다.
감사 트레일: 모든 변경 사항이 체인에 기록되어 변경할 수 없는 검증 가능한 기록을 만듭니다.
높은 가용성: 많은 검증자가 여러분의 상태를 저장하고 제공합니다. 일부가 오프라인 상태가 되어도 여러분의 앱은 접근 가능합니다.
빠른 최종 일관성: 요청이 처리되고 합의가 실행되며 약 ~1~2초 안에 새로운 상태가 네트워크 전체에 대해 최종화됩니다.
유사성: 클라우드 데이터베이스를 생각해보세요. 멀티 리전 쓰기 복제 및 끄지 않을 수 있는 내장형 감사 로그가 있는 것으로 생각하면 됩니다.
백엔드 로직: 스마트 계약 (Wasm)
비즈니스 규칙은 스마트 계약에 있습니다. 이는 웹어셈블리(Wasm)로 컴파일된 작은 프로그램이며 여러분의 앱 계정 아래에 저장됩니다.
언어 옵션: 성능과 안전성을 위해 Rust가 가장 일반적인 선택입니다. JavaScript/TypeScript는 NEAR의 도구를 통해 Wasm으로 컴파일됩니다. [명확히 하려면 Rust만 강조할 것인지, near-sdk-js/TypeScript를 명시적으로 포함할 것인지 확인하십시오.]