Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.
nitowa a4b9635ee7 optimize webpack bundling, minimize gateway JS 2 роки тому
gateway optimize webpack bundling, minimize gateway JS 2 роки тому
gui Initial working version 2 роки тому
src optimize webpack bundling, minimize gateway JS 2 роки тому
.gitignore Initial working version 2 роки тому
README.md optimize webpack bundling, minimize gateway JS 2 роки тому
package-lock.json optimize webpack bundling, minimize gateway JS 2 роки тому
package.json optimize webpack bundling, minimize gateway JS 2 роки тому
tsconfig.json Initial working version 2 роки тому
webpack.gateway.js Initial working version 2 роки тому
webpack.gui.js Initial working version 2 роки тому

README.md

Overview

httXrp is a proof of concept for a truly serverless web architecture. If serverless simply means “a server owned by someone else”, httXrp pushes that definition to its limit.

How it works

1: Getting data into and out of the blockchain

Transactions on the ripple blockchain are allowed to carry up to 1kB of arbitrary data via the memo field. We can use this to store data of any size by building a tree of references between these transactions that can then be reassembled by reading them back from the blockchain. In order to generate these transactions a library called xrpio is used.

Highly simplified, you can visualize the process like this:

xrpio treewrite

2: Abstracting the webserver away from the web

Using tools like webpack, it is possible to condense even modern complex single-page-applications into a single html file. As xrpio is written in JavaScript, it is even possible to embed it into such an HTML file, the use of which will become more clear a few paragraphs below.

Since such a condensed HTML file is effectively nothing more than a long string it is possible to use xrpio to store them into the ripple blockchain and to retrieve them via a single identifying hash.

Webserverless web

3: Dynamic web applications without a backend

Superficially, this technique is limited to serving static webpages, as there is no real backend serving these pages. However, since it is possible to embed xrpio into such a “static” page, it is possible to listen for transactions on the Ripple blockchain containing valid xrpio hashes and to dynamically update the webpage’s content based on the stored data.

Credits