2

嗨,我对moodle很陌生,我想了解一些关于使moodle脱机以及可以在服务器和客户端之间使用的同步技术的想法。(用于数据库同步和文件夹内容同步)。请提供一些有关这方面的信息。提前致谢

4

2 回答 2

3

您可以为此使用 Gears。看看这个插件:

离线 Moodle:Google Gears 缓存 http://moodle.org/mod/data/view.php?d=13&rid=2636&filter=1

于 2011-11-10T14:17:57.813 回答
1

这是我的想法。这是假设客户端安装了 Moodle 的本地副本,但所有数据都在服务器上。

服务器 -> 客户端同步很容易。您的服务器需要公开数据库模式 + 数据。当你的数据库变大时,最好只发送一个 db diff(每次客户端与服务器同步时,拍摄 db 转储的快照并记下同步时间,然后当客户端想要再次同步时比较当前数据库和上次同步时的快照并仅发送差异)。您可以使用rsync.

客户端 -> 服务器同步很棘手。假设 A 教授和 B 教授在离线时创建了两个具有两个不同名称的不同课程。但是,由于数据库的工作方式,两个课程可能在数据库中具有相同的 ID,这会破坏事情。这里有一个疯狂的想法,如何在不修改 Moodle 代码库的情况下解决它:如果你使用 MySQL,在每次同步时给每个用户一个不同的 AUTO_INCREMENT 数字。例如,在教授 A 与服务器同步后,他收到信息,课程表的下一个自动生成的 ID 应该是 10000,而对于教授 B,它是 20000。如果教授 A 创建一个新课程,它将具有 ID = 10001 和教授 B新课程将是 20001。这样教授可以创建多达 10000 个新课程而不会导致 ID 冲突。但是,这不会保护您免受恶意攻击。

看起来你不是唯一一个考虑让 Moodle 下线的人。

于 2011-04-27T18:50:12.713 回答