如何实现主动的数据同步 - V2EX
allenloong

如何实现主动的数据同步

  •  
  •   allenloong Apr 3, 2020 2234 views
    This topic created in 2235 days ago, the information mentioned may be changed or developed.
    有一些计算会在远程的机器上完成,会生成比较大的数据量。计算完成后,需要取回到本地。

    希望能够实现,在计算完成后,本地机器主动去取回数据。

    目前的方案:使用 rsync 去每小时同步远程的目录,同步前 kill 掉还在进行的 rsync 。
    存在的限制:
    1.远程机器上无法安装新工具,只有普通的权限,不能长时间运行程序 /脚本。
    2.远程的数据生成事件不定时,不能提前预测。
    3.因为数据比较大,传输时间通常要好几个小时。

    想请教大家有没有好的解决方案,谢谢。
    11 replies    2020-04-04 23:55:35 +08:00
    noparking188
        1
    noparking188  
       Apr 4, 2020
    本地机器跑个后台进程
    noparking188
        2
    noparking188  
       Apr 4, 2020
    不断请求询问远程机器计算任务跑完了没有
    noparking188
        3
    noparking188  
       Apr 4, 2020
    不好意思仔细看第一条,那可以本地周期性地 ssh 远程执行 shell 脚本,这个脚本监控计算任务是否完成,我不清楚这种计算是啥,可以看查看进程状态或者观察是否有数据文件生成
    noparking188
        4
    noparking188  
       Apr 4, 2020
    @noparking188 没仔细
    ackoly
        5
    ackoly  
       Apr 4, 2020 via iPhone
    1.远程机器上无法安装新工具,只有普通的权限,不能长时间运行程序 /脚本
    为啥不能长时间运行?是指连接会断吗? nohup 用过没。
    这应该用一个常驻的 rsync 就能搞掂
    WispZhan
        6
    WispZhan  
       Apr 4, 2020 via Android
    自己写 agent+hook
    allenloong
        7
    allenloong  
    OP
       Apr 4, 2020
    @noparking188 #3 现在就是这样做的 rsync 直接去看一个目录,有东西就同步。但是因为传的时间比较长,可能有新的文件了,上一次的还没传完。或许我该用 ignore existing ?
    allenloong
        8
    allenloong  
    OP
       Apr 4, 2020
    @ackoly #5 rsync 是没问题的,或许我该使用 ignore existing 这样每个小时执行一次脚本,也只会同步新的,进行中的也不用 kill 掉了。
    allenloong
        9
    allenloong  
    OP
       Apr 4, 2020
    @WispZhan #6 emmmm 我去看看 不是很了解。
    also24
        10
    also24  
       Apr 4, 2020 via Android
    无外乎三种方式:轮询 / 长连接 / 回调

    以及封装好的 MQ
    ackoly
        11
    ackoly  
       Apr 4, 2020 via iPhone
    @allenloong rsync 有服务模式,可以常驻,不清楚是否需要高权,你可以查下。
    About     Help     Advertise     Blog     API     FAQ     Solana     902 Online   Highest 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 45ms UTC 22:23 PVG 06:23 LAX 15:23 JFK 18:23
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86