Phala Phat (fat) contract

Руководство для разработчиков

2.1 Введение

Phat Contract— это модель программирования, принятая Phala Network. Phat Contract НЕ является смарт-контрактом. Детально описание отведущего исследователя Phala Networkздесь

Вместо этого он направлен на предоставление богатых функций, которые не могут предложить обычные смарт-контракты, в том числе:

  • Обширные вычисления ЦП: эксклюзивное автономное выполнение на полной скорости ЦП;

  • Доступ к сети: возможность отправлять HTTP-запросы;

  • Низкая задержка: нечувствительный к консенсусу операции могут вообще не затрагивать блокчейн, что устраняет задержку блока;

  • Сильная согласованность: операции, чувствительные к консенсусу, остаются глобально согласованными;

  • Конфиденциальность: состояние контракта по умолчанию скрыто, если вы специально не выставите его через вызов чтения.

**Контракт Phat на 100% совместим с палетом Substrate- контракты.**Он полностью поддерживает немодифицированные ink! смарт-контракты. Поэтому вы по-прежнему можете использовать свою любимый тулчейн (toolchain) инструментов, в том числе cargo-contract, @polkadot/contract-api и расширение Polkadot.js.

Что нового?

По сравнению с предыдущей версией, последний контракт Phat также развивается в следующих аспектах:

  • Поддержка функции HTTP-запроса в ink! контракта. Ранее мы показали, что можем использовать немодифицированные ink! контракты в Secure Workers Phala. В то время как, чтобы использовать killer функцию HTTP-запроса, разработчик должен форкнуть кодовую базу phala-blockchain для написания собственного контракта. В новой версии мы поддерживаем функцию HTTP-запроса в ink! контракте и ink! контрактextension. Он обеспечивает HTTP-запрос и другие функции, связанные с криптографией, для ink! контракта;

  • Раньше нашим разработчикам приходилось запускать локальную тестовую сеть для разработки контрактов, что занимало много времени. Теперь мы включилитестовую сеть Phala (PoC 5), поэтому разработка контракта может быть простой;

  • Используйте Phat Contract для запуска немодифицированных программ x86. Мы представилидемонстрациюиспользования Phat Contract для запуска немодифицированного движка рендеринга Blender с помощью проектаGramin. Это означает, что публичный децентрализованный сервис рендеринга уже в пути. Это также доказывает потенциал Phat Contract для запуска сложных реальных программ.

2.2 Учебное пособие Phat Contract

2.3 Ink! Документация

С точки зрения программиста, вы можете рассматривать Phat Contract как комбинацию базовыхInk Parity!иInk Phalaл! Расширение (extension).

Рекомендуем ознакомиться с официальнойInk! документациейдля изучения основ разработки контрактов.

Примеры Phat Contract

Мы храним списокпримеров контрактовдля каждой дополнительной функции Phat Contract по сравнению с оригинальными Ink! контрактами.

Управление загрузкой/Ошибка создания экземпляра

Загрузка кода может завершиться ошибкой, если в скомпилированном WASM есть недопустимые инструкции. Phala использует Contract_pallet Substrate для выполнения контракта. Здесьмеханизм проверки кодана наличие возможных незаконных инструкций. Сообщите об этом на канале #dev нашегоDiscord, и мы поможем вам найти точную причину.

Создание экземпляра контракта также может завершиться сбоем из-за ошибок времени выполнения. На данный момент журнал выполнения контракта недоступен разработчикам напрямую. Присоединяйтесь к нашемуDiscord, и мы можем помочь переслать журналы Worker, если это необходимо.

2.4 Демонстрация вариантов

Phat Contract

Хакатон

С первоисточником статьи можно ознакомиться здесь

💎 —Discord PhalaNetwork|Телеграм|Telegram en

✅ — |Website|Twitter|Github|Forum|

🤖 —Discord Phala Word

0
3tMUc3…q23WgPPost author

Информация о проктах дотсамы

0 comments

Информация о проктах дотсамы