- 主题:求教,两台主机之间数据交互用什么机制比较好
需求其实很简单,一份数据,A B两台主机上都有
A主机每天会从远端获取一些新数据添加到源数据上,B主机也希望能够获得这些新数据
(B主机没有直接访问远端的权限),
1.在A主机执行完更新任务后,用什么方式通知B主机来向A主机获取新数据
(最原始的想法是用邮件,但是需要定时去查看邮箱,有点麻烦)
2.A主机用什么方式向B主机传输数据最简单
(看网上一般推荐用django写几个API,不知道有没有更轻量级一些的方法)
--
FROM 171.82.190.*
执行完任务之后,调用 ssh
ssh user@host_b "/usr/local/bin/your_exe mission_completed"
当然,最好开启证书登录。
【 在 phanten (phanten) 的大作中提到: 】
: 需求其实很简单,一份数据,A B两台主机上都有
: A主机每天会从远端获取一些新数据添加到源数据上,B主机也希望能够获得这些新数据
: (B主机没有直接访问远端的权限),
: ...................
--
修改:hgoldfish FROM 112.47.122.*
FROM 112.47.122.*
Django比较重,可以用flask之类的比较轻的框架写个http服务
【 在 phanten (phanten) 的大作中提到: 】
: 需求其实很简单,一份数据,A B两台主机上都有
: A主机每天会从远端获取一些新数据添加到源数据上,B主机也希望能够获得这些新数据
: (B主机没有直接访问远端的权限),
: ...................
--
FROM 111.202.234.*
两种模式,1、A主动模式,A数据变化后,A主动修改B的数据库就行;2、B主动模式,B定时访问A的数据库,保持同步。这两种模式代码最简单就是基于数据库访问,,当然写个api接口也没问题。
【 在 phanten 的大作中提到: 】
: 需求其实很简单,一份数据,A B两台主机上都有
: A主机每天会从远端获取一些新数据添加到源数据上,B主机也希望能够获得这些新数据
: (B主机没有直接访问远端的权限),
: ...................
--
FROM 182.48.101.*
【 在 phanten 的大作中提到: 】
: 需求其实很简单,一份数据,A B两台主机上都有
: A主机每天会从远端获取一些新数据添加到源数据上,B主机也希望能够获得这些新数据
: (B主机没有直接访问远端的权限),
: ...................
方法有很多啊
最简单的文件操作, 说白了就像软件升级。 A数据更新完保存一份增量文件,
然后文件可用走FTP协议传输给B或由B主动下载
内存数据库方法, 用redis或者memcached保存更新
传统数据库, 保存到Mysql里面, 通过主从数据库可用自动更新
自己通过socket程序交换数据
采用RPC协议交换数据
通过web socket交换数据
采用什么方法,其实取决于你的数据情况, 二进制文件,格式不明确就用文件传输
结构化数据,量大 有线采用数据库
数据量不大,更新频繁,可以考虑内存数据
半结构化, 如jason数据,网页数据, 使用web socket, 或者搭建一些流服务器如rabitmq,或者kafka之类的也是可以考虑的
--
FROM 115.171.245.*
【 在 poggy 的大作中提到: 】
:
: 方法有很多啊
: 最简单的文件操作, 说白了就像软件升级。 A数据更新完保存一份增量文件,
: ...................
大哥,好全。
--
FROM 221.220.131.*
redis/mysql之类的数据库都有现成的主从备份方案,把A设为主,B设为从,基本就不用手动操作了。
我觉得redis是最简单的。
--
FROM 101.88.152.*
随便一个机器上装过mysql
--
FROM 111.196.185.*