Ich wollte web3.js in den Browsern meiner Benutzer ausführen. Die Aufgaben reichen vom Extrahieren des Tokennamens und Tokensymbols aus der Tokenadresse bis zum Bereitstellen von Verträgen.
Aber zum Beispiel Ethereum Wallet startet langsam. Ich gehe davon aus (richtig?), dass web3.js auch langsam laden würde.
Welche Möglichkeiten gibt es, dieses Problem zu überwinden? Soll ich einen Node (welche Software macht das?) auf meinem Server ausführen? Wenn ja, kann ich meinen Knoten so einstellen, dass er nur meinen Clients dient (nicht jedem im Netz), um nicht langsam zu werden?
Oder macht das oben beschriebene Problem die Verwendung von web3.js überhaupt nicht möglich? Sollte ich stattdessen mit dem Benutzer über Python (meine primäre Programmiersprache für das Projekt) AJAX ohne web3.js interagieren?
Web3.js lädt keine Kettendaten, daher ist es beim Synchronisieren der Kette nicht langsam wie ein Ethereum Wallet. Sie konfigurieren web3.js so, dass es auf einen vertrauenswürdigen Ethereum-Knoten verweist.
Vielleicht möchten Sie einen Dienst wie Infura ausprobieren, wenn Sie keinen eigenen Knoten hosten möchten.
BEARBEITEN:
Zeigt ein Beispiel-Timing für eine grundlegende Get-Operation von Metamask (zeigt auf Infura).
Nico hat Recht - Sie zeigen einfach web3 auf einen Knoten (lokal oder entfernt). Normalerweise geschieht dies durch die Konfiguration von MetaMask. Die Wahl zwischen lokal und remote hängt von Ihrem Vertrauensmodell ab.
Web3 funktioniert mit dem, was Sie wählen.
porton
Nico Valencia