پرش به محتوای اصلی
Change page

گره‌ها و کلاینت‌ها

آخرین ویرایش: , ۷ اسفند ۱۴۰۲

اتریوم یک شبکه‌ی توزیع‌شده از رایانه‌هایی است که نرم‌افزار را اجرا می‌کنند (به نام گره‌ها) که می‌تواند بلوک‌ها و داده‌های تراکنش را تأیید کنند. برای «اجرای» یک گره، به یک برنامه‌ی کاربردی که به عنوان کلاینت شناخته می‌شود در رایانه خود نیاز دارید.

پیش‌نیازها

پیش از آن که نمونه‌ی کلاینت اتریوم خود را اجرا کنید و در این موضوع عمیق شوید باید مبانی ماشین مجازی اتریوم و شبکه‌ی همتا به همتا را بدانید و متوجه شوید. به معرفی اتریوم ما نگاهی بیاندازید.

If you're new to the topic of nodes, we recommend first checking out our user-friendly introduction on running an Ethereum node.

کلاینت‌ها و گره‌ها چه هستند؟

«گره» به اجرای یک تکه از نرم‌افزار کلاینت گفته می‌شود. کلاینت یک پیاده‌سازی از اتریوم است که تمام تراکنش‌های هر بلوک را تأیید می‌کند، شبکه را ایمن نگه می‌دارد و داده‌ها را دقیق نگه می‌دارد.

شما می‌توانید یک نمای در لحظه و زنده را از شبکه‌ی اتریوم را با نگاه به نقشه‌ی گره‌ها(opens in a new tab) ببینید.

کلاینت‌های اتریوم بسیاری در زبان‌های برنامه‌نویسی مختلفی مثل گو، Rust، جاوا اسکریپت، تایپ‌اسکریپت، پایتون، سی‌شارپ، دات‌نت، Nim و جاوا وجود دارند. همه‌ی این پیاده‌سازی‌ها مشخصات رسمی (در اصل یلو پیپر اتریوم(opens in a new tab)) را دنبال می‌کنند. این مشخصاتْ نحوه‌ی عملکرد شبکه‌ی اتریوم و زنجیره‌ی بلوکی را تعیین می‌کند.

کلاینت اجرا نمودار ساده شده‌ی ویژگی‌های کلاینت اتریوم.

انواع گره

اگر می‌خواهید که گره‌ی خودتان را اجرا کنید باید بدانید که گره‌های مختلفی وجود دارند که داده‌های مختلفی را استفاده می‌کنند. در واقع کلاینت‌ها می‌توانند سه نوع گره را اجرا کنند - سبک، کامل و آرشیو. گزینه‌های استراتژی‌های همگام‌سازی مختلف هم وجود دارند که زمان همگام‌سازی را سریع‌تر می‌کنند. همگام‌سازی به این اشاره دارد که با چه سرعتی می‌تواند به‌روزترین اطلاعات را در مورد وضعیت اتریوم دریافت کند.

گره‌ی کامل

  • داده‌های زنجیره بلوکی را کامل نگه‌داری می‌کند.
  • در اعتبارسنجی بلوک‌ها شرکت می‌کند و همه‌ی وضعیت‌ها و بلوک‌ها را تأیید می‌کند.
  • همه‌ی وضعیت‌ها می‌توانند از گره‌‌ی کامل استخراج شوند.
  • در خدمت شبکه است و داده‌ها را در زمان درخواست ارائه می‌دهد.

گره‌ی سبک

  • زنجیره‌ی هدر را ذخیره و هر چیز دیگری را درخواست می‌کند.
  • می‌تواند اعتبار داده‌ها را نسبت به ریشه‌های حالت در هدرهای بلوک تأیید کند.
  • برای دستگاه‌های کم‌ظرفیت، مانند دستگاه‌های تعبیه‌شده یا تلفن‌های همراه، که توانایی ذخیره‌ی چندین گیگابایت داده‌های زنجیره بلوکی را ندارند، مفید است.

