TGViewer
Джун на фронте | IT Dev Log Джун на фронте | IT Dev Log @divatoz · 7.43K subscribers
Post #1313 4.32K
Рабочий дневник: День 118
Храним данные без БД и сервера

Слово «без сервера» звучит громко, но суть в другом. Мы продолжаем придерживаться распределённой парадигмы Web3-технологий, где каждый владеет своими данными.

👥 Крч, мы решили прикреплять картинки к постам. Но где их хранить, если базы данных нет, а блокчейн — слишком дорогое решение?

На помощь приходит подход NFT. Он не хранит изображения в блокчейне напрямую, а использует IPFS-ноды — распределённую сеть, где доступ к файлам осуществляется по уникальному хэшу, который храним в блокчейне.

📊 Например, я загрузил аватарку канала в IPFS с помощью NPM пакета helia, через провайдера Pinata. В ответ получил уникальную ссылку на изображение вида:

bafkreiepl2ilkkah77ehi74pzj3v4zojjyf6uhequ7mrv7bfwclzrpevum

Этот CID (Content Identifier) создаётся с помощью алгоритма хэширования SHA-256. Хэш зависит только от содержимого файла, а не от того, кто и где его загрузил.

Интересный момент: если загрузить тот же файл снова, IPFS не создаст дубликат. Система просто вернёт уже существующий хэш.

🌐 Для доступа к файлам используются HTTPS-шлюзы. Вот несколько популярных вариантов:

— https://ipfs.io/ipfs/{HASH}
— https://ipfs.fleek.co/ipfs/{HASH}
— https://gateway.pinata.cloud/ipfs/{HASH}
— https://dweb.link/ipfs/{HASH}

Важный нюанс!

Блокчейн может хранить данные вечно, так как его отключение экономически невыгодно. Но файлы в IPFS доступны только до тех пор, пока активна нода, на которую они были "запинены".

Пиннинг (Pinning) — это процесс закрепления данных на IPFS-ноде. Он гарантирует, что файлы останутся доступными и не будут удалены.

Как запинить файлы?

1. Pinata.cloud предоставляет бесплатно 1 ГБ для хранения файлов на своих нодах.

2. Можно поднять свою ноду IPFS на сервере.

3. Другие пользователи могут запинить ваши файлы на свои серверы или использовать другие провайдеры.

Этакий распределённый бэкап данных. Таким образом, IPFS позволяет хранить изображения надёжно, распределённо и без необходимости содержать централизованную базу данных.

📊 #статистика День 1118 == 2354 час в IT
  • 👍 8
  • 🔥 7
More from @divatoz
  1. Sep 30, 2026Рабочий дневник: День 568 Как я mcdis.ru верстал 🚬 Сегодня расскажу про процессы, а не пр…
  2. Sep 29, 2026ну в целом, пока что удивительно блеклая презентация. клон Muse/Grok-bot, подписка за $500…
  3. Sep 26, 2026ИИ официально стоит дороже чем марихуана и фентанил, а через два года станет дороже кокаин…
  4. Sep 25, 2026Как я этот пост на год подписки обменял С поста про расшифровку созвонов ко мне пришёл мар…
  5. Sep 18, 2026Как Я/Мы platform-explorer.com релизим 😎 Версия релиза 2.4.0 была хороша, но впереди была…
  6. Sep 16, 2026Помните, мы писали про то, что компании платят авторам контента за рассказы об опасностях…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →