IoTeX 메인넷 v1.2 — IoTeX의 Ethereum 도구를 위한 Web3.js 및 노드/데이터베이스 업그레이드

During the first quarter of 2021, we saw an overflow of announcements from IoTeX, including new research, partnerships, and ecosystem initiatives. But that just scratches the surface... read more

IoTeX Mainnet v1.2 — Web3.js for Ethereum Tools on IoTeX & Node/Database Upgrades

2021년 1분기 동안, 우리는 IoTeX로부터 새로운 연구, 파트너십 및 생태계 이니셔티브를 포함한 발표의 범람을 보았습니다. 그러나 이는 IoTeX 핵심 팀이 하고 있는 일의 단면에 불과합니다. 배후에서 우리는 네트워크의 "심장"을 향상시키기 위해 공격적으로 개발을 계속해왔습니다. iotex-core, 모든 대표자 및 전체 노드가 실행하는 블록체인 프로토콜로, IoTeX 네트워크 전체에 생명을 부여합니다.

이번 블로그에서는 4월 30일 공식 출시된 우리의 기대되는 메인넷 v1.2 코드 출시, 에 포장된 놀라운 기능과 도구를 공유합니다. IoTeX 대표자는 5월 24일까지 노드를 업그레이드할 수 있으며, 그 이후에 메인넷 v1.2가 공식적으로 활성화됩니다!

IoTeX의 Ethereum 도구를 위한 Web3.js 래퍼

IoTeX는 Solidity 스마트 계약을 지원하는 EVM 호환 블록체인으로, Ethereum Dapp을 IoTeX로 쉽게 이식할 수 있습니다. ‌Ethereum 개발자가 IoTeX 플랫폼에서 제품을 구축하거나 확장하기 쉽도록 하기 위해, 우리는 IoTeX 사용자/빌더가 IoTeX에서 Ethereum 도구의 풍부한 생태계를 활용할 수 있도록 하는 Babel, Ethereum 노드 API 래퍼를 도입할 예정입니다. 이는 MetaMask, Remix, Truffle, Graph 등과 같은 도구/서비스가 Babel 엔드포인트를 가리키기만 하면 IoTeX에서 작동할 수 있음을 의미합니다!

IoTeX는 곧 MetaMask와 같은 Ethereum 도구와 호환됩니다

Web3.js는 HTTP, IPC 또는 WebSocket을 사용하여 로컬 또는 원격 Ethereum 노드와 상호 작용할 수 있도록 하는 라이브러리 모음입니다. IoTeX 네트워크에서 Ethereum 도구를 사용하여 DApp을 개발하는 방법에 대한 자세한 문서는 곧 발표할 것입니다.

블록체인 데이터베이스 관리 업그레이드

iotex-core 전체 노드 데이터베이스는 이제 60GB에 가까워지며, 네트워크에서 장치 및 Dapp 활동의 급증으로 인해 더 성장할 것으로 예상됩니다. IoTeX는 누구나 하드웨어 및 스토리지에 과도한 자본을 지출하지 않고도 전체 노드 또는 블록을 생성하는 대표 노드를 운영할 수 있도록 블록체인 코드를 가능한 효율적으로 만드는 데 전념하고 있습니다. 메인넷 v1.2는 다양한 블록체인 데이터베이스 관리 업그레이드를 통해 열린 참여에 대한 우리의 헌신을 확장할 것입니다.

여러 데이터베이스 파일

이번 분기부터 IoTeX 핵심 팀은 블록체인 데이터를 간소화하기 위해 상당한 시간과 노력을 들였습니다. 메인넷 v1.2로, iotex-core는 이제 데이터베이스를 여러 데이터베이스 파일로 분할하여 각 파일에는 1,000,000 블록이 포함됩니다. 장기적으로 이 분할은 단일 대규모 데이터베이스 파일로 인한 병목 현상을 방지하고, 노드가 가장 최근 데이터베이스 파일에서 선택적으로 다운로드하여 네트워크와 더 신속하게 동기화할 수 있는 가능성을 열어줍니다.

데이터베이스 파일 크기 감소

여러 데이터베이스 파일과 함께 스토리지 아키텍처 업그레이드를 통해, 우리는 훨씬 더 나은 압축 기능을 갖춘 개선된 블록 스토리지 접근 방식을 사용하여 데이터베이스 파일 자체를 전면 개편했습니다. 이로 인해 스토리지 공간에서 약 30%의 절약이 예상됩니다. 더 빠른 동기화 + 간소화된 스토리지 = 훌륭한 노드 운영자 경험!

블록체인 쿼리 시 속도 향상

우리는 또한 데이터베이스에서 개선된 트랜잭션 인덱싱 스킴을 작업해왔습니다. 결과적으로 특정 API 쿼리, 예를 들어 특정 블록 범위 내에서 주소에서 모든 트랜잭션을 가져오는 것이 이제 훨씬 더 빠른 응답을 받게 될 것입니다.