گره‌‌ی آرشیو

  • هر چیزی که در گره کامل نگهداری می‌شود را ذخیره کرده و یک آرشیو کامل از وضعیت‌های تاریخی می‌سازد. وقتی می‌خواهید درخواستی بفرستید، مثل گرفتن موجودی حساب در بلوک شماره‌ی 4,000,000، یا به‌طور ساده و قابل‌اتکا مجموعه‌ی تراکنش خود را بدون نیاز به استخراج آن‌ها با استفاده از OpenEthereum آزمایش کنید(opens in a new tab)، نیاز می‌شود.
  • این داده‌ها واحدهای ترابایتی را نشان می‌دهند که گره‌های آرشیو را برای کاربران متوسط از ​​جذابیت می‌اندازد، اما می‌تواند برای سرویس‌هایی مانند جستجوگرهای بلوک، نگهدارندگان کیف پول و تجزیه و تحلیل زنجیره مفید باشند.

همگام‌سازی کلاینت‌ها در هر حالتی غیر از آرشیو منجر به کاهش داده‌های زنجیره‌ی بلوکی می‌شود. این بدان معناست که هیچ آرشیوی از تمام وضعیت‌های تاریخی وجود ندارد اما گره‌ی کامل قادر است آنها را بنا به تقاضا بسازد.

چرا باید یک گره‌ی اتریوم را اجرا کنم؟

اجرای یک گره به شما این امکان را می‌دهد که بدون نیاز به اعتماد و به شکل خصوصی از اتریوم ضمن پشتیبانی از اکوسیستم استفاده کنید.

مزایا برای شما

اجرای گره‌ی خودتان شما را قادر می‌سازد از اتریوم به شکل واقعاً خصوصی، خودکفا و بدون نیاز به اعتماد استفاده کنید. نیازی نیست به شبکه اعتماد کنید زیرا می‌توانید داده‌ها را خودتان با کلاینت خود تأیید کنید. «اعتماد نکنید، اعتبارسنجی کنید» یک سخن مشهور مربوط به زنجیره‌ی بلوکی است.

  • گره‌ی شما تمام تراکنش‌ها و بلوک‌ها را با توجه به قوانین اجماع به تنهایی اعتبارسنجی می‌کند. این به این معنی است که شما نیازی به اتکا به هیچ گره‌ی دیگری در شبکه یا اعتماد تام به آن‌ها ندارید.
  • شما نیازی به افشای آدرس و موجودیتان به گره‌های تصادفی ندارید. همه چیز می‌تواند با کلاینت خودتان بررسی شود.
  • اگر از گره‌ی خودتان استفاده کنید برنامه‌ی غیرمتمرکزتان می‌تواند ایمن‌تر و خصوصی‌تر باشد. MetaMask(opens in a new tab), MyEtherWallet(opens in a new tab) and some other wallets can be easily pointed to your own local node.
  • شما می‌توانید نقاط پایانی فراخوانی رویه‌ای دوردست (RPC) سفارشی خود را برنامه‌ریزی کنید.
  • شما می‌توانید با استفاده از ارتباط بین پردازشی (IPC) گره‌ی خود را متصل کنید یا برای بارگذاری برنامه‌ی خود به‌عنوان افزونه آن را بازنویسی کنید. با این روش تأخیر کمی خواهید داشت، که برای جایگزینی تراکنش‌های شما در سریع‌ترین زمان ممکن لازم است (یعنی پیش‌اجرا).

چگونه با استفاده از برنامه‌های کاربردی و گره‌ها به اتریوم دسترسی داشته باشید

مزایای شبکه

داشتن مجموعه‌ی متنوعی از گره‌ها برای سلامت، امنیت و انعطاف‌پذیری عملیاتی اتریوم حائظ اهمیت است.

  • آن‌ها دسترسی به داده‌های زنجیره‌ی بلوکی را برای کلاینت‌های سبکی که به آن وابسته هستند فراهم می‌کنند. در پیک‌های استفاده‌ی زیاد، باید گره‌های کامل کافی برای همگام‌سازی گره‌های سبک وجود داشته باشد. گره‌های سبک همه‌ی زنجیره بلوکی را ذخیره نمی‌کنند و به جای آن داده‌ها را با ریشه‌ی وضعیت درون هدر بلوک‌ها اعتبارسنجی می‌کنند. آن‌ها می‌توانند در صورت نیاز اطلاعات بیشتری را از بلوک‌ها درخواست کنند.
  • گره‌های کامل قوانین اجماع اثبات کار را اجرا می‌کنند تا نتوان آن‌ها را فریب داد که بلوک‌هایی را بپذیرند که از آن‌ها پیروی نمی‌کنند. این کار امنیت بیشتری را در شبکه ایجاد می‌کند، چون اگر همه‌ی گره‌ها گره‌های سبک باشند که تأیید کامل را انجام نمی‌دهند، استخراج‌گرها می‌توانند به شبکه حمله کنند و برای مثال بلوک‌هایی با پاداش بالاتر بسازند.

