Search icon CANCEL
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Docker for Serverless Applications

You're reading from   Docker for Serverless Applications Containerize and orchestrate functions using OpenFaas, OpenWhisk, and Fn

Arrow left icon
Product type Paperback
Published in Apr 2018
Publisher Packt
ISBN-13 9781788835268
Length 250 pages
Edition 1st Edition
Tools
Concepts
Arrow right icon
Author (1):
Arrow left icon
Chanwit Kaewkasi Chanwit Kaewkasi
Author Profile Icon Chanwit Kaewkasi
Chanwit Kaewkasi
Arrow right icon
View More author details
Toc

Table of Contents (11) Chapters Close

Preface 1. Serverless and Docker 2. Docker and Swarm Clusters FREE CHAPTER 3. Serverless Frameworks 4. OpenFaaS on Docker 5. The Fn Project 6. OpenWhisk on Docker 7. Operating FaaS Clusters 8. Putting Them All Together 9. The Future of Serverless 10. Other Books You May Enjoy

An event state machine with a blockchain


We use an Ethereum blockchain as the event state machine for the money transfer system. A blockchain in this role is used for storing the following:

  • The mapping between telephone numbers and bank accounts
  • The overall state of each transfer transaction

Inside the blockchain, there are two kinds of smart contracts. The first one implements the repository pattern, and the second one implements the entity model.

We use Truffle (http://truffleframework.com/) to create this event state machine. Look at the subproject named eventmachine in the GitHub repository (https://github.com/chanwit/eventmachine).

Here's a smart contract under the entities/ directory, TransferState.sol. This smart contract maintains the states of each transfer transaction. Each transaction is initialized with NONE, then STARTED, PENDING, and finally COMPLETED. The following diagram illustrates the smart contractTransferState working together with its repository implementation:

Figure 8.10...

lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at R$50/month. Cancel anytime