• Последние
  • Feed подписок
  • Категории
  • Метки
  • Популярные
  • Пользователи
  • Группы
  • Telegram chat
    • TON WIKI
    • TON Archive
    • TONpie Chats
    • ANP system
    • indicaton.io
Theme Center
  • Theme Center
  • default

  • reset theme
Collapse

tonpie.io

Подпишись на канал фаундера и разработчика экосистемы tonpie

[Решено] В TON, как мы можем обрабатывать большие объемы данных в сообщениях? Каковы некоторые методы эффективного хранения и передачи больших объемов данных с помощью сообщений?

Запланировано Прикреплена Закрыта Перенесена TON Overflow на русском
a-funca-messagesa-transactions
2 Сообщения 1 Posters 87 Просмотры
    • Сначала старые
    • Сначала новые
    • По количеству голосов
Ответить
  • Ответить, создав новую тему
Авторизуйтесь, чтобы ответить
Эта тема была удалена. Только пользователи с правом управления темами могут её видеть.
  • AnswersA Не в сети
    AnswersA Не в сети
    Answers
    написал в отредактировано Answers
    #1

    В TON сообщения используются для отправки данных и инструкций в смарт-контракты. Иногда эти сообщения могут содержать большие объемы данных, таких как медиафайлы, которые может быть трудно сохранить в одном сообщении.

    Итак, вопрос заключается в том, как TON справляется с хранением и обработкой больших объемов данных в сообщениях и какие стратегии можно использовать для решения этой проблемы.


    Оригинал вопроса

    1 ответ Последний ответ
    0
  • AnswersA Не в сети
    AnswersA Не в сети
    Answers
    написал в отредактировано
    #2

    Решено

    Прежде чем мы начнем, вам нужно знать, что само сообщение отправляется с типом данных "Ячейка" в TON. Это означает, что каждая ячейка имеет ограничение в "1023 бита` для хранения данных. Это ограничение включает данные, хранящиеся в ячейке, и любые необходимые заголовки или метаданные.

    Предположим, у вас есть текст сообщения длиной 900 бит, и вы хотите сохранить его в ячейке вместе с заголовком сообщения. Сам заголовок сообщения также будет занимать несколько битов для хранения его полей, таких как тип сообщения, информация об адресе и другие метаданные. При попытке сохранить как заголовок сообщения, так и 900-битный текст сообщения в одной ячейке общее количество требуемых битов превысит 1023-битный предел для одной ячейки.

    В результате во время сериализации возникнет исключение переполнения ячейки, поскольку ячейка не может вместить более 1023 бит данных.

    Чтобы справиться с этой ситуацией, вам необходимо сохранить тело сообщения в отдельной ячейке, называемой ссылочной ячейкой. В заголовке сообщения вы бы использовали флаг, чтобы указать, что тело сообщения хранится в ссылочной ячейке. В этом случае "флаг тела сообщения inplace" (который может иметь значение 0 или 1) должен быть установлен в значение 1, указывающее, что тело сообщения хранится не в той же ячейке, что и заголовок, а в ссылочной ячейке.

    Сохраняя тело сообщения в ссылочной ячейке, вы можете избежать исключения переполнения ячейки и по-прежнему сохранять все сообщение (заголовок и тело) в рамках ограничений структуры ячеек блокчейна TON.

    1 ответ Последний ответ
    0

  • Войти

  • Нет учётной записи? Зарегистрироваться

  • Login or register to search.
  • Первое сообщение
    Последнее сообщение
0
  • Последние
  • Feed подписок
  • Категории
  • Метки
  • Популярные
  • Пользователи
  • Группы
  • Telegram chat
    • TON WIKI
    • TON Archive
    • TONpie Chats
    • ANP system
    • indicaton.io
  • Войти

  • Нет учётной записи? Зарегистрироваться

  • Login or register to search.