노드 관리 및 로그 업그레이드

소프트웨어에서 문제가 발생하면 로그가 도움이 될 수 있습니다. 그러나 블록체인 노드의 로그를 탐색하는 것은 복잡하고 시간이 많이 소요될 수 있습니다(특히, 5초마다 즉시 확정되는 블록을 갖는 IoTeX와 같은 빠른 네트워크의 경우). 필요한 데이터를 추출하여 문제를 이해하는 것은 로그 크기 때문에 불가능할 수 있습니다. 메인넷 v1.2는 이를 해결합니다.

노드 로그 형식은 ELK를 지원합니다

우리는 로그 형식을 개선하여 노드 운영자의 삶을 그 어느 때보다 쉽게 만들 것입니다. 특히 ELK 스택와 호환되도록 만들 것입니다! 이를 통해 노드에 설치된 "Beats" 에이전트를 사용하여 노드에서 로그를 추출하고, 인기 있는 Elasticsearch + Kibana 서버로 보내 이 로그를 분석하고 노드 모니터링, 문제 해결, 보안 분석 등을 위한 시각화를 생성할 수 있습니다. 무엇보다도 ELK는 완전히 오픈 소스이므로 ELK를 배포/manage하는 데 유연성을 제공합니다.

“좀비” 노드가 더 이상 없습니다

특히 대표자들은 네트워크 연결을 잃은 후 노드가 블록체인과 동기화되지 않는 것을 알아차렸을 수 있습니다. 이는 시스템이 정상적으로 실행되고 있지만 연결이 복원되어도 블록체인과 동기화할 수 없는 "좀비" 상태에 빠질 수 있습니다. 이는 특히 대표자에게 위험할 수 있으며, 노드가 블록 생성이 중단될 수 있습니다.

이러한 잠재적 이슈를 피하기 위해, 우리는 iotex-core의 코드를 개선하여 노드가 이제 이러한 이벤트를 감지하고 인터넷 연결이 복구된 직후에 P2P 네트워크에 재연결할 수 있도록 했습니다. 이를 통해 노드는 즉시 블록체인과 재동기화할 수 있어 네트워크 중단의 위험을 크게 줄일 수 있습니다.

다음은 무엇인가요?

우리는 메인넷 v1.2를 실현하고 IoTeX 네트워크를 다음 단계로 발전시키게 되어 기쁩니다. 2020년 8월의 메인넷 v1.1 이후로, IoTeX 팀은 다가오는 메인넷 v1.2 출시를 위해 몇 달 동안 열심히 작업했습니다. 메인넷 v1.2 외에도, 우리의 Github 활동를 따르는 이들은 ioPay, iotexscan, Pebble Tracker, SDKs, 및 스테이킹 레포지토리를 포함한 지속적이고 의미 있는 업그레이드를 보았습니다. IoTeX는 정말로 모든 실린더에서 불을 붙이고 있습니다!

메인넷 v1.2 코드는 4월 30일 금요일에 대표자들이 자신의 노드에 설치할 수 있도록 공개됩니다. 하드 포크 코드 출시로, 대표자는 5월 24일까지 노드를 업그레이드해야 합니다. 더 많은 업데이트를 위해 IoTeX 개발자 트위터를 팔로우하세요!

다가오는 코드 출시에서는 IoTeX 메인넷이 EVM의 새로운 버전 v0.6.x를 지원하며, 이는 필수 "키워드"를 통한 코드의 명확성과 보안을 더하고, 코드의 의미와 구문을 개선하고, 예외 처리를 위한 try/catch 구조, address-to-address payabe 간의 명시적 변환을 위한 payable(x) 명령어, 동적 저장소 배열을 위한 push() 등을 포함한 많은 새로운 기능을 제공합니다. 자세한 내용은 여기서 확인하세요.

IoTeX에 대하여

2017년 오픈 소스 플랫폼으로 설립된 IoTeX는 신뢰된 사물의 인터넷을 구축하고 있으며, 인간, 기계, 비즈니스 및 DApp 등 모든 "사물"이 신뢰와 개인 정보 보호 하에 상호 작용할 수 있는 개방형 생태계입니다. 30명 이상의 상위 연구 과학자 및 엔지니어로 구성된 글로벌 팀의 지원으로, IoTeX는 블록체인, 보안 하드웨어 및 기밀 컴퓨팅을 결합하여 차세대 IoT 장치, 네트워크 및 경제를 가능하게 합니다. IoTeX는 "블록별로 물리적 세계를 연결함으로써" 미래의 분산 경제를 실현할 것입니다.

더 알아보기: 웹사이트 | 트위터 | 텔레그램 | 미디엄 | 레딧