当前位置:网站首页>Decryption function calculates "task state and lifecycle management" of asynchronous task capability
Decryption function calculates "task state and lifecycle management" of asynchronous task capability
2022-07-04 19:53:00 【InfoQ】
Preface
Management of task status and life cycle
Task status management


- After the user triggers a task , Task in the team , Changed to: Enqueued state , And return trigger success ;
- The task is queued in the back-end service of function calculation , The task becomes Dequeued state ;
- The backend will check the task configuration . If
- The asynchronous message validity function is configured , And the difference between the time of leaving the team and the time of joining the team has exceeded the validity period , Then the task is discarded , Changed to: Expired state . Task to terminate ;
- The function corresponding to the task has been deleted , Or there is an error creating the instance , Then discard the message , The task is changed to Invalid state ;
- After the inspection, the task officially enters Running state . At this time, the task has triggered the actual execution ;
- When the task is completed , According to the return, it will change to the following states :
- Retrying: The user has configured the number of retries ( The default is 3), And the task execution failed , At this time, it will enter the retry state , Then it will be changed to Running state ;
- Failed: Task execution failed , And the number of retries has exceeded . The task status will be changed to Failed;
- Succeeded: The task was executed successfully .
- If the user triggers during the whole state flow Cancel, Then the task will be changed to Stopping state , And try to stop the task . When the task stops successfully , Mission entry Stopped state .
Task runtime management and life cycle

- The creation is complete -> Execute request phase : Support Initializer function , Support initializing instance operations . Users can configure such as global variables 、 Connection pool initialization and other related operations ;
- In execution -> After execution Pause example : Support PreFreeze Interface , Support in function Pause Execute user-defined logic before the instance ;
- In execution -> external cancel: Function evaluation will force Restart User instance , stay Restart Pre support PreStop Interface . The user can configure the logic of graceful stop , To support Cancel Custom behavior when ;
- After completion Pause -> Destroy instance : When there is no request for a period of time , Function calculation will destroy the instance . This will call PreStop Interface , Users can configure the behavior of destroying containers ( Such as closing the connection pool ).

Stop the task
import fc "github.com/aliyun/fc-go-sdk"
func CancelJob() {
stopInput := fc.NewStopStatefulAsyncInvocationInput("ServiceName", "FunctionName", "TaskUUID")
output, err := fcClient.StopStatefulAsyncInvocation(stopInput)
...
}
summary


边栏推荐
- Abc229 summary (connected component count of the longest continuous character graph in the interval)
- [QNX hypervisor 2.2 user manual]6.3.1 factory page and control page
- 多表操作-内连接查询
- Lenovo explains in detail the green smart city digital twin platform for the first time to solve the difficulties of urban dual carbon upgrading
- [graduation season] green ant new fermented grains wine, red mud small stove. If it snows late, can you drink a cup?
- 双冒号作用运算符以及命名空间详解
- 线上数据库迁移的几种方法
- kotlin 循环控制
- Master the use of auto analyze in data warehouse
- Dark horse programmer - software testing - 09 stage 2-linux and database -31-43 instructions issued by modifying the file permission letter, - find the link to modify the file, find the file command,
猜你喜欢
牛客小白月赛7 谁是神箭手

Creation of JVM family objects

New wizard effect used by BCG

Multi table operation - external connection query

Dark horse programmer - software testing - 09 stage 2-linux and database -31-43 instructions issued by modifying the file permission letter, - find the link to modify the file, find the file command,

92. (cesium chapter) cesium building layering

FPGA timing constraint sharing 01_ Brief description of the four steps

Online text line fixed length fill tool

Introduction to polyfit software

Several methods of online database migration
随机推荐
Jetpack compose tutorial
Upgrade the smart switch, how much is the difference between the "zero fire version" and "single fire" wiring methods?
English grammar_ Noun - use
公司要上监控,Zabbix 和 Prometheus 怎么选?这么选准没错!
Pytorch学习(四)
1007 Maximum Subsequence Sum(25 分)(PAT甲级)
1003 Emergency(25 分)(PAT甲级)
BCG 使用之CBCGPTabWnd控件(相当于MFC TabControl)
实战模拟│JWT 登录认证
An example of multi module collaboration based on NCF
解密函数计算异步任务能力之「任务的状态及生命周期管理」
欧拉函数
Dark horse programmer - software testing - 09 stage 2-linux and database -31-43 instructions issued by modifying the file permission letter, - find the link to modify the file, find the file command,
Write it down once Net analysis of thread burst height of an industrial control data acquisition platform
Utilisation de la barre de progression cbcggprogressdlgctrl utilisée par BCG
Pythagorean number law (any three numbers can meet the conditions of Pythagorean theorem)
Reflection (I)
多表操作-内连接查询
需求开发思考
Basic use of kotlin