Làm cách nào để tạo một ứng dụng phi tập trung có quy mô? Sử dụng ít blockchain hơn

Không, việc tung ra một ứng dụng phi tập trung (dapp) trên blockchain sẽ không dẫn đến hoạt động kinh doanh thành công. Trên thực tế, hầu hết người dùng thậm chí không nghĩ đến việc ứng dụng có chạy trên blockchain hay không - họ chỉ cần chọn một sản phẩm rẻ hơn, nhanh hơn và đơn giản hơn.

Thật không may, ngay cả khi blockchain có các tính năng và lợi ích độc đáo riêng, hầu hết các ứng dụng chạy trên nó đều đắt hơn, chậm hơn và kém trực quan hơn nhiều so với các đối thủ cạnh tranh tập trung của chúng.

Làm cách nào để tạo một ứng dụng phi tập trung có quy mô? Sử dụng ít blockchain hơn

Khá thường xuyên trong các sách trắng của các ứng dụng được xây dựng trên blockchain, bạn có thể tìm thấy một đoạn có nội dung: "Blockchain đắt tiền và không thể hỗ trợ số lượng giao dịch cần thiết mỗi giây. May mắn thay, nhiều người thông minh đang nỗ lực mở rộng quy mô blockchain và vào thời điểm ứng dụng của chúng tôi khởi chạy, nó sẽ có khả năng mở rộng khá cao.”

Trong một đoạn văn đơn giản, nhà phát triển dapp có thể bỏ qua cuộc thảo luận sâu hơn về các vấn đề về khả năng mở rộng và các giải pháp thay thế cho các vấn đề. Điều này thường dẫn đến một kiến ​​trúc kém hiệu quả trong đó các hợp đồng thông minh chạy trên blockchain đóng vai trò là phần phụ trợ và cốt lõi của ứng dụng.

Tuy nhiên, vẫn có những cách tiếp cận chưa được thử nghiệm đối với kiến ​​trúc ứng dụng phi tập trung cho phép khả năng mở rộng tốt hơn nhiều bằng cách giảm sự phụ thuộc vào blockchain. Ví dụ: Blockstack đang làm việc trên một kiến ​​trúc trong đó hầu hết dữ liệu và logic ứng dụng được lưu trữ ngoài chuỗi.

Trước tiên, hãy xem xét một cách tiếp cận truyền thống hơn, sử dụng blockchain làm trung gian trực tiếp giữa những người dùng ứng dụng và không có quy mô đặc biệt tốt.

Cách tiếp cận số 1: Blockchain đóng vai trò phụ trợ

Để làm cho mọi việc rõ ràng hơn, hãy lấy ngành khách sạn làm ví dụ. Đây là một ngành công nghiệp khổng lồ trong đó các bên trung gian như Booking.com, họ tính một khoản phí rất lớn để kết nối khách và khách sạn.

Trong mọi tình huống mà chúng tôi muốn đánh bại một trung gian như vậy bằng cách sử dụng phương pháp này, chúng tôi sẽ cố gắng tái tạo logic kinh doanh của nó bằng cách sử dụng các hợp đồng thông minh trên một chuỗi khối như Ethereum.

Hợp đồng thông minh nguồn mở chạy trên "máy tính thế giới" có thể kết nối người bán với người tiêu dùng mà không cần bên thứ ba ở giữa, cuối cùng là giảm phí và hoa hồng do bên trung gian tính.

Như được hiển thị trong hình ảnh bên dưới, các khách sạn sử dụng một ứng dụng phi tập trung để đăng lên blockchain thông tin về phòng, tình trạng phòng trống và giá cả vào các ngày trong tuần hoặc cuối tuần và thậm chí có thể là mô tả về phòng với tất cả thông tin liên quan khác.

Làm cách nào để tạo một ứng dụng phi tập trung có quy mô? Sử dụng ít blockchain hơn

Bất kỳ ai muốn đặt phòng đều sử dụng ứng dụng này để tìm kiếm khách sạn và phòng được lưu trữ trên blockchain. Sau khi người dùng chọn phòng, việc đặt phòng sẽ được thực hiện bằng cách gửi số lượng token cần thiết đến khách sạn dưới dạng tiền đặt cọc. Và để đáp lại, hợp đồng thông minh sẽ cập nhật thông tin trong blockchain rằng số đó không còn nữa.

Có hai mặt của vấn đề về khả năng mở rộng với cách tiếp cận này. Đầu tiên, số lượng giao dịch tối đa mỗi giây. Thứ hai, lượng dữ liệu có thể được lưu trữ trên blockchain.

Hãy thực hiện một số tính toán sơ bộ. Booking.com cho biết họ có gần 2 triệu khách sạn đăng ký với họ. Giả sử một khách sạn trung bình có 10 phòng và mỗi phòng chỉ được đặt 20 lần một năm - điều đó mang lại cho chúng ta trung bình 13 lượt đặt phòng mỗi giây.

Để so sánh con số này, điều đáng chú ý là Ethereum có thể xử lý khoảng 15 giao dịch mỗi giây.

Đồng thời, điều đáng lưu ý là ứng dụng của chúng tôi cũng sẽ chứa các giao dịch từ các khách sạn - để tải xuống và cập nhật liên tục thông tin về phòng của họ. Các khách sạn cập nhật giá phòng rất thường xuyên, thậm chí đôi khi hàng ngày và mỗi lần thay đổi giá hoặc mô tả đều yêu cầu một giao dịch trên blockchain.

Ở đây cũng có vấn đề về kích thước - trọng lượng của chuỗi khối Ethereum gần đây đã vượt mốc 2TB. Nếu các ứng dụng theo cách tiếp cận này trở nên thực sự phổ biến, mạng Ethereum sẽ trở nên cực kỳ không ổn định.

Một hệ thống dựa trên blockchain như vậy có thể loại trừ những người bên ngoài do tính công bằng và thiếu tập trung của nó, những ưu điểm chính của công nghệ blockchain. Nhưng blockchain cũng có các tính năng khác - nó được phân phối và không được viết lại, đây là những đặc điểm tuyệt vời, nhưng bạn phải trả tiền cho chúng bằng tốc độ và hoa hồng giao dịch.

Do đó, các nhà phát triển dapp phải đánh giá cẩn thận xem mỗi tính năng sử dụng blockchain có thực sự cần phân phối và không thể ghi hay không.

Ví dụ: lợi ích của việc phân phối dữ liệu của từng khách sạn trên hàng trăm máy trên khắp thế giới và lưu trữ vĩnh viễn ở đó là gì? Điều thực sự quan trọng là dữ liệu lịch sử về giá phòng và tình trạng phòng trống luôn được đưa vào blockchain phải không? Chắc là không.

Nếu chúng ta bắt đầu đặt những câu hỏi như thế này, chúng ta sẽ bắt đầu thấy rằng chúng ta không nhất thiết cần tất cả các tính năng đắt tiền của blockchain cho tất cả các chức năng của mình. Vậy giải pháp thay thế là gì?

Cách tiếp cận số 2: Kiến trúc lấy cảm hứng từ Blockstack

Mặc dù điểm nhấn chính Blockstack trên các ứng dụng trong đó người dùng là chủ sở hữu dữ liệu của họ (ví dụ: chẳng hạn như văn bản không khí, BentenÂm thanh, Trình tối ưu hóa hình ảnh hoặc than chì), blockstack cũng có triết lý sử dụng blockchain một cách nhẹ nhàng—chỉ khi thực sự cần thiết. Lập luận chính của họ là blockchain chậm và đắt tiền, do đó chỉ nên sử dụng cho các giao dịch đơn lẻ hoặc không thường xuyên. Phần còn lại của tương tác với các ứng dụng sẽ diễn ra thông qua ngang hàng, tức là. Người dùng các ứng dụng phi tập trung phải chia sẻ dữ liệu trực tiếp với nhau thay vì thông qua chuỗi khối. Xét cho cùng, các ứng dụng phi tập trung lâu đời nhất và thành công nhất như BitTorrent, email và Tor đã được tạo ra trước cả khái niệm về blockchain.

Làm cách nào để tạo một ứng dụng phi tập trung có quy mô? Sử dụng ít blockchain hơn
Bên trái: Cách tiếp cận đầu tiên, trong đó người dùng tương tác thông qua blockchain. Đúng: Người dùng tương tác trực tiếp với nhau và chuỗi khối chỉ được sử dụng để nhận dạng và những thứ tương tự.

Hãy quay lại ví dụ đặt phòng khách sạn. Chúng tôi muốn có một giao thức công bằng, độc lập và cởi mở để kết nối khách hàng với khách sạn. Nói cách khác, chúng tôi muốn loại bỏ người trung gian tập trung. Ví dụ, chúng tôi không cần phải liên tục lưu trữ giá phòng trong một sổ cái phân phối chung.

Tại sao chúng ta không cho phép khách và khách sạn tương tác trực tiếp thay vì thông qua blockchain. Các khách sạn có thể lưu trữ giá, tình trạng phòng trống và bất kỳ thông tin nào khác ở nơi mà mọi người đều có thể truy cập được - ví dụ: IPFS, Amazon S3 hoặc thậm chí là máy chủ địa phương của riêng họ. Đây chính xác là tên mà hệ thống lưu trữ phi tập trung của Blockstack gọi Gaia. Nó cho phép người dùng chọn nơi họ muốn lưu trữ dữ liệu của mình và kiểm soát ai có thể truy cập dữ liệu đó thông qua phương pháp được gọi là lưu trữ nhiều người dùng.

Để thiết lập lòng tin, tất cả dữ liệu của khách sạn đều được chính khách sạn ký bằng mật mã. Bất kể dữ liệu này được lưu trữ ở đâu, tính toàn vẹn của nó có thể được xác minh bằng cách sử dụng khóa chung được liên kết với danh tính của khách sạn được lưu trữ trên blockchain.

Trong trường hợp Blockstack, chỉ thông tin nhận dạng của bạn được lưu trữ trên blockchain. Thông tin về cách lấy dữ liệu của mỗi người dùng được lưu trữ trong các tệp vùng và được phân phối qua mạng ngang hàng bằng cách sử dụng các nút. Và một lần nữa, bạn không cần phải tin tưởng vào dữ liệu mà các nút cung cấp, bởi vì bạn có thể xác minh tính xác thực của nó bằng cách so sánh nó với các giá trị băm được lưu trữ trong chuỗi khối và những người dùng khác.

Trong phiên bản đơn giản hóa của hệ thống, khách sẽ sử dụng mạng ngang hàng Blockstack để tìm kiếm khách sạn và lấy thông tin về phòng của họ. Và tính xác thực và tính toàn vẹn của tất cả dữ liệu bạn nhận được có thể được xác minh bằng cách sử dụng khóa công khai và hàm băm được lưu trữ trong mạch điện ảo Blockstack.

Kiến trúc này phức tạp hơn cách tiếp cận đầu tiên và đòi hỏi cơ sở hạ tầng toàn diện hơn. Trên thực tế, đây chính xác là nơi Blockstack xuất hiện, cung cấp tất cả các thành phần cần thiết để tạo ra một hệ thống phi tập trung như vậy.

Làm cách nào để tạo một ứng dụng phi tập trung có quy mô? Sử dụng ít blockchain hơn

Với kiến ​​trúc này, chúng tôi chỉ lưu trữ dữ liệu thực sự cần được phân phối và không bị ghi đè trên blockchain. Trong trường hợp của Blockstack, bạn chỉ cần các giao dịch trên blockchain để đăng ký và cho biết nơi dữ liệu của bạn sẽ được lưu trữ. Bạn có thể cần thực hiện nhiều giao dịch hơn nếu muốn thay đổi bất kỳ thông tin nào trong số này, nhưng đây không phải là sự kiện lặp lại.

Hơn nữa, logic ứng dụng, trái ngược với cách tiếp cận đầu tiên, chạy ở phía khách hàng chứ không chạy trên hợp đồng thông minh. Điều này cho phép nhà phát triển thay đổi logic này mà không cần cập nhật hợp đồng thông minh tốn kém hoặc đôi khi thậm chí là không thể. Và bằng cách giữ dữ liệu ứng dụng và logic ngoài chuỗi, các ứng dụng phi tập trung có thể đạt được mức hiệu suất và khả năng mở rộng của các hệ thống tập trung truyền thống.

Kết luận

Các ứng dụng chạy trên Blockstack có thể mở rộng quy mô tốt hơn nhiều so với các ứng dụng blockchain thông thường, nhưng đó là một cách tiếp cận trẻ hơn với những vấn đề riêng và những câu hỏi chưa được giải đáp.

Ví dụ: nếu một ứng dụng phi tập trung không chạy trên hợp đồng thông minh thì điều này sẽ làm giảm nhu cầu về mã thông báo tiện ích. Điều này có thể gây ra vấn đề cho các doanh nghiệp vì ICO là nguồn tài trợ chính cho các ứng dụng phi tập trung (bao gồm cả chính Blockstack)

Ngoài ra còn có vấn đề kỹ thuật ở đây. Ví dụ: việc triển khai chức năng đặt phòng khách sạn trong hợp đồng thông minh là tương đối dễ dàng, trong đó trong hoạt động nguyên tử, việc đặt phòng được thực hiện để đổi lấy token. Và không rõ ràng việc đặt chỗ sẽ hoạt động như thế nào trong ứng dụng Blockstack nếu không có hợp đồng thông minh.

Các ứng dụng nhắm đến thị trường toàn cầu có tiềm năng cho hàng triệu người dùng phải mở rộng quy mô rất tốt để thành công. Thật sai lầm nếu chỉ dựa vào blockchain để đạt được mức độ mở rộng này trong tương lai gần. Để có thể cạnh tranh với những người chơi trên thị trường tập trung lớn như Booking.com, các nhà phát triển ứng dụng phi tập trung nên xem xét các phương pháp thay thế để thiết kế ứng dụng của họ, chẳng hạn như phương pháp do Blockstack cung cấp.

Nguồn: www.habr.com

Thêm một lời nhận xét