اگر یک گره‌ی کامل را اجرا کنید، کل شبکه‌ی اتریوم از آن سود می‌برد.

اجرای گره‌ی خودتان

به اجرای کلاینت اتریوم خود علاقه دارید؟

For a beginner-friendly introduction visit our run a node page to learn more.

If you're more of a technical user, learn how to spin up your own node with the command line!

پروژه‌ها

یک کلاینت انتخاب کنید و دستورالعمل‌هایش را اجرا کنید

ethnode - یک گره‌ی اتریوم (geth یا OpenEthereum) را برای توسعه‌ی محلی اجرا کنید.

DAppNode - یک رابط کاربری گرافیکی سیستم‌عامل برای اجرای گره‌های Web3 شامل اتریوم و زنجیره‌ی بیکن روی دستگاه‌های مخصوص.

منابع

جایگزین‌ها

اجرای گره خود می‌تواند دشوار باشد و همیشه نیازی به اجرای نمونه‌ی خود ندارید. در این مورد شما می‌توانید از وب سرویس‌ طرف ثالث مثل Infura(opens in a new tab)،‏ Alchemy(opens in a new tab) یا QuikNode(opens in a new tab) استتفاده کنید. ArchiveNode(opens in a new tab) هم یک گزینه‌ی جایگزین استکه امیدوار است داده‌های آرشیو روی زنجیره‌ی بلوکی اتریوم را برای توسعه‌دهندگان مستقلی که در غیر این صورت توانایی پرداخت آن را ندارند، به ارمغان بیاورد.‌ For an overview of using these services, check out nodes as a service.

اگر شخصی یک گره‌ی اتریوم را با یک وب سرویس عمومی در انجمن شما اجرا می‌کند، می‌توانید کیف پول‌های سبک خود (مانند MetaMask) را از طریق RPC سفارشی(opens in a new tab) به یک گره‌ی انجمن هدایت کنید و نسبت به طرف ثالث مورد اعتماد تصادفی، حریم خصوصی بیشتری را حفظ کنید.

از طرف دیگر، اگر کلاینت را اجرا می‌کنید، می‌توانید آن را با دوستان خود که ممکن است به آن نیاز داشته باشند به اشتراک بگذارید.

کلاینت‌های اجرا (پیشتر «کلاینت‌های Eth1»)

جامعه‌ی اتریوم چندین کلاینت اجرای متن‌باز (که قبلاً به عنوان «کلاینت‌های Eth1» یا فقط «کلاینت‌های اتریوم» شناخته می‌شدند) نگهداری می‌کند که توسط تیم‌های مختلف با استفاده از زبان‌های برنامه نویسی مختلف توسعه یافته‌اند. این کار باعث می‌شود شبکه قوی‌تر و پخش‌تر شود. هدف ایده‌آل دستیابی به تنوع بدون تسلط هیچ کلاینتی برای کاهش هر نقطه شکستی است.

این جدول خلاصه‌ای از کلاینت‌های مختلف ارائه می‌دهد. همه‌ی آن‌ها در آزمون کلاینت(opens in a new tab) قبول شده‌اند و به‌طور فعال نگهداری می‌شوند تا با ارتقاهای شبکه همگام بمانند.

کلاینتزبانسیستم‌عاملشبکه‌هاراهبرد همگام‌سازیهرس کردن وضعیت
Geth(opens in a new tab)Goلینوکس، ویندوز، مک‌اواسشبکه‌ی اصلی، Görli،‏ Rinkeby،‏ RopstenSnap, Fullآرشیو، هرس‌شده (Pruned)
Nethermind(opens in a new tab)سی‌شارپ، دات‌نتلینوکس، ویندوز، مک‌اواسشبکه‌ی اصلی، Görli، Rinkeby، Ropsten و بیشترFast, Beam, Archiveآرشیو، هرس‌شده (Pruned)
Besu(opens in a new tab)جاوالینوکس، ویندوز، مک‌اواسMainnet, Rinkeby, Ropsten, Görli, and moreسریع، کاملآرشیو، هرس‌شده (Pruned)
Erigon(opens in a new tab)Goلینوکس، ویندوز، مک‌اواسشبکه‌ی اصلی، Görli، Rinkeby، RopstenFullآرشیو، هرس‌شده (Pruned)
OpenEthereum (Deprecated)(opens in a new tab)Rustلینوکس، ویندوز، مک‌اواسشبکه‌ی اصلی، Kovan،‏ Ropsten و بیشترWarp، کاملآرشیو، هرس‌شده (Pruned)

دقت کنید که OpenEthereum‏منسوخ شده است(opens in a new tab) و دیگر نگهداری نمی‌شود. با احتیاط از آن استفاده کنید و ترجیحاً به پیاده‌سازی کلاینت دیگری بروید.

برای شبکه‌های پشتیبانی‌شده‌ی بیشتر شبکه‌های اتریوم را بخوانید.

مزایای پیاده‌سازی‌های مختلف

هر کلاینت دارای موارد استفاده و مزایای منحصر به فردی است، بنابراین شما باید یکی را بر اساس ترجیحات خود انتخاب کنید. تنوع اجازه می‌دهد تا پیاده‌سازی‌ها بر روی ویژگی‌های مختلف و مخاطبان کاربر متمرکز شوند. ممکن است بخواهید کلاینت را بر اساس ویژگی‌ها، پشتیبانی، زبان برنامه‌نویسی یا مجوزها انتخاب کنید.

Go Ethereum

Go Ethereum (به طور خلاصه geth) یکی از پیاده‌سازی‌های اصلی برای پروتکل اتریوم است. در حال حاضر، گسترده‌ترین کلاینت با بزرگترین پایگاه کاربران و ابزارهای متنوع برای کاربران و توسعه‌دهندگان است. به زبان Go نوشته‌شده، کاملاً متن باز است و مجوز آن تحت GNU LGPL v3 است.

OpenEthereum

OpenEthereum یک کلاینت اتریوم سریع، غنی و پیشرفته مبتنی بر CLI است. برای ارائه زیرساخت‌های ضروری برای خدمات سریع و قابل اعتماد ساخته شده است که نیاز به همگام سازی سریع و حداکثر زمان به‌کار دارد. هدف OpenEthereum این است که سریع‌ترین، سبک‌ترین و امن‌ترین کلاینت اتریوم باشد. یک پایگاه کد تمیز و ماژولار برای موارد زیر است:

  • سفارشی‌سازی آسان.
  • ادغام سبک در خدمات یا محصولات.
  • حداقل حافظه و رد پای حافظه

OpenEthereum با استفاده از زبان برنامه‌نویسی پیشرو Rust ساخته شده و مجوز آن تحت GPLv3 است.

دقت کنید که OpenEthereum‏منسوخ شده است(opens in a new tab) و دیگر نگهداری نمی‌شود. با احتیاط از آن استفاده کنید و ترجیحاً به پیاده‌سازی کلاینت دیگری بروید.

Nethermind

Nethermind یک پیاده‌سازی اتریوم است که با پشته‌ی فناوری سی‌شارپ دات‌نت ایجاد شده و بر روی تمام پلتفرم‌های اصلی از جمله ARM اجرا می‌شود. این پیاده‌سازی کارکردی عادی با موارد زیر ارائه می‌دهد:

  • یک ماشین مجازی بهینه
  • دسترسی به وضعیت
  • شبکه و ویژگی‌های غنی مانند داشبوردهای Prometheus/Grafana، پشتیبانی از گزارش سازمانی seq، ردیابی JSON RPC، و افزونه‌های تجزیه و تحلیل.

Nethermind همچنین اسناد با جزییات(opens in a new tab)، پشتیبانی توسعه‌ی قوی، یک جامعه‌ی آنلاین و پشتیبانی 24 ساعته در 7 روز هفته برای کاربران پرمیوم دارد.

Besu

هایپرلجر Besu یک کلاینت اتریوم در رده‌ی سازمانی برای شبکه‌های عمومی و مجوزدار است. این کلاینت تمام ویژگی‌های اصلی اتریوم، از ردیابی گرفته تا GraphQL را اجرا می‌کند، نظارت گسترده‌ای دارد و توسط ConsenSys پشتیبانی می‌شود، هم در کانال‌های جامعه باز و هم از طریق SLAهای تجاری برای شرکت‌ها. به زبان جاوا نوشته شده و دارای مجوز آپاچی 2.0 است.

Erigon

Erigon که قبلاً به عنوان Erigon شناخته می‌شد، یک فورک Go Ethereum است که هدفش سرعت و کارایی فضای دیسک است. Erigon یک پیاده‌سازی کاملاً بازسازی شده از Ethereum است که در حال حاضر به زبان Go نوشته شده است، اما پیاده‌سازی آن به زبان‌های دیگر برنامه‌ریزی شده است. هدف Erigon ارائه‌ی پیاده‌سازی سریع‌تر، ماژولارتر و بهینه‌تر اتریوم است. این کلاینت می‌تواند با بکارگیری کمتر از 2 ترابایت فضای دیسک، در کمتر از 3 روز، همگام‌سازی گره‌ی آرشیو کامل را انجام دهد

حالات همگام‌سازی

برای پیگیری و تأیید داده‌های جاری در شبکه، کلاینت اتریوم باید با آخرین حالت شبکه همگام شود. این کار با دانلود داده‌ها از همتایان، تأیید رمزنگاری یکپارچگی آن‌ها و ایجاد یک پایگاه داده‌ی محلی زنجیره‌ی بلوکی انجام می‌شود.

حالت‌های همگام‌سازی رویکردهای متفاوتی را برای این فرایند با بده‌بستان‌های مختلف نشان می‌دهند. کلاینت‌ها همچنین در پیاده‌سازی‌های الگوریتم‌های همگام‌سازی تفاوت دارند. برای جزئیات پیاده‌سازی، همیشه به مستندات رسمی کلاینت انتخابی خود مراجعه کنید.

نگاهی اجمالی بر راهبردها

نگاهی اجمالی بر رویکردهای همگام‌سازی استفاده‌شده در شبکه‌ی اصلی کلاینت‌های آماده:

همگام‌سازی کامل

همگام‌سازی کامل همه‌ی بلوک‌ها (از جمله هدرها، تراکنش‌ها و رسیدها) را بارگیری می‌کند و با اجرای هر بلوک از پیدایش، وضعیت زنجیره‌ی بلوکی را به صورت تدریجی ایجاد می‌کند.

  • اعتماد را به حداقل می‌رساند و با تأیید هر تراکنش، بالاترین امنیت را ارائه می‌دهد.
  • ٰبا افزایش تعداد تراکنش‌ها، پردازش همه تراکنش‌ها ممکن است روزها تا هفته‌ها طول بکشد.
همگام‌سازی سریع

همگام‌سازی سریع همه بلوک‌ها (از جمله هدرها، تراکنش‌ها و رسیدها) را دانلود می‌کند، همه هدرها را تأیید می‌کند، وضعیت را دانلود می‌کند و آن را در برابر هدرها تأیید می‌کند.

  • بر امنیت مکانیزم اجماع اتکا دارد.
  • همگام‌سازی تنها چند ساعت زمان می‌برد.
همگام‌سازی سبک

حالت کلاینت سبک همه‌ی هدرهای بلوک و داده‌های‌ بلوک را بارگیری می‌کند و برخی را به‌طور تصادفی تأیید می‌کند. فقط نوک زنجیره را از نقاط بررسی مطمئن همگام‌سازی می‌کند.

  • با تکیه بر اعتماد به توسعه‌دهندگان و مکانیزم اجماع، تنها آخرین وضعیت را دریافت می‌کند.
  • کلاینت ظرف چند دقیقه با وضعیت فعلی شبکه آماده استفاده است.

اطلاعات بیشتر درباره‌ی کلاینت‌های سبک(opens in a new tab)

همگام‌سازی فوری

توسط geth پیاده‌سازی شده است. با استفاده از عکس‌های فوری پویا که توسط همتایان ارائه می‌شوند، تمام داده‌های حساب و ذخیره‌سازی را بدون بارگیری گره‌های درخت میانی بازیابی می‌کند و سپس درخت مرکل را به صورت محلی بازسازی می‌کند.

  • سریع‌ترین راهبرد همگام‌سازی که توسط geth توسعه داده شده است و هم‌اکنون حالت پیش‌فرض آن است
  • صرفه‌جویی در مصرف حافظه و پهنای باند شبکه بدون به خطر انداختن امنیت.

اطلاعات بیشتر در مورد همگام‌سازی فوری(opens in a new tab)

همگام‌سازی Warp

