Logo
  • 홈
  • 블로그
  • 연락처
Help us build Valis
🇰🇷

큐빅 아카이브 서버 설정 및 운영

image

큐빅 아카이브 서버 설정 및 운영

스크립트를 사용하여 피어 유지 관리, 틱 파일 및 에포크를 통해 큐빅 트랜잭션 데이터를 저장하고 검증하는 아카이브 서버를 설정하세요.

Qsilver · 2024년 1월 22일.

소개

큐빅은 일반적인 암호화폐가 아닙니다! 블록체인이 없기 때문에 트랜잭션이 어떻게 검증되는지 처음에는 명확하지 않으며, 트랜잭션 데이터를 매주 가지치기하기 때문에 과거 트랜잭션을 결정하는 데 어려움이 있습니다. 아카이브 서버는 각 에포크에서 관련 데이터를 자동으로 저장하고, 네트워크 프로토콜이 변경되지 않는 한 재컴파일 없이 에포크 변경을 처리하여 이러한 문제를 해결합니다.

설정 및 컴파일

리눅스 서버를 가정하고, 아카이브 서버를 설정하기 위해 다음 단계를 따르세요:

git clone <https://github.com/Qsilver97/qubic-cli>
cd qubic-cli
mkdir build
cd build
cmake ..
make
g++ -I.. ../bxid.cpp ../connection.cpp -o bxid

C++ 코드를 컴파일하기 위해 g++, cmake, 및 e2fsprogs가 필요합니다. 이들은 일반적으로 표준으로 제공되며 apt-get을 통해 설치할 필요가 없습니다.

아카이브 서버 실행

아카이브 서버를 지속적으로 실행하려면 무한 루프 bash 스크립트를 사용하세요:

while true; do ACTION; done

각 스크립트를 별도의 창에서 실행하거나 &를 사용하여 비동기로 실행하세요. 연결이 끊길 위험이 있는 경우 다음을 사용하세요:

nohup ./script > script.out &

작업 및 스크립트

1. 피어 목록 유지 관리

다음 작업으로 루프 스크립트를 만드세요:

./bxid peersloop

이 스크립트는 피어 IP 주소로 이름이 지정된 파일로 피어 디렉터리를 업데이트하며, 현재 및 이전 에포크 피어를 찾기 위한 쿼리에 필수적입니다.

2. 틱 파일 가져오기

다음 작업으로 루프 스크립트를 만드세요:

./bxid maketickfiles

이 스크립트는 각 디렉터리에 쿼럼 파일과 틱 데이터를 저장합니다. 틱 파일을 가져오기 위한 병렬 요청과 재시도를 포함하는 순차 모드의 두 단계로 작동합니다. 이 스크립트를 루프에서 실행하면 각 반복에서 더 많은 파일을 얻을 수 있습니다.

3. 에포크 스캔

다음 작업으로 루프 스크립트를 만드세요:

./bxid scanepoch 0

에포크 값 0은 스크립트가 현재 에포크를 결정하고 아카이브를 위한 .json 파일을 생성한다는 의미입니다. 지정된 에포크에 대한 computors 파일이 있는지 확인하세요.

4. JSON 파일 생성 및 OpenSearch에 게시

다음 작업으로 루프 스크립트를 만드세요:

./bxid jsonfiles

이 스크립트는 .json 파일을 생성하고 OpenSearch에 게시하며, 기본 검증을 수행하고 잘못된 파일을 삭제합니다.

5. 검증

다음 작업으로 루프 스크립트를 만드세요:

./bxid validate

이 스크립트는 쿼럼 투표를 검증하며, 451개 이상의 투표가 일치하는 해시로 있는지 확인하고 틱 데이터 해시를 검증합니다. 검증된 파일을 재검증하지 않도록 쓰기 보호합니다.

OpenSearch 사용

opensearch.org의 지침을 따라 OpenSearch를 설치하세요. localhost:9200에서 사용할 수 있는지 확인하세요. 로그인이 추가되고 인증서가 추가된 경우 적절한 자격 증명을 사용하도록 bxidutils.cpp의 opensearch() 및 opensearchpost() 함수를 수정하세요. OpenSearch 없이 아카이브 서버를 실행하려면 bxid.cpp의 #define POST_TO_OPENSEARCH를 주석 처리하세요.

추가 도구

컴퓨터 로그 피드에 액세스할 수 있는 경우 다음 명령을 사용하여 bxid 데이터셋을 생성하세요:

./qubic-cli -nodeip (ipaddr) -getlogfromnode (pass0) (pass1) (pass2) (pass3)
./bxid logjson logfileN

N을 컴퓨터 로그 항목의 소스 번호로 바꾸세요. 이는 logs/(epoch)/logfileN 및 해당 .json 파일에 로그를 생성하고 유지 관리합니다.

마지막 메모

다음 스크립트를 추가하세요:

./bxid qchain 0

이는 쿼럼 투표의 모든 불변 데이터와 이전 틱 다이제스트에 대한 다이제스트인 qchain 데이터셋을 생성합니다. 이는 다른 아카이브 간 동일한 데이터를 보장하는 데 도움이 됩니다.

결론

아카이브 서버 설정과 다양한 스크립트를 통해 큐빅 트랜잭션 데이터가 포괄적으로 저장되고 검증됩니다. 이러한 도구를 통해 큐빅 고유의 트랜잭션 처리를 처리할 수 있는 강력한 아카이브 서버를 유지 관리할 수 있습니다.

최신 업데이트를 위해 Valis Discord에 가입하고, X에서 팔로우하고, 우리 블로그를 북마크하세요.
최신 업데이트를 위해 Valis Discord에 가입하고, X에서 팔로우하고, 우리 블로그를 북마크하세요.

← 이전

🇰🇷Qubic 서비스 통합에 대한 비공식 가이드

다음 →

🇰🇷Qubic 채굴, 합의 및 컴퓨터

이 페이지에서

  • 큐빅 아카이브 서버 설정 및 운영
  • 소개
  • 설정 및 컴파일
  • 아카이브 서버 실행
  • 작업 및 스크립트
  • 1. 피어 목록 유지 관리
  • 2. 틱 파일 가져오기
  • 3. 에포크 스캔
  • 4. JSON 파일 생성 및 OpenSearch에 게시
  • 5. 검증
  • OpenSearch 사용
  • 추가 도구
  • 마지막 메모
  • 결론

관련 게시물

Logo

Execution

|

Transparency

XRSSDiscordGitHub