/akka-bc

Primary LanguageScalaApache License 2.0Apache-2.0

Blockchain

Classic Consensus: * Safety - rely on what system tells you. * Liveness - progress is guarantee. * Can’t handle byzantine failures

Blockchain * Byzantine failure tolerance (Reach the agreement in a very hostile(untrusted) env. Keywords: untrustworthy, malicious actors)

Projects and info

https://leaks.wanari.com/2018/10/23/blockchain-akka-tutorial/ https://github.com/TeamWanari/scala-coin https://github.com/ronakkany/scalablockchain

https://medium.freecodecamp.org/how-to-build-a-simple-actor-based-blockchain-aac1e996c177 https://bitcoin.stackexchange.com/questions/23099/what-does-the-mining-difficulty-number-really-mean/35807#35807

https://habr.com/en/post/437926/

Nodes in the blockchain perform three tasks:

  1. process transactions
  2. relay validated transactions and completed blocks to other nodes
  3. store the state and the history of the entire network ledger

https://github.com/ronakkany/scalablockchain.git

Videos

Alternative Consensus Mechanisms https://www.youtube.com/watch?v=mBdrvfytLDQ&list=PLbZ2T3O9BuvczX5j03bWMrMFzK5OAs9mZ&index=223&t=0s

Blockchain versus Classical Distributed Programming (ft. Maurice Herlihy) https://www.youtube.com/watch?v=nh-BXU7aqfU&list=PLbZ2T3O9BuvczX5j03bWMrMFzK5OAs9mZ&index=225&t=0s

3Blue1Brown https://www.youtube.com/watch?v=bBC-nXj3Ng4 https://www.youtube.com/watch?v=S9JGmA5_unY

Let’s All just Agree: Achieving Consensus in Blockchain-based Systems • Stefan Tilkov

https://www.youtube.com/watch?v=lgHh4de_6ZI

RocksDB

https://github.com/facebook/rocksdb/wiki/RocksJava-Basics

https://github.com/facebook/rocksdb/blob/master/java/samples/src/main/java/RocksDBColumnFamilySample.java

https://github.com/facebook/rocksdb/blob/master/java/samples/src/main/java/RocksDBSample.java

https://www.cockroachlabs.com/blog/consistency-model/

https://www.cockroachlabs.com/blog/cockroachdb-on-rocksd/

https://www.cockroachlabs.com/blog/sql-in-cockroachdb-mapping-table-data-to-key-value-storage/

Yoctodb

https://github.com/yandex/yoctodb

https://github.com/yandex/yoctodb/wiki/Design

https://github.com/yandex/yoctodb/wiki/GettingStarted

https://github.com/yandex/yoctodb/blob/a7263f507c6aaa1c11323fb5c49240ad7ba2f487/core/src/test/java/com/yandex/yoctodb/CompositeFileDatabaseTest.java

akka-cluster with docker

https://github.com/akka/akka-sample-cluster-docker-compose-scala

Akka cluster visualization and management dashboard

https://github.com/Headstorm/shukra

CRDTs

https://bartoszsypytkowski.com/operation-based-crdts-registers-and-sets/