简体   繁体   English

我可以使用Ruby on Rails或Node.js而不是Ethereum + Geth创建本地区块链吗?

[英]Can I create a local blockchain with Ruby on Rails or Node.js instead of Ethereum+Geth?

The Question: 问题:

Does anyone know a stable framework which can be used to create a blockchain application, creating a server/node, creating a miner, a wallet, a blockchain inspector, etc? 有谁知道一个稳定的框架,可用于创建区块链应用程序,创建服务器/节点,创建矿工,钱包,区块链检查器等?

Such a framework does not have to be in Node.js nor Ruby on Rails, but those are the two technologies I am most familiar with. 这样的框架并不一定要在Node.js的,也不Ruby on Rails的,但就是这两种技术,我最熟悉的。

Some Background: 一些背景:

I have to craft an internship project based on blockchain technology. 我必须设计一个基于区块链技术的实习项目。

I have been looking at Ethereum which seems nice. 我一直在看以太坊 ,看起来不错。 Ethereum's GETH command line interface allows me to create a blockchain and also mine that blockchain. 以太坊的GETH命令行界面允许我创建一个区块链并挖掘该区块链。

However, I need to be able to use a web-capable development platform such as Ruby on Rails, Node.js, or similar so I can have interns craft a UI to go along with a local blockchain. 但是,我需要能够使用支持Web的开发平台,例如Ruby on Rails,Node.js或类似的东西,这样我才能让实习生精心设计UI以与本地区块链一起使用。

I have looked at Toshi(RoR) and BitCoin.js(Node), but will need something that has better documentation. 我已经看过Toshi(RoR)和BitCoin.js(Node),但需要一些文档更好的东西。

Thanks for any and all your suggestions! 感谢您提出的所有建议!

When I built Etheria, I chose the following: 建立Etheria时,我选择了以下各项:

Development techs: 开发技术:

  • Ubuntu Linux 14.04 Ubuntu Linux 14.04
  • Eclipse Mars 2 (get from web, not repo) (javascript formatting works well, you can tell eclipse to format .sol files as javascript) Eclipse Mars 2(从网络获取,而不是从仓库获取)(JavaScript格式运作良好,您可以告诉eclipse将.sol文件格式化为javascript)
  • Solidity + chriseth's Solidity compiler at https://ethereum.github.io/browser-solidity Solidity + Chriseth的Solidity编译器位于https://ethereum.github.io/browser-solidity

And for deployment: 并进行部署:

  • Digital Ocean 数字海洋
  • Ubuntu 14.04 Ubuntu 14.04
  • geth (stable, not development) 盖斯(稳定,不是发展)
  • node + async + express 节点+异步+表达

Notes on choices: 选择注意事项:

Ubuntu 14.04 for development - As it is the Linux standard, many Ethereum docs assume it which streamlines things. 用于开发的Ubuntu 14.04-由于它是Linux标准,因此许多以太坊文档都认为它可以简化事情。 Easy to install geth and keep it upgraded. 易于安装,并保持升级。

Eclipse Mars 2 - Ubuntu's packaged Eclipse is old. Eclipse Mars 2-Ubuntu打包的Eclipse很旧。

Solidity - Was once (is possibly still) billed as the "official" ethereum language and is easy to learn. 扎实-曾经(可能仍然)被称为“官方”以太坊语言,并且易于学习。 chriseth is the man. 克里斯特是男人。

Digital Ocean - cheap, easy hosting. Digital Ocean-便宜,易于托管。 My security needs were nil as I didn't need a wallet on the machine. 我的安全需求为零,因为我不需要机器上的钱包。 If you plan on keeping wallets on your machine, your risk profile may be different and necessitate other options. 如果您打算将钱包放在机器上,则您的风险状况可能会有所不同,因此需要其他选择。

Ubuntu 14.04 for deployment - Easy to install geth and keep it upgraded. 用于部署的Ubuntu 14.04-易于安装geth并保持其升级。

geth - I'm sure pyeth and eth are equally valid. 盖斯-我确定pyeth和eth同样有效。 geth is more widely used 盖特被更广泛地使用

node - Seamless interaction with the indispensable and awesome web3.js library which is used to interact with your geth instance (which should be running with local-access-allowed IPC). 节点-与不可或缺的web3.js库无缝交互,该库用于与您的geth实例进行交互(该实例应与允许本地访问的IPC一起运行)。 Async for easy async calls, express for endpoint creation and organization. 异步表示简单的异步调用,表示表示端点的创建和组织。

My code: 我的代码:

Etheria contract: https://github.com/fivedogit/etheria Etheria合同: https//github.com/fivedogit/etheria

Etheria node: https://github.com/fivedogit/etheria_node Etheria节点: https : //github.com/fivedogit/etheria_node

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM