3

If I create a new app that will work on Ethereum network, it takes few seconds for a transaction to be confirmed at least once (creating a sub contract for example), so I can keep using other functions.

It all seems smooth and nice, but.. what happens if my app reaches thousands of users who wants to simultaneously access and execute transactions? Is there a cap I should be worried about?

1

There's no cap for a contract, but the current state of the blockchain has a gas limit (amount of computation per block) of around 6.7 million. This means that a block can't contain transactions that total more than that amount in gas used. A tx that just sends ether costs 21,000 gas, so you can fit ~320 in a block. Miners can vote to increase/decrease the block size slowly, and it's been going up over time, but if there are more pending transactions than can fit in a block, then the required gas price for a miner to mine your tx will increase. This happens mainly during large ICOs.

Scaling solutions such as Plasma and Sharding will greatly alleviate the need to increase tx fees/max gas per block as well.

  • Sorry, im kinda new on developing on ethereum, so there are few concepts that are not that clear to me. For example if i want my app to be used on healthcare solution for an entire country.. will that be viable? If i will be the one who will declare miners for the app, and can control that part. What are the advantages of using plasma or sharding? Never heard of those as well. – Roman Nov 10 '17 at 15:08
  • @Roman You don't need to have your own miners, the Ethereum blockchain already has miners.You can also launch your own Ethereum blockchain, and if you're controlling all the miners then you can set the gas limit per block to whatever you want, and then your limiting factor is just bandwidth to/from your miners. Plasma is a framework for creating sidechains. People can submit "fraud proofs" on the main chain if they see someone cheat on the side chain. Sharding splits a blockchain into sub-blockchains that can communicate asynchronously between each other, increasing tx throughput. – flygoing Nov 10 '17 at 15:15
  • So to sum up, if i have my own ethereum blockchain i wont have scalability issues because i will be in control of almost anything, the only thing to be aware of would be the bandwith, right? And if i happen to use the main blockchain network.. i still dont understand if i can.. for example .. have 400.000 users of a healthcare solution who access my app on the ethereum network. It will be more expensive each time for tx to happen? It will be slower? – Roman Nov 10 '17 at 15:20
  • Correct for running a private chain. Right now, the main Ethereum blockchain can do ~500k transactions a day, which is roughly 6 tx/second. If your dapp is expected to do 1/10th of that many tx a second, then it's unrealistic (as of right now) to run your dapp on the Ethereum blockchain, because the more pending transactions there are, the more a tx will cost. That said, upgrades to the network in the next year could make applications doing 50 tx/s realistic. There are also alternative solutions, such as state channels, that you can do now to greatly reduce the need for on-chain transactions. – flygoing Nov 10 '17 at 15:46
  • Okay, one last thing. I think i got the idea.. 500k transactions a day would be for the entire ethereum blockchain, for all the dapps working on it. I maybe would need more tx just for my app a day, so it wont be viable. Do you have any official source so i can show my co-workers this information? The upgrades in the next year will allow to do what exactly? 50tx per second? So my project will be viable? Btw, thanks in advance for taking your time answering my questions. – Roman Nov 10 '17 at 15:53
0

This is a recent tweet from one of the core Ethereum team.

tweet from vlad zamifir

Vlad goes on to follow up the tweet with a blog post to further explain his tweet. Imo it was well received by the community, it showed a human side to the crypto-space with complete transparency from a person who is at the heart of the project.

Some key takeaways from the post:

Is Ethereum safe?

I don’t think so. I absolutely cannot guarantee that the network won’t be 51% attacked (though I would like to believe that a hard fork would minimize damage from such an attack). I cannot usually guarantee that a smart contract will behave as expected (I don’t need to mention that I sometimes like hard forks here, too, do I?). But lots of really smart people in the community are working hard towards making Ethereum safe, with smart contract formal verification efforts and with proof-of-stake consensus protocol research. I think that we will continue to make steady and impressive progress on these safety problems.

Is Ethereum scalable?

I don’t think so. While miners can increase the gaslimit without changing the protocol, the blockchain is still single threaded. State channels can potentially provide a large constant factor improvement in the short term, but they have their own security problems (to use Vitalik’s language, “channels turn a blockchain’s liveness failures into safety failures"). Sharding promises to do much better, but is likely still a ways off. Still, I think that we will continue to make steady and impressive progress on the blockchain scaling.

Here's the blog post!

  • This stuff is really usefull, thanks a lot for sharing! Basically i want to use blockchain to create a massive healthcare app, where the data can be stored on the chain. Ethereum wont be the solution then? Even if i use Plasma as @flygoing suggested? – Roman Nov 11 '17 at 22:49
  • No, Vlad was just saying it isn’t ready for mission critical applications YET. With the induction of all these new things like plasma and more standards around smart contract development, I believe Ethereum will be an extremely viable option for mission critical apps :) – Malone Nov 11 '17 at 22:51
  • @Roman fyi, forgot to tag – Malone Nov 11 '17 at 23:56
  • And are there any dates for this outcome, or release? – Roman Nov 12 '17 at 0:11
  • @Roman I'd keep an eye on the Ethereum Improvement Proposals for all releases and dates github.com/ethereum/EIPs – Malone Nov 12 '17 at 0:15

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.