A computer-implemented method for blockchain-based notification, comprising: obtaining, from a computing device, a notification message indicating that a current state of a workflow is one of one or more states of the workflow, wherein a blockchain contract deployed in a blockchain is executable to update the current state among the one or more states of the workflow, the one or more states being registered in the blockchain; executing a function associated with the one state in response to the notification message; and in response to completion of the execution of the function, transmitting, to the computing device, a reply message indicating completion of the execution of the function associated with the one state, wherein the computing device is configured to obtain information in one or more blocks of the blockchain to determine the current state, update a locally-maintained state machine based on the current state, determine if the updated locally-maintained state machine corresponds to the one state, and in response to determining that the updated state machine corresponds to the one state, generate the notification message for one or more subscribers subscribing to the one state, wherein the locally-maintained state machine comprises one or more local states respectively mapped to the one or more states; the one or more local states are configured in a cyclic trigger flow, wherein the cyclic trigger flow starts with a starting local state of the one or more local states, passes through each of the one or more local states once in one direction till an ending local state, and returns to the starting local state; the one or more states are configured in another cyclic trigger flow, wherein the another cyclic trigger flow starts with a starting state of the one or more states, passes through each of the one or more states once in one direction till an ending state, and returns to the starting state; each of the one or more states is triggered by completion of a preceding state in the another cyclic trigger flow; and the starting state is mapped to the starting local state of the cyclic trigger flow. obtaining, from a computing device, a notification message indicating that a current state of a workflow is one of one or more states of the workflow, wherein a blockchain contract deployed in a blockchain is executable to update the current state among the one or more states of the workflow, the one or more states being registered in the blockchain; executing a function associated with the one state in response to the notification message; and in response to completion of the execution of the function, transmitting, to the computing device, a reply message indicating completion of the execution of the function associated with the one state, wherein the computing device is configured to obtain information in one or more blocks of the blockchain to determine the current state, update a locally-maintained state machine based on the current state, determine if the updated locally-maintained state machine corresponds to the one state, and in response to determining that the updated state machine corresponds to the one state, generate the notification message for one or more subscribers subscribing to the one state, wherein the locally-maintained state machine comprises one or more local states respectively mapped to the one or more states; the one or more local states are configured in a cyclic trigger flow, wherein the cyclic trigger flow starts with a starting local state of the one or more local states, passes through each of the one or more local states once in one direction till an ending local state, and returns to the starting local state; the one or more states are configured in another cyclic trigger flow, wherein the another cyclic trigger flow starts with a starting state of the one or more states, passes through each of the one or more states once in one direction till an ending state, and returns to the starting state; each of the one or more states is triggered by completion of a preceding state in the another cyclic trigger flow; and the starting state is mapped to the starting local state of the cyclic trigger flow. the locally-maintained state machine comprises one or more local states respectively mapped to the one or more states; the one or more local states are configured in a cyclic trigger flow, wherein the cyclic trigger flow starts with a starting local state of the one or more local states, passes through each of the one or more local states once in one direction till an ending local state, and returns to the starting local state; the one or more states are configured in another cyclic trigger flow, wherein the another cyclic trigger flow starts with a starting state of the one or more states, passes through each of the one or more states once in one direction till an ending state, and returns to the starting state; each of the one or more states is triggered by completion of a preceding state in the another cyclic trigger flow; and the starting state is mapped to the starting local state of the cyclic trigger flow.