1 - experiences with dapp - snia · §blockchain/dlt is a disruptive technology applicable across...

20
Experiences with DApp On Blockchain as a service © 2019 NetApp, Inc. All rights reserved. Girish Chandrashekar Senior Engineer 23-May-2019

Upload: others

Post on 03-Jun-2020

4 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: 1 - Experiences with DApp - SNIA · §Blockchain/DLT is a disruptive technology applicable across many verticals §Public/hosted blockchains weighed down by scalability issues §Transactions/second

Experiences with DAppOn Blockchain as a service

© 2019 NetApp, Inc. All rights reserved.

Girish ChandrashekarSenior Engineer23-May-2019

Page 2: 1 - Experiences with DApp - SNIA · §Blockchain/DLT is a disruptive technology applicable across many verticals §Public/hosted blockchains weighed down by scalability issues §Transactions/second

Agenda Slide

1) What is DApp?

2) Where can we apply DApp/Blockchains?

3) DApp Architecture

4) DApp on private/consortium Blockchain!

5) Key takeaways

2 © 2019 NetApp, Inc. All rights reserved.

Page 3: 1 - Experiences with DApp - SNIA · §Blockchain/DLT is a disruptive technology applicable across many verticals §Public/hosted blockchains weighed down by scalability issues §Transactions/second

What is DApp?

3 © 2019 NetApp, Inc. All rights reserved.

Page 4: 1 - Experiences with DApp - SNIA · §Blockchain/DLT is a disruptive technology applicable across many verticals §Public/hosted blockchains weighed down by scalability issues §Transactions/second

DApp overviewDApp: Decentralized Applications

4 © 2019 NetApp, Inc. All rights reserved.

Frontend UIhtml/css/js

BackEndRail/node/Django

DApphtml/css/js

Blockchainsmart contract

WebApp Architecture DApp Architecture

http (json) http (json)

Page 5: 1 - Experiences with DApp - SNIA · §Blockchain/DLT is a disruptive technology applicable across many verticals §Public/hosted blockchains weighed down by scalability issues §Transactions/second

Where can we apply DApp/Blockchains?

5 © 2019 NetApp, Inc. All rights reserved.

Page 6: 1 - Experiences with DApp - SNIA · §Blockchain/DLT is a disruptive technology applicable across many verticals §Public/hosted blockchains weighed down by scalability issues §Transactions/second

Where can we apply DApp/Blockchains?

6 © 2019 NetApp, Inc. All rights reserved.

§ If shared database with multiple non-trusting updaters &

§ Decentralized trust among participants to update the ledger &

§ Backed by value for assets represented on Blockchain

Page 7: 1 - Experiences with DApp - SNIA · §Blockchain/DLT is a disruptive technology applicable across many verticals §Public/hosted blockchains weighed down by scalability issues §Transactions/second

7 © 2019 NetApp, Inc. All rights reserved.

Source: https://teams.microsoft.com/l/channel/19%3a17436559c81441eca755003fbf111542%40thread.skype/Do%2520you%2520need%2520a%2520blockchain?groupId=d8d2483f-ad4a-40cf-943c-b4bff94a9e08&tenantId=4b0911a0-929b-4715-944b-c03745165b3a

Where it should not be used?

§ If traditional database meets the need ||

§ Single participant updates the ledger ||

§ All updaters trust one another ||

§ All participants trust third party.

Page 8: 1 - Experiences with DApp - SNIA · §Blockchain/DLT is a disruptive technology applicable across many verticals §Public/hosted blockchains weighed down by scalability issues §Transactions/second

Industry verticals: Emerging Blockchain Applications

© 2019 NetApp, Inc. All rights reserved.8

Page 9: 1 - Experiences with DApp - SNIA · §Blockchain/DLT is a disruptive technology applicable across many verticals §Public/hosted blockchains weighed down by scalability issues §Transactions/second

DApp Architecture

9 © 2019 NetApp, Inc. All rights reserved.

Page 10: 1 - Experiences with DApp - SNIA · §Blockchain/DLT is a disruptive technology applicable across many verticals §Public/hosted blockchains weighed down by scalability issues §Transactions/second

DApp ArchitectureApps built on a blockchain-based, decentralized platform, mainly on Ethereum

10 © 2019 NetApp, Inc. All rights reserved.

smart contractsmart contract

Page 11: 1 - Experiences with DApp - SNIA · §Blockchain/DLT is a disruptive technology applicable across many verticals §Public/hosted blockchains weighed down by scalability issues §Transactions/second

DApps100+ apps: https://www.stateofthedapps.com/

11 © 2019 NetApp, Inc. All rights reserved.

Page 12: 1 - Experiences with DApp - SNIA · §Blockchain/DLT is a disruptive technology applicable across many verticals §Public/hosted blockchains weighed down by scalability issues §Transactions/second

Storage DAppshttps://www.stateofthedapps.com/

12 © 2019 NetApp, Inc. All rights reserved.

Storage DAppshttps://www.stateofthedapps.com/

12 © 2019 NetApp, Inc. All rights reserved.

Page 13: 1 - Experiences with DApp - SNIA · §Blockchain/DLT is a disruptive technology applicable across many verticals §Public/hosted blockchains weighed down by scalability issues §Transactions/second

Enterprise use-casesDApp on private/consortium Blockchain!

13 © 2019 NetApp, Inc. All rights reserved.

Page 14: 1 - Experiences with DApp - SNIA · §Blockchain/DLT is a disruptive technology applicable across many verticals §Public/hosted blockchains weighed down by scalability issues §Transactions/second

DApp Architecture for ‘Blockchain service’ on cloud

14 © 2019 NetApp, Inc. All rights reserved.

UserId to public key mapping

Block 3

Block 2

Block 1

Block n

Ethereum Client1

Block 3

Block 2

Block 1

Block n

Ethereum Client2

Block 3

Block 2

Block 1

Block n

Ethereum ClientN

Ethereum blockchain on AWS/Azure/public

Appserver1Web3.js/es

RabbitMQ

Smart Contracts Deployed as EVM bytecode

JSON RPC

DApp

REST apiDApp

Browser or CLI

EVM EVM EVMAppserver2Web3.js/es

Rev

erse

pro

xy

user1

user2

API backend

Authenticationauth0

Page 15: 1 - Experiences with DApp - SNIA · §Blockchain/DLT is a disruptive technology applicable across many verticals §Public/hosted blockchains weighed down by scalability issues §Transactions/second

Performance Results5x Improvement from switching pow to poa + queues

15 © 2019 NetApp, Inc. All rights reserved.

RPS: Requests per second

Test RPS Avg latency (ms) Median latency (ms) Config BC (pow) 4.1 2623 2200 config1

BC(poa)+rabbitmq 22 250 264 config2

config1: 5 blockchain nodes, aws t2 large(6cpus total)config2: 5 blockchain nodes, aws c4 large(16 cpus total)BC: Ethereum Blockchain

Page 16: 1 - Experiences with DApp - SNIA · §Blockchain/DLT is a disruptive technology applicable across many verticals §Public/hosted blockchains weighed down by scalability issues §Transactions/second

§ Blockchain/DLT is a disruptive technology applicable across many verticals

§ Public/hosted blockchains weighed down by scalability issues§ Transactions/second is a real concern: PoS (Proof of Stake) consensus can enable scaling.

§ Adoption of blockchains will exponentially increase after scalability bottlenecks are erased!

§ Do not use beyond 5 nodes in a private/hosted blockchain/Ethereum.

§ Use for applications which need below 30 Requests per second on Ethereum

16 © 2019 NetApp, Inc. All rights reserved.

Key Takeaways

Page 17: 1 - Experiences with DApp - SNIA · §Blockchain/DLT is a disruptive technology applicable across many verticals §Public/hosted blockchains weighed down by scalability issues §Transactions/second

17

Thank You

© 2019 NetApp, Inc. All rights reserved.

Page 18: 1 - Experiences with DApp - SNIA · §Blockchain/DLT is a disruptive technology applicable across many verticals §Public/hosted blockchains weighed down by scalability issues §Transactions/second

18

Backup

© 2019 NetApp, Inc. All rights reserved.

Page 19: 1 - Experiences with DApp - SNIA · §Blockchain/DLT is a disruptive technology applicable across many verticals §Public/hosted blockchains weighed down by scalability issues §Transactions/second

Smart contract executionPOA (Proof of Authority) as consensus algorithm by miners for scalability and high performance

19 © 2019 NetApp, Inc. All rights reserved.

Page 20: 1 - Experiences with DApp - SNIA · §Blockchain/DLT is a disruptive technology applicable across many verticals §Public/hosted blockchains weighed down by scalability issues §Transactions/second

Smart contract deploymentSmart Contracts are compiled to bytecodes. These bytecodes are deployed as instances of Smart Contracts in the Ethereum Virtual Machine (EVM).

20 © 2019 NetApp, Inc. All rights reserved.