Saya memiliki pengaturan pekerjaan cron yang menggunakan skrip untuk mengunduh banyak file dari FTP ke server lokal pada waktu yang ditentukan. Ini berfungsi dengan baik ketika saya menjalankan skrip secara manual, bahkan berfungsi dengan baik 9 dari 10 kali melalui cron. Namun, kadang-kadang salah satu file yang disetel gagal, dan memunculkan kesalahan serupa:
ftp_get(): Opening BINARY mode data connection for Media_4.zip (421623342 bytes). in /home/crons/feeds/get_files.php on line 102
baris 102 adalah ftp_get(), saya tahu tidak ada yang salah dengan itu karena berfungsi dengan baik ketika dijalankan secara manual/upaya otomatis lainnya, tetapi untuk kejelasan penuh:
foreach ($download_files as $download_file)
{
$local_file = "{$path}/files/{$download_file}";
$download = ftp_get($conn_id, $local_file, $download_file, FTP_BINARY);
if (!$download)
{
ftp_dl_log($queue_number, "FTP download has failed for $source_name: $download_file", "warn");
}
else
{
ftp_dl_log($queue_number, "Downloaded file successfully");
}
}
Saya ragu ini ada hubungannya dengan ukuran file, izin, atau semacamnya, totalnya ada ~2gb tersebar di beberapa file total yang diunduh, terkadang sepertinya hanya gagal pada salah satu file, semua file lainnya diambil tanpa a masalah jadi saya cukup bingung. Contoh dari semua file adalah:
Media_1.zip (600mb, downloads fine)
Media_2.zip (200mb, downloads fine)
Media_3.zip (700mb, downloads fine)
Media_4.zip (400mb, downloads fails)
Media_5.zip (300mb, downloads fine)
Media_6.zip (250mb, downloads fine)
Media_summary.csv (2mb, downloads fine)
Pembatasan ukuran tidak menjadi masalah dan batas waktu juga tidak terjadi.
File yang saya gunakan sebagai contoh telah diunggah ke ftp @
Oct 31 17:27
dan ftp_get() untuk file tersebut muncul @
Nov 01 03:14
Jadi tidak mungkin file tersebut belum lengkap pada saat diminta. Dan mengingat saya dapat ftp_get() file yang sama tanpa kesalahan nantinya, itu tidak rusak.
Adakah yang mengetahui hal lain yang dapat menyebabkan masalah ini? Apakah server yang melakukan pengambilan lain secara bersamaan dapat menyebabkan masalah?
Setiap saran atau wawasan akan diterima.