当前位置:网站首页>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


边栏推荐
- Upgrade the smart switch, how much is the difference between the "zero fire version" and "single fire" wiring methods?
- 欧拉函数
- kotlin 条件控制
- c# . Net MVC uses Baidu ueditor rich text box to upload files (pictures, videos, etc.)
- 应用实践 | 蜀海供应链基于 Apache Doris 的数据中台建设
- 牛客小白月赛7 F题
- Socket programming demo II
- TCP waves twice, have you seen it? What about four handshakes?
- Comment utiliser async awati asynchrone Task Handling au lieu de backgroundworker?
- Pointnet/Pointnet++点云数据集处理并训练
猜你喜欢

Lm10 cosine wave homeopathic grid strategy

西门子HMI下载时提示缺少面板映像解决方案

Dark horse programmer - software testing - stage 08 2-linux and database-23-30-process port related, modify file permissions, obtain port number information, program and process related operations, Li

YOLOv5s-ShuffleNetV2

English语法_名词 - 使用

Mysql database basic operation -ddl | dark horse programmer

如何使用Async-Awati异步任务处理代替BackgroundWorker?

c# .net mvc 使用百度Ueditor富文本框上传文件(图片,视频等)

Master the use of auto analyze in data warehouse

BCG 使用之新建向导效果
随机推荐
socket编程demo二
HDU 1372 & POJ 2243 Knight moves (breadth first search)
牛客小白月赛7 F题
kotlin 基本使用
实战模拟│JWT 登录认证
更强的 JsonPath 兼容性及性能测试之2022版(Snack3,Fastjson2,jayway.jsonpath)
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,
mysql中explain语句查询sql是否走索引,extra中的几种类型整理汇总
公司要上监控,Zabbix 和 Prometheus 怎么选?这么选准没错!
Basic use of kotlin
Introduction to ACM combination counting
[graduation season] green ant new fermented grains wine, red mud small stove. If it snows late, can you drink a cup?
1011 World Cup betting (20 points) (pat a)
1005 Spell It Right(20 分)(PAT甲级)
Comment utiliser async awati asynchrone Task Handling au lieu de backgroundworker?
【问题】druid报异常sql injection violation, part alway true condition not allow 解决方案
Hough transform Hough transform principle
1006 sign in and sign out (25 points) (PAT class a)
Utilisation de la barre de progression cbcggprogressdlgctrl utilisée par BCG
JVM系列之对象的创建