Kinh nghiệm
6 phút đọc4 tháng 6, 20262

Decentralized Internet SDK: Khi anh em muốn build web không cần server trung tâm

Khám phá Lonero's Decentralized Internet SDK - bộ công cụ giúp bạn build P2P network, blockchain infrastructure và distributed computing mà không phụ thuộc vào hạ tầng tập trung.

N

Nguyễn Nhật Long

@nguyennhatlong1303

Decentralized Internet SDK: Khi anh em muốn build web không cần server trung tâm

Mình đã dành khá nhiều thời gian tìm hiểu về decentralized web trong năm nay, và một trong những thứ mình tình cờ đào được là repo Decentralized-Internet của Lonero Team. Cái tên nghe có vẻ to tát, nhưng thực ra đây là một SDK/library khá thực dụng dành cho những ai muốn build các ứng dụng theo hướng P2P, distributed computing, hoặc blockchain - mà không muốn phụ thuộc hoàn toàn vào các infrastructure tập trung như AWS hay Google Cloud.

Vậy nó giải quyết vấn đề gì? Hãy thử nghĩ xem - hiện tại toàn bộ internet của chúng ta đang chạy trên một mô hình mà mọi request đều phải đi qua server trung tâm, telecom tower, routing system... Đây là kiến trúc đã tồn tại mấy chục năm và về cơ bản chưa thay đổi nhiều. Lonero Team nhận ra điều này và cố gắng tạo ra một pipeline cho P2P data transfer và syndication protocol - nghe thì phức tạp nhưng mình sẽ breakdown ra ngay dưới đây.

SDK này thực ra gom những gì lại?

Đây là điểm mình thấy thú vị nhất khi đọc source. Thay vì build từ đầu hoàn toàn, Lonero Team đã package lại một số thư viện battle-tested trong ecosystem thành một bộ SDK thống nhất, phân phối qua NPM. Cụ thể các core library bên trong bao gồm:

Theo kinh nghiệm của mình, việc gom các thứ này lại thành một package duy nhất có hai mặt. Một mặt, onboarding nhanh hơn nhiều vì bạn không cần tự đi tìm và wire từng lib lại với nhau. Mặt khác, bundle size sẽ khá nặng nếu bạn chỉ cần dùng một phần nhỏ của SDK.

LibraryChức năng chính
`lotion`Build blockchain apps với Tendermint consensus
`bitcoin-peg`Tích hợp Bitcoin sidechain
`clusterpost`Distributed job execution và cluster management
`gridbee-framework`Grid computing framework
`Reinvent-the-Internet`P2P networking utilities

Cài đặt và DX thực tế

Về mặt setup, khá straightforward:

Terminal
1npm install decentralized-internet

Hoặc nếu dùng yarn:

Terminal
1yarn add decentralized-internet

Ngoài NPM, repo này còn support khá nhiều platform khác nhau - đây là điểm mình thấy ấn tượng vì ít SDK nào làm được điều này:

Cái multi-platform support này thực sự là điểm cộng lớn. Anh em làm mobile với Flutter, hay backend với Rust đều có thể integrate được mà không cần chuyển sang Node.js.

PlatformSupport
NPM (Node.js)✅ Chính thức
Julia✅ Có `.julia-configs`
Meteor✅ Có `.meteor-configs`
Rust (Cargo)✅ Có `Cargo.toml`
Flutter/Dart✅ Có `pubspec.yaml`
Apache Cordova✅ Có `plugin.xml`
Snap (Linux)✅ Có `snapcraft.yaml`

Tuy nhiên, mình phải thành thật mà nói: developer experience của repo này còn khá thô. Documentation chưa đủ depth, một số phần README chỉ liệt kê feature mà thiếu code example cụ thể. Nếu bạn là người mới tiếp cận decentralized web, sẽ cần bỏ thêm công research từng sub-library riêng lẻ.

Những thứ bạn thực sự có thể build được

Mình đã đọc kỹ codebase và thử trace qua một số flow. Về thực chất, SDK này cho phép bạn làm được 4 việc chính:

1. Offline-first network: Build ứng dụng có thể hoạt động mà không cần kết nối internet liên tục - dữ liệu sync theo kiểu P2P khi có kết nối. Cái này cực kỳ hữu ích cho các app ở vùng internet không ổn định.

2. Tự setup blockchain infrastructure: Không cần deploy lên Ethereum hay BSC, bạn có thể spin up blockchain riêng của mình với Tendermint consensus thông qua lotion. Phù hợp cho private blockchain hoặc consortium chain trong enterprise.

3. Parallel processing microservices: Thông qua clusterpost, bạn có thể distribute workload ra nhiều node. Mình thấy cái này khá hay cho các tác vụ heavy computation như video processing hay data analysis mà không muốn trả tiền cho cloud computing.

4. Cryptocurrency sidechain: Tích hợp bitcoin-peg để tạo sidechain kết nối với Bitcoin network, hoặc dùng Tendermint để implement consensus mechanism riêng.

Nhìn vào codebase thực tế

Repo có đến 15,965 commits - con số này cho thấy đây không phải một project bỏ dở sau vài tháng. Tuy nhiên, khi mình nhìn vào cấu trúc folder, có một số điểm đáng lưu ý:

TEXT
1├── LNRChain/ # Blockchain implementation
2├── Reinvent-the-Internet/ # P2P networking
3├── clusterpost/ # Cluster management
4├── decentg/ # Decentralized gateway
5├── gridbee-framework-old/ # Grid computing (lưu ý: "old"!)
6├── _APIS/ # API definitions
7├── ui-dashboard/ # Dashboard UI
8└── packages/ # Sub-packages

Cái folder gridbee-framework-old với suffix -old là điều mình hơi lo ngại. Nó gợi ý rằng một số phần của codebase có thể đang trong trạng thái transition hoặc chưa được refactor hoàn chỉnh. Anh em lưu ý điều này trước khi dùng vào production.

Ngoài ra, repo cũng tích hợp sẵn khá nhiều tooling hiện đại:

  • Pulumi cho infrastructure-as-code (Pulumi.yaml)
  • Azure deploy (azuredeploy.json) - có thể deploy lên Azure ngay
  • Gitpod cho cloud dev environment (.gitpod.yml)
  • Snyk cho security scanning (.snyk)
  • Renovate cho dependency updates tự động

Mình thấy cái DevOps setup này khá solid cho một open-source project. Không phải repo nào cũng có đủ tooling như này.

Ai nên dùng, ai không nên?

Theo kinh nghiệm của mình, SDK này phù hợp nhất cho các side project, hackathon, hoặc PoC khi bạn muốn experiment với decentralized architecture mà không cần tự build từ đầu. Nếu bạn đang làm production system cho enterprise, mình sẽ recommend evaluate thêm các alternative như libp2p hay IPFS trực tiếp - vì documentation và community support ở đó mature hơn nhiều.

Trường hợpPhù hợp không?
Nghiên cứu/học về decentralized tech✅ Rất phù hợp
Build prototype P2P app✅ Phù hợp
Enterprise blockchain PoC✅ Có thể thử
Production app cần high reliability⚠️ Cần evaluate kỹ hơn
Team không có background về distributed systems❌ Sẽ khó
App cần performance tối ưu ngay từ đầu❌ Chưa phải lúc

So sánh với các alternative

Rõ ràng Decentralized Internet SDK thắng ở điểm all-in-one và multi-platform, nhưng thua ở community và production-readiness. Đây là trade-off bạn cần cân nhắc.

Decentralized Internet SDKlibp2pIPFSHyperledger Fabric
Ease of setup⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐
Documentation⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐
Community⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐
Multi-platform⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐
All-in-one⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐
Production-ready⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐

Điểm mình thực sự thích

Cái mình thấy hay nhất ở project này là tư duy tổng hợp. Thay vì cố gắng reinvent the wheel, Lonero Team đã chọn những library tốt nhất trong từng domain (Tendermint cho consensus, clusterpost cho distributed jobs...) và package chúng lại theo một cách có ý nghĩa. Kèm theo đó là academic papers - repo có cả paper.mdpaper.bib với Lonero Whitepaper và CrowdCoin Scientific Whitepaper, cho thấy đây không phải project làm chơi.

Với 521 stars và 187 forks, community không quá lớn nhưng cũng đủ để biết đây là project được quan tâm thực sự. Và 3 open issues với 16 pull requests đang pending cho thấy project vẫn đang active - không phải dạng abandoned repo.

Nếu bạn đang muốn dip toes vào thế giới decentralized web mà không biết bắt đầu từ đâu, đây là một starting point khá decent. Clone về, chạy thử, đọc source của từng sub-library - bạn sẽ học được khá nhiều về cách một P2P system được architect. Còn nếu bạn đã có kinh nghiệm và cần một production-grade solution, hãy dùng cái này như một reference implementation rồi tự build trên nền các library gốc.

NN

Nguyễn Nhật Long

@nguyennhatlong1303

Nguyễn Nhật Long is a Senior Frontend Engineer and Frontend Team Leader with 7 years of experience building real-time fintech platforms. Specializing in React, Next.js, TypeScript, and React Native, shipping 10+ products across Web, Mobile, Telegram Mini-Apps, and Web3.

Thấy hay? Chia sẻ cho bạn bè!