之江实验室
之江实验室工作中的一些研究
小浣熊的干脆面
这个作者很懒,什么都没留下…
展开
-
分布式容错机制研究
广播调用与并行调用类似,也是需要对服务集群的每个节点都发起一次调用,不过不同 的是,广播调用通常用于服务集群的每个节点都维护了本地状态,然后需要对这种本地状态 进行写操作的场景,即需要同步写操作给服务集群的每个节点,从而保证每个节点的数据一 致性和可靠性。即一个服务可能会通过 RPC 调用多个其他服务,如果其中某个服务不可用, 则需要保证另外的多个服务的处理结果,以及当前发起 RPC 服务调用的服务的处理结果都 可以正常返回给客户端,只是这个不可用服务的处理结果需要返回错误而已。原创 2023-10-30 16:56:33 · 86 阅读 · 0 评论 -
常见分布式调度框架
elastic-job使用了quartz的调度机制,内部原理一致,他可以看作是quartz的一个扩展实现,使用注册中心(zookeeper)替换了quartz的jdbc数据存储方式,此外,elastic-job又支持分片等特殊功能。分布式任务调度SchedulerX是阿里巴巴自研的基于Akka架构的分布式任务调度平台,兼容开源XXL-JOB、ElasticJob,支持Cron定时、一次性任务、任务编排、分布式执行批量任务等功能,具备高可用、可视化、可运维、低延时等能力。绑定某个任务以及绑定机器。转载 2023-10-30 16:51:19 · 1233 阅读 · 0 评论 -
其他常见热迁移工具
(1)checkpoint期间,getid()可用于检索进程的PID,但在还原期间没有相应的API来设置进程的PID(fork()系统调用不允许调用制定子进程的PID),DMTCP通过拦截getpid()的库调用并向应用程序提供假的PID值给进程。对比分析可知,在用户态完成checkpoint/restore功能的工具中,criu是功能最全的,而且支持目前云计算领域最火的docker容器checkpoint/restore,而且criu的社区也是很活跃的。(2)可能因为请求代理而产生潜在的性能问题。原创 2023-10-30 16:45:49 · 143 阅读 · 0 评论 -
分布式调度系统API文档
3、强制杀死某个任务。原创 2023-10-30 16:30:07 · 69 阅读 · 0 评论 -
分布式调度系统架构图
原创 2023-10-30 15:46:07 · 78 阅读 · 0 评论 -
分布式调度系统设计思路
3、各个worker利用分布式锁抢占,解决并发调度相同任务的问题。3、任务执行:协程池并发执行多任务,基于etcd分布式锁抢占。1、任务同步:监听etcd中/cron/jobs/目录变化。1、利用etcd同步全量任务列表到所有worker节点。1、任务管理http接口:新建、修改、查看、删除任务。4、日志保存:捕获任务执行输出,保存到MongoDB。2、任务调度:基于cron表达式计算,触发过期任务。3、任务控制http接口:提供强制结束任务的接口。2、任务日志http接口:查看任务执行历史日志。原创 2023-10-30 15:42:33 · 49 阅读 · 0 评论 -
CRIU的安装与使用
CRIU(Checkpoint/Restore In Userspace)运行在linux操作系统上的一个软件工具,其功能是在用户空间实现Checkpoint/Restore功能。使用这个工具,你可以冻结一个正在运行的程序,并且checkpoint它到一系列的文件,然后你就可以使用这些文件在任何主机重新恢复这个程序到被冻结的那个点(白话就是实现对已运行程序的备份和恢复)。源码地址:https://github.com/checkpoint-restore/criu。官 网:http://criu.org。原创 2023-10-30 15:20:14 · 212 阅读 · 0 评论