【问题标题】:Sync Laravel Local mysql database with LIVE server database manual code from Local system using CRON job and CURL使用 CRON 作业和 CURL 将 Laravel 本地 mysql 数据库与本地系统中的 LIVE 服务器数据库手动代码同步
【发布时间】:2022-01-11 11:04:33
【问题描述】:

我希望本地数据库与使用 LARAVEL 中的 CURL 和 CRON 作业的实时数据库同步,而不是使用第三方工具手动代码

【问题讨论】:

    标签: php mysql curl cron laravel-8


    【解决方案1】:

    这几乎是一个复杂的问题。你需要注意一堆概念:

    CAP Theorem

    在 CAP 定理(也称为 Brewer 定理)中,我们知道任何 分布式数据存储只能提供以下三种中的两种 保证:

    • 一致性

    每次读取都会收到最近的写入或错误。

    • 可用性

    每个请求都会收到一个(非错误)响应,但不能保证它包含最近的写入。

    • 分区容错

    尽管节点之间的网络丢弃(或延迟)任意数量的消息,系统仍继续运行。

    由于您在所需情况下具有分区容错性,因此您的问题是在一致性和高可用性之间进行选择。

    我提到这个定理是为了提醒您,无论您要求什么解决方案,您都无法保证它们都适用。

    无论如何...

    数据库的可用性和一致性问题是信息技术领域的热门争论之一。有几种方法可以实现这样的目的,例如使用:

    • 实现集群
    • 主/从 - 主/主 - 主动/被动 - 主动-主动 - 等架构
    • 使用变更日志保持两个数据库同步
    • 实现 CDC 或类似的结构
    • 以及所有其他解决方案。

    所以我必须说,如果不使用一些系统级配置的第三方库,你的问题就无法解决,你不能只用一个简单的 CURL 来解决。

    但如果您坚持使用最接近的 curl 方法,您可以使用 NFS,通过获取 SQL 备份并加载它而不是本地备份。

    【讨论】:

    • 能否请您一步一步向我发送完整的代码,以便我可以使用 CURL 获得更好的想法?什么是 NFS?
    • NFS = 网络文件共享 / 很遗憾我不能在这里写这样一个循序渐进的教程,它需要你必须做的系统专业或研发。
    • 很棒的信息/tnx @behzadmsalehi
    猜你喜欢
    • 2011-04-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-08
    • 2011-12-14
    • 2016-04-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多