我有一个本地PHP Web应用程序,每天都会更新新内容和更新的内容。这是存储在MYSQL5中。
我还维护一个相关图像的文件系统,由mysql中的表跟踪。我没有走下blob路线 - 这是使用linux文件系统。
对数据进行了每日更新,将图像与服务器同步的最佳方法是什么?
我使用的是PHP5,但对外部调度程序不起作用。
我的图像按以下顺序存储:
media/id/imagename.jpg
即
media/123/123_1.jpg
media/123/123_2.jpg
media/1234/1234_1.jpg
media/1234/1234_2.jpg
答案 0 :(得分:1)
关于如何保持文件同步的问题的答案就是使用专为此工作设计的工具 - 如rsync,或使用复制/共享文件系统。但是在你的情况下,大概你想要mysql记录来反映文件的状态。
为了做到这一点,我建议编写一对PHP脚本(一个在发送端,一个在接收端)。为了在这里添加一些安全性,我不会让接收端捕获任何旧数据 - 而是让源服务器向接收端发出提供元数据的请求 - 然后接收端将轮询图像数据从源到创建副本(并在完成后写入mysql记录)。
考虑实施某种事务控制也是一个好主意 - 以确保两端同步而不必复制每个文件。