zoukankan      html  css  js  c++  java
  • 01 salt平台,软件架构图

    1、前期调研

    1、别人家的

    https://www.cnblogs.com/ssyfj/p/9060367.html#top

    https://www.cnblogs.com/evilliu/articles/6137336.html

    2、我的salt平台调研

    2、技术难点

    1、同步执行

    1、saltapi传送command过去,此时处于等待中,一般设置TIMEOUT,来控制执行时间

    2、对于时间执行长的command,比如:top -b -n 10 或python test.py 之类的,根本不能用超时时间

    3、还有一类,只是返回执行结果,并不能返回执行是否成功,没有 retcode (或许哪里可以设置添加该字段,目前我还没学到)

    2、异步执行

    1、利用local_sync,来进行异步执行。

    2、发送command过去,saltapi会立刻返回jobid。

    3、根据jobid去查询命令结果

    痛点:

    1、得到jobid,什么时候查询结果呢?

    有些命令或者脚本比较耗时,比如:top -b -n 10 或python test.py 

    方法1:

    做过的操作,设置count=10,不断循环读取jobid中的ret,这样会被打死吗

    另外,如果还是没有执行完成,返回的是 {},但是过一会命令就执行完了,并不能说执行失败

    方法2:

    前端不断发送ajax请求,去查询,这样也会被打死

    2、jobid得到的结果,会在cache中缓存24小时(默认)

    如果,得到jobid的话,用户并没有 lookup_jobid

    前端又是何时去lookup呢?过了24小时,data就会消失,如果再第三天,看到该命令的执行结果呢?

    3、解决方法:

    目前看到的是,利用--return mysql 组件

    临时表:

        在master的配置文件中配置,设置mysql相关配置

        执行完成会自动,在mysql插入data,把该表当做临时表

        然后存入,项目对应的数据库表中,

    目前还在探索中...............

  • 相关阅读:
    数组 滑动窗口
    爬虫案例 下载某文库付费文档 全格式
    双指针 三数之和
    双指针 四数之和
    双指针法 环形链表 II
    判断是否手机端
    C# 模拟点击
    chrome 扩展开发注意事项
    破解拖动验 证码
    //刷新任务栏图标 终止别的进程序有些程序有托盘会残留
  • 原文地址:https://www.cnblogs.com/venicid/p/11944675.html
Copyright © 2011-2022 走看看