توسط OpenEthereum پیاده‌سازی شده است. گره‌ها به‌طور منظم یک عکس فوری از وضعیت بحرانی اجماع تولید می‌کنند و هر همتایی می‌تواند این عکس‌های فوری را از طریق شبکه دریافت کند و همگام‌سازی سریع را از این نقطه ممکن سازد.

  • سریع‌ترین حالت و حالت پیش‌فرض‌ همگام‌سازی OpenEthereum متکی به عکس‌های فوری ایستا است که توسط همتایان ارائه می‌شود.
  • راهکاری مشابه همگام‌سازی فوری اما بدون مزایای امنیتی خاص.

اطلاعات بیشتر در مورد Warp(opens in a new tab)

همگام‌سازی Beam

توسط Nethermind و Trinity پیاده‌سازی شده است. مانند همگام‌سازی سریع عمل می‌کند، اما داده‌های مورد نیاز برای اجرای آخرین بلوک‌ها را نیز بارگیری می‌کند، که به شما امکان می‌دهد ظرف چند دقیقه جستجوی زنجیره را شروع کنید.

  • ابتدا وضعیت را همگام‌سازی می‌کند و شما را قادر می‌سازد ظرف چند دقیقه RPC را درخواست کنید.
  • هنوز در حال توسعه است و کاملاً قابل‌اعتماد نیست، همگام‌سازی پس‌زمینه کند شده است و پاسخ‌های RPC ممکن است شکست بخورند.

اطلاعات بیشتر درباره‌ی همگام‌سازی Beam(opens in a new tab)

برپا کردن در کلاینت‌ها

کلاینت‌ها با توجه به نیازهای شما گزینه‌های پیکربندی غنی‌ای را ارائه می‌دهند. بر اساس سطح امنیت، داده‌های موجود و هزینه، موردی را انتخاب کنید که برای شما مناسب است. به غیر از الگوریتم همگام‌سازی، می‌توانید هرس (pruning) انواع مختلف داده‌های قدیمی را نیز تنظیم کنید. هرس امکان حذف داده‌های قدیمی را فراهم می‌کند، به‌عنوان مثال حذف گره‌های درخت وضعیت که از بلوک‌های اخیر غیرقابل‌دسترسی هستند.

به مستندات یا صفحه‌ی راهنمای کلاینت توجه کنید تا بفهمید کدام حالت همگام‌سازی حالت پیش‌فرض است. شما می‌توانید زمانی که به‌طور کامل تنظیم شدید مدل همگام‌سازی ترجیحی را انتخاب کنید، مثل:

تنظیم همگام‌سازی سبک در geth(opens in a new tab) یا ERIGON(opens in a new tab)

geth --syncmode "light"

تنظیم همگام‌سازی کامل با آرشیو در Besu(opens in a new tab)

besu --sync-mode=FULL

مانند هر پیکربندی دیگر، می توان آن را با پرچم راه‌اندازی (startup flag) یا در فایل پیکربندی تعریف کرد. یک مثال دیگر Nethermind(opens in a new tab) است که از شما می‌خواهد پیکربندی را در اولین تنظیم اولیه انتخاب کنید و یک فایل پیکربندی ایجاد می‌کند.

کلاینت‌های اجماع («کلاینت‌های Eth2» سابق)

چندین کلاینت اجماع (که قبلاً به‌عنوان کلاینت‌های «Eth2» شناخته می‌شدند) وجود دارد که از ارتقاهای اجماع پشتیبانی می‌کنند. They are running the Beacon Chain and will provide proof-of-stake consensus mechanism to execution clients after The Merge.

کلاینتزبانسیستم‌عاملشبکه‌ها
Teku(opens in a new tab)جاوالینوکس، ویندوز، مک‌اواسزنجیره‌ی بیکن، Goerli
Nimbus(opens in a new tab)Nimلینوکس، ویندوز، مک‌اواسزنجیره‌ی بیکن، Goerli
Lighthouse(opens in a new tab)Rustلینوکس، ویندوز، مک‌اواسزنجیره‌ی بیکن، Goerli،‏ Pyrmont
Lodestar(opens in a new tab)TypeScriptلینوکس، ویندوز، مک‌اواسزنجیره‌ی بیکن، Goerli
Prysm(opens in a new tab)Goلینوکس، ویندوز، مک‌اواسزنجیره‌ی بیکن، Gnosis،‏ Goerli،‏ Pyrmont

سخت‌افزار

نیازهای سخت‌افزاری بر اساس کلاینت متفاوت است اما معمولاً آن‌قدر زیاد نیست چون گره فقط باید همگام بماند. این را با استخراج که نیاز به توان پردازشی زیادی دارد اشتباه نگیرید. با این حال، سخت‌افزار قدرتمندتر زمان همگام‌سازی و عملکرد را بهبود می‌بخشد. بسته به نیازها و خواسته‌های شما، اتریوم می‌تواند بر روی رایانه، سرور خانگی، رایانه‌های تک‌بُرد یا سرورهای خصوصی مجازی در فضای ابری اجرا شود.

یک راه ساده برای اجرای گره‌ی خودتان، استفاده از باکس‌های پلاگ اند پلی (plug and play) مثل DAppNode(opens in a new tab) است. این باکسْ سخت‌افزار لازم برای اجرای کلاینت‌ها و برنامه‌هایی که به آن‌ها وابسته است را با یک رابط کاربری ساده ارائه می‌دهد.

الزامات

پیش از نصب هر کلاینتی مطمئن شوید که رایانه‌ی شما منابع لازم را برای اجرای آن دارد. الزامات کمینه و پیشنهادی را می‌توانید در زیر ببینید، هر چند که بخش کلیدی آن فضای حافظه است. همگام‌سازی زنجیره‌ی بلوکی اتریوم بسیار به ورودی و خروجی حساس است. بهتر است که حتما درایو حالت جامد (SSD) داشته باشید. برای اجرای کلاینت اتریوم بر روی هارددیسک (HDD) شما نیاز به حداقل 8 گیگابایت رم دارید که به عنوان حافظه‌ی نهان استفاده کنید.

  • پردازنده‌ با حداقل دو هسته
  • حداقل 4 گیگابایت رم با یک درایو ذخیره‌سازی جامد (SSD)، ‎+8‏ گیگابایت اگر هارددیسک دارید
  • پهنای باند 8 مگابیت بر ثانیه
  • پردازنده‌ی سریع با حداقل چهار هسته
  • حداقل 16 گیگابایت رم
  • درایو ذخیره‌سازی جامد (SSD) سریع با حداقل 500 گیگابایت فضای خالی
  • پهنای باند بیش از 25 مگابیت بر ثانیه

حالت همگام‌سازی که انتخاب می‌کنید بر فضای مورد نیاز تأثیر می‌گذارد، اما ما فضای دیسک مورد نیاز برای هر کلاینت را در زیر تخمین زده‌ایم.

کلاینتفضای حافظه (همگام‌سازی سریع)فضای حافظه (آرشیو کامل)
Gethبیش از 400 گیگابایتبیش از 6 ترابایت
OpenEthereumبیش از 280 گیگابایتبیش از 6 ترابایت
Nethermindبیش از 200 گیگابایتبیش از 5 ترابایت
Besuبیش از 750 گیگابایتبیش از 5 ترابایت
Erigonاطلاق‌ناپذیربیش از 1 ترابایت
  • توجه: Erigon همگام‌سازی سریع را انجام نمی‌دهد، اما هرس کامل امکان‌پذیر است (تقریبا 500 گیگابایت)

این نمودارها نشان می‌دهند الزامات حافظه چطور همواره در حال تغییر هستند. برای به‌روزترین داده‌ها برای geth و OpenEthereum داده‌های همگام‌سازی کامل(opens in a new tab) و داده‌های همگام‌سازی آرشیو(opens in a new tab) را مشاهده کنید.

اتریوم روی رایانه‌ی تک‌برد

راحت‌ترین و ارزان‌ترین راه برای اجرای گره‌ی اتریوم استفاده از یک رایانه‌ی تک‌بردی با معماری ARM مانند Raspberry Pi است. اتریوم روی ARM(opens in a new tab) تصاویری از کلاینت‌های geth،‏ OpenEthereum،‏ Nethermind و Besu ارائه می‌دهد. این یک آموزش ساده برای چگونه یک کلاینت ARM را بسازیم و بر پا کنیم است.

دستگاه‌های کوچک، مقرون به صرفه و کارآمد مانند این‌ها برای اجرای یک گره در خانه ایده آل هستند.

بیشتر بخوانید

اطلاعات بسیاری درباره‌ی کلاینت‌های اتریوم بر روی اینترنت وجود دارد. این‌ها چند منبع هستند که می‌توانند مفید باشند.

آیا این مقاله مفید بود؟