Skip to main content
Top

2021 | OriginalPaper | Chapter

SaaS - Microservices-Based Scalable Smart Contract Architecture

Authors : Eranga Bandara, Xueping Liang, Peter Foytik, Sachin Shetty, Nalin Ranasinghe, Kasun De Zoysa, Wee Keong Ng

Published in: Security in Computing and Communications

Publisher: Springer Singapore

Activate our intelligent search to find suitable subject content or patents.

search-config
loading …

Abstract

Existing blockchain smart contract platforms are designed as monolithic architectures. Even though there are multiple smart contracts with fully independent business logic, they run on a single monolithic container. This dependence on a monolithic container can be a performance bottleneck during the processing of a large number of transactions. To address this challenge, microservice-based architecture is adopted in the blockchain smart contracts by introducing a novel architecture to run independently on separate microservices. The new smart contract architecture is built on top of Mystiko blockchain, a functional programming and actor-based “Aplos” concurrent smart contract platform. Aplos is identified as a “Smart Actor” platform since it is built using Actor-based concurrency handling. Based on the philosophy of microservices, the Aplos Smart Actor platform on Mystiko blockchain is redesigned. This architecture is introduced as “SaaS - Smart actors as a service”. With SaaS, different Aplos smart actors in the blockchain are deployed as separate independent services (e.g. docker containers) instead of a single monolith service. This ensures different smart actors can execute transactions independently. An additional benefits to SaaS is that the architecture increases the scalability by guaranteeing concurrent execution of transactions, producing high transaction throughput on the blockchain.

Dont have a licence yet? Then find out more about our products and how to get one now:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Literature
5.
go back to reference Aderaldo, C.M., Mendonça, N.C., Pahl, C., Jamshidi, P.: Benchmark requirements for microservices architecture research. In: 2017 IEEE/ACM 1st International Workshop on Establishing the Community-Wide Infrastructure for Architecture-Based Software Engineering (ECASE), pp. 8–13. IEEE (2017) Aderaldo, C.M., Mendonça, N.C., Pahl, C., Jamshidi, P.: Benchmark requirements for microservices architecture research. In: 2017 IEEE/ACM 1st International Workshop on Establishing the Community-Wide Infrastructure for Architecture-Based Software Engineering (ECASE), pp. 8–13. IEEE (2017)
6.
go back to reference Adrian, O.R.: The blockchain, today and tomorrow. In: 2018 20th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing (SYNASC), pp. 458–462. IEEE (2018) Adrian, O.R.: The blockchain, today and tomorrow. In: 2018 20th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing (SYNASC), pp. 458–462. IEEE (2018)
7.
go back to reference Androulaki, E., et al.: Hyperledger fabric: a distributed operating system for permissioned blockchains. In: Proceedings of the Thirteenth EuroSys Conference, p. 30. ACM (2018) Androulaki, E., et al.: Hyperledger fabric: a distributed operating system for permissioned blockchains. In: Proceedings of the Thirteenth EuroSys Conference, p. 30. ACM (2018)
9.
go back to reference Białecki, A., Muir, R., Ingersoll, G., Imagination, L.: Apache lucene 4. In: SIGIR 2012 Workshop on Open Source Information Retrieval, p. 17 (2012) Białecki, A., Muir, R., Ingersoll, G., Imagination, L.: Apache lucene 4. In: SIGIR 2012 Workshop on Open Source Information Retrieval, p. 17 (2012)
10.
go back to reference Burns, B., Grant, B., Oppenheimer, D., Brewer, E., Wilkes, J.: Borg, omega, and kubernetes. Queue 14(1), 70–93 (2016)CrossRef Burns, B., Grant, B., Oppenheimer, D., Brewer, E., Wilkes, J.: Borg, omega, and kubernetes. Queue 14(1), 70–93 (2016)CrossRef
13.
go back to reference Davis, A.L.: Akka streams. In: Reactive Streams in Java, pp. 57–70. Springer, Berlin (2019) Davis, A.L.: Akka streams. In: Reactive Streams in Java, pp. 57–70. Springer, Berlin (2019)
14.
go back to reference Destounis, A., Paschos, G.S., Koutsopoulos, I.: Streaming big data meets backpressure in distributed network computation. In: IEEE INFOCOM 2016-The 35th Annual IEEE International Conference on Computer Communications, pp. 1–9. IEEE (2016) Destounis, A., Paschos, G.S., Koutsopoulos, I.: Streaming big data meets backpressure in distributed network computation. In: IEEE INFOCOM 2016-The 35th Annual IEEE International Conference on Computer Communications, pp. 1–9. IEEE (2016)
15.
go back to reference Eykholt, E., Meredith, L.G., Denman, J.: Rchain architecture documentation. Retrieve. Jan. 19, 2019 (2017) Eykholt, E., Meredith, L.G., Denman, J.: Rchain architecture documentation. Retrieve. Jan. 19, 2019 (2017)
16.
go back to reference Fernandes, J.L., Lopes, I.C., Rodrigues, J.J., Ullah, S.: Performance evaluation of restful web services and amqp protocol. In: 2013 Fifth International Conference on Ubiquitous and Future Networks (ICUFN), pp. 810–815. IEEE (2013) Fernandes, J.L., Lopes, I.C., Rodrigues, J.J., Ullah, S.: Performance evaluation of restful web services and amqp protocol. In: 2013 Fifth International Conference on Ubiquitous and Future Networks (ICUFN), pp. 810–815. IEEE (2013)
17.
go back to reference Gormley, C., Tong, Z.: Elasticsearch: the definitive guide: a distributed real-time search and analytics engine. O’Reilly Media, Inc. (2015) Gormley, C., Tong, Z.: Elasticsearch: the definitive guide: a distributed real-time search and analytics engine. O’Reilly Media, Inc. (2015)
18.
go back to reference Gupta, M.: Akka essentials. Packt Publishing Ltd, Birmingham (2012) Gupta, M.: Akka essentials. Packt Publishing Ltd, Birmingham (2012)
19.
go back to reference Harz, D., Knottenbelt, W.: Towards safer smart contracts: A survey of languages and verification methods (2018) Harz, D., Knottenbelt, W.: Towards safer smart contracts: A survey of languages and verification methods (2018)
21.
go back to reference Hoare, C.A.R.: Communicating sequential processes. Commun. ACM 21(8), 666–677 (1978)CrossRef Hoare, C.A.R.: Communicating sequential processes. Commun. ACM 21(8), 666–677 (1978)CrossRef
22.
go back to reference Hughes, J.: Why functional programming matters. Comput. J. 32(2), 98–107 (1989)CrossRef Hughes, J.: Why functional programming matters. Comput. J. 32(2), 98–107 (1989)CrossRef
23.
go back to reference Kreps, J., Narkhede, N., Rao, J., et al.: Kafka: a distributed messaging system for log processing. In: Proceedings of the NetDB. pp. 1–7 (2011) Kreps, J., Narkhede, N., Rao, J., et al.: Kafka: a distributed messaging system for log processing. In: Proceedings of the NetDB. pp. 1–7 (2011)
24.
go back to reference Kurath, A.: Analyzing Serializability of Cassandra Applications. Ph.D. thesis, Master’s thesis. ETH Zürich (2017) Kurath, A.: Analyzing Serializability of Cassandra Applications. Ph.D. thesis, Master’s thesis. ETH Zürich (2017)
25.
go back to reference Kwon, J.: Tendermint: Consensus without mining. Draft v. 0.6, fall 1, 11 (2014) Kwon, J.: Tendermint: Consensus without mining. Draft v. 0.6, fall 1, 11 (2014)
26.
go back to reference Lakshman, A., Malik, P.: Cassandra: a decentralized structured storage system. ACM SIGOPS Oper. Syst. Revi. 44(2), 35–40 (2010)CrossRef Lakshman, A., Malik, P.: Cassandra: a decentralized structured storage system. ACM SIGOPS Oper. Syst. Revi. 44(2), 35–40 (2010)CrossRef
28.
go back to reference Merkel, D.: Docker: lightweight linux containers for consistent development and deployment. Linux J. 2014(239), 2 (2014) Merkel, D.: Docker: lightweight linux containers for consistent development and deployment. Linux J. 2014(239), 2 (2014)
29.
go back to reference Nakamoto, S.: Bitcoin: A peer-to-peer electronic cash system (2008) Nakamoto, S.: Bitcoin: A peer-to-peer electronic cash system (2008)
30.
go back to reference O’Connor, R.: Simplicity: A new language for blockchains. In: Proceedings of the 2017 Workshop on Programming Languages and Analysis for Security. pp. 107–120. ACM (2017) O’Connor, R.: Simplicity: A new language for blockchains. In: Proceedings of the 2017 Workshop on Programming Languages and Analysis for Security. pp. 107–120. ACM (2017)
31.
go back to reference Odersky, M., et al.: An overview of the scala programming language. Technical Report (2004) Odersky, M., et al.: An overview of the scala programming language. Technical Report (2004)
32.
go back to reference Popejoy, S.: The pact smart contract language 2017 (2016) Popejoy, S.: The pact smart contract language 2017 (2016)
33.
go back to reference Sergey, I., Kumar, A., Hobor, A.: Scilla: a smart contract intermediate-level language (2018) Sergey, I., Kumar, A., Hobor, A.: Scilla: a smart contract intermediate-level language (2018)
34.
35.
go back to reference Traiger, I.L., Gray, J., Galtieri, C.A., Lindsay, B.G.: Transactions and consistency in distributed database systems. ACM Trans. Database Syst. (TODS) 7(3), 323–342 (1982)CrossRef Traiger, I.L., Gray, J., Galtieri, C.A., Lindsay, B.G.: Transactions and consistency in distributed database systems. ACM Trans. Database Syst. (TODS) 7(3), 323–342 (1982)CrossRef
36.
go back to reference Zamani, M., Movahedi, M., Raykova, M.: Rapidchain: a fast blockchain protocol via full sharding. IACR Cryptol. ePrint Arch. 2018, 460 (2018) Zamani, M., Movahedi, M., Raykova, M.: Rapidchain: a fast blockchain protocol via full sharding. IACR Cryptol. ePrint Arch. 2018, 460 (2018)
37.
go back to reference Zyskind, G., Nathan, O., Pentland, A.: Enigma: decentralized computation platform with guaranteed privacy. arXiv preprint arXiv:1506.03471 (2015) Zyskind, G., Nathan, O., Pentland, A.: Enigma: decentralized computation platform with guaranteed privacy. arXiv preprint arXiv:​1506.​03471 (2015)
Metadata
Title
SaaS - Microservices-Based Scalable Smart Contract Architecture
Authors
Eranga Bandara
Xueping Liang
Peter Foytik
Sachin Shetty
Nalin Ranasinghe
Kasun De Zoysa
Wee Keong Ng
Copyright Year
2021
Publisher
Springer Singapore
DOI
https://doi.org/10.1007/978-981-16-0422-5_16

Premium Partner