草庐IT

指挥调度

全部标签

python - 来自 Airflow 调度程序的奇怪类型错误——在 v1.9 中是否更改了 @once 用于调度程序间隔的用法?

我有一个super简单的测试DAG,如下所示:fromdatetimeimportdatetimefromairflow.modelsimportDAGfromairflow.operators.python_operatorimportPythonOperatorDAG=DAG(dag_id='scheduler_test_dag',start_date=datetime(2017,9,9,4,0,0,0),#..EC2time.Equalto11pmhoraMéxicomax_active_runs=1,schedule_interval='@once'#externallytri

python - 自定义调度程序以具有带超时/终止开关的顺序 + 半顺序脚本?

下面是我的代码的很大一部分,基本上,如果您向下滚动到execute_subscripts()函数,您可以看到我有两个通过execfile运行的脚本工作精美,它们显示prints,它们将traceback错误保存到错误文件中。我正在尝试将第二个脚本变成一个不等待自己完成就可以继续下一个脚本的脚本。如您所见,我尝试将subprocess与Popen一起使用来启动一个静默的隐藏窗口...但是它似乎没有运行而且我有不知道如何正确使用p.communicate()函数来检索tracebacks和/或prints。我也...需要帮助创建某种超时/终止开关,所以如果通过Popen或execfile路

python - 什么是动态调度和鸭子类型?

在使用Pycharm时,经常会指出错误,说:Unresolvedreference'name'.Thisinspectiondetectsnamesthatshouldresolvebutdon't.Duetodynamicdispatchandducktyping,thisispossibleinalimitedbutusefulnumberofcases.Top-levelandclass-levelitemsaresupportedbetterthaninstanceitems.我已经四处窥探了这一点,但我发现的大多数问题和信息都是关于防止显示消息的。我想知道的是:什么是动态调度

python - 类似 cron 的循环任务调度程序设计

假设您想安排重复性任务,例如:每周三上午10点发送电子邮件在每个月的第一天创建摘要并且您想在Web应用程序中为合理数量的用户执行此操作-即。10万个用户,每个用户可以决定他们想要什么时间安排。并且您希望确保计划的项目运行,即使它们最初被错过-例如。由于某种原因,电子邮件没有在星期三上午10点发送,它应该在下一个检查时间间隔发送,比如星期三上午11点。你会如何设计?如果您使用cron每x分钟触发您的日程安排应用程序,那么实现决定在每个时间点应该运行什么的部分的好方法是什么?我见过的类似cron的实现将当前时间与所有指定项目的触发时间进行比较,但我也想处理遗漏的项目。我觉得有比我正在设计的

python - APScheduler(高级Python调度器) ImportError : No module named scheduler

我有以下导入错误“导入错误:没有名为调度程序的模块”当我运行以下python脚本时:"""Demonstrateshowtousetheblockingschedulertoscheduleajobthatexecute$"""fromdatetimeimportdatetimeimportosfromapscheduler.schedulerimportBlockingSchedulerdeftick():print('Tick!Thetimeis:%s'%datetime.now())if__name__=='__main__':scheduler=BlockingSchedule

python - 在 uwsgi 应用程序中启动 APScheduler 最终会为每个 worker 分配一个调度程序吗?

我有一个flask应用程序,我需要APScheduler的调度功能。问题是:我在哪里启动调度程序实例?我使用uwsgi+nginx为这个应用程序提供多个worker,我最终不会得到多个Scheduler实例,它们会相互忽略吗?如果这是正确的,一个作业会被触发多次,不是吗?在这种情况下最好的策略是什么,这样我最终只有一个Scheduler实例并且仍然能够从计划的作业中访问应用程序的上下文?Thisquestion尽管使用gunicorn而不是uwsgi也有同样的问题,但答案可能是相似的。下面是将“app”定义为uwsgi可调用应用程序对象的代码。包含此代码的文件称为wsgi.py(无关紧

python - 一次指挥大量敌人

我正在开发一个简单的2d游戏,其中许多敌人不断产生并追逐python+pygame中的一个或多个玩家。我遇到的一个问题是,许多编写此类游戏的人都遇到过这样的问题,那就是敌人聚集得非常快。我已经用一个功能临时解决了这个问题,如果他们彼此太靠近,可以将任何两个敌人随机推开。这很好用,但它是关于每帧运行的O(n^2)算法,并且在高敌人处程序开始变慢。当我的程序使用这个函数运行时,敌人似乎形成了我称之为“团block”的圆形物体。团block似乎通常是黄道,但实际上可能更复杂(不对称),因为随着玩家的移动,敌人被拉向不同的方向。我确实喜欢这个团block的行为方式,但是我想知道是否有更有效的方

Airflow 中的Python脚本调度

大家好,我需要使用Airflow安排我的python文件(其中包含从sql和一些连接中提取的数据)。我已经成功地将airflow安装到我的linux服务器中,并且我可以使用airflow的网络服务器。但即使在阅读了文档之后,我也不清楚我到底需要在哪里编写调度脚本,以及该脚本如何在airflow网络服务器中可用,以便我可以看到状态/p>就配置而言,我知道dag文件夹在我的主目录中的位置以及示例dag所在的位置。注意:请不要将此标记为与如何在Airflow中运行bash脚本文件重复,因为我需要运行位于其他位置的python文件。请在Airflow网络服务器中找到配置为:下面是AIRFLOW

分布式可视化 DAG 任务调度系统 Taier 的整体流程分析

Taier作为袋鼠云的开源项目之一,是一个分布式可视化的DAG任务调度系统。旨在降低ETL开发成本,提高大数据平台稳定性,让大数据开发人员可以在Taier直接进行业务逻辑的开发,而不用关心任务错综复杂的依赖关系与底层的大数据平台的架构实现,将工作的重心更多地聚焦在业务之中。本文将从Taier的流程简述、结构分析以及可扩展点三个方面对Taier的整体流程进行分析探讨。Taier流程简述Taier主从划分Taier是一个单独的应用,进程无主从划分,多实例运行时通过ZK实现主从划分。基于LeaderLatch进行实现,启动时抢到锁的节点即为主(Master),没有抢到锁的即为从(Worker),会出

python - 为什么 Django 和 CherryPy 本身不支持基于 HTTP 动词的调度?

POST到URL与GET、DELETE或PUT不同。这些Action是根本不同的。然而,Django似乎在其调度机制中忽略了它们。基本上,人们被迫要么完全忽略HTTP动词,要么在每个View上都这样做:defmy_view(request,arg1,arg2):ifrequest.method=='GET':returnget_view(request,arg1,arg2)ifrequest.method=='POST':returnpost_view(request,arg1,arg2)returnhttp.HttpResponseNotAllowed(['GET','POST'])