דרוש מתכנת PHP לעבודת תכנות קטנה

  • הוסף לסימניות
  • #1
יש לי אתר ובו קבצי מוזיקה רבים. בעמוד אחד יכולים להיות 30-40 קבצי שמע MP3. ישנו כפתור להורדה מרובה של הקבצים. הם יורדים כקובץ זיפ [כיווץ 0]. הבעיה היא שלפעמים הקובץ יוצא פגום, בגלל מגבלת שרת, כשהפעולה מתארכת והקובץ מגיע לכדי 1 ג"ב ויותר.
מישהו אמר לי שאם הפעולה של הכיווץ תיעשה תחילה בשרת ורק אח"כ תוריד את הקובץ, זה יעבוד היטב.
א. האם זה נכון?
ב. אם כן - אני זקוק למתכנת כדי לבצע פעולה זו, עם עוד כמה פרמטרים לפקודה הזו.
תודה!
 
  • הוסף לסימניות
  • #2
פסו מתכנתים מפרוג??
 
  • הוסף לסימניות
  • #3
לא פסו, כי עד כמה שזכור לי המתכנת שכתב לך את הקוד, והמתכנת שהכין לך אותו להטמעה בוורדפרס הם חברים נכבדים פה בפורום, וזה לא היה כל כך מזמן.
כך בחשבון שאם הכיווץ יתבצע בשרת זה ייתן לאנשים הרבה זמן לחכות עד שהכיווץ יתבצע.
 
  • הוסף לסימניות
  • #4
המתכנתים שעזרו לי אז - היום עסוקים בנטפרי עד מעל לראשם...

איני מתלונן, גם אני צרכן של נטפרי...

בנוגע לזמן - מדובר בזיפ 0 [-ללא כיווץ] כך שזה אמור להיות מהיר.

תודה!
 
  • הוסף לסימניות
  • #5
לא ממש הבנתי.
איפה עכשיו מתבצע הכיווץ של הקבצים? לא בשרת?
לכאורה הכיווץ אמור להיעשות בשרת, ורק אחרי שהקובץ מוכן הוא יורד.

אפשר גם לעשות שכל פעם שמתווסף שיר חדש לעמוד, הוא מריץ סקריפט שרץ ברקע ומאחד את כל השירים בעמוד לקובץ זיפ. כך במקום שכל פעם שמשתמש לוחץ על הורדה השרת יבצע כיווץ, הוא יבצע אותו פעם אחת והמשתמש רק יוריד את הקובץ שכבר מכווץ.
 
  • הוסף לסימניות
  • #6
הבעיה שזה מבצע קיבוץ כחלק REQUEST של הדף.

היינו שהמתמש קורה לדף הורדה אז מבצע בצורה סינכרונית קיבוץ (ON THE FLY)
ומילא המשתמש ממתין עד שזה מסיים או מקבל השרת TIMEOUT ובמקרה הכי גרוע עם צריכת ה CPU עולה של הקיבוץ ביחס המשאב המוקצה אז השרת נתקע.

יש לזכור שזה שרת שהוא SHARED HOST ולא תמיד נותנים להשתמש בכל ה CPU של החומרה.

ברמת העקרון ניתן לבצע את הפתרון לזה בכמה אופנים:
* ליצור CRON שמייצר לכל תקיות שהתעדכנו קובץ ZIP
* לבנות מנגנון דחיסת תקיות לקובץ - שמוודא שאם הקובץ קיים אז יוריד - אם אינו קיים או לא מעודכן* ליצור מחדש ולדרוס את הישן
* ליצור שהמשתמש הראשון יצור קובץ לפי סעיף קודם - ואם הקובץ קיים יועבר אוטומטית.
(טכניקה של בדיקה ע"י HEAD עם אינו 404 כל X שניות. וברגע שמחזיר 200. המשתמש מועבר לקובץ - וכך מורידו)

יש עוד כל מיני טכניקות. שקצר זמני מלפרט
שיהיה בהצלחה.
 
  • הוסף לסימניות
  • #7
נכתב ע"י יהודהלה;1926979:
הבעיה שזה מבצע קיבוץ כחלק REQUEST של הדף.

היינו שהמתמש קורה לדף הורדה אז מבצע בצורה סינכרונית קיבוץ (ON THE FLY)
ומילא המשתמש ממתין עד שזה מסיים או מקבל השרת TIMEOUT ובמקרה הכי גרוע עם צריכת ה CPU עולה של הקיבוץ ביחס המשאב המוקצה אז השרת נתקע.

יש לזכור שזה שרת שהוא SHARED HOST ולא תמיד נותנים להשתמש בכל ה CPU של החומרה.

ברמת העקרון ניתן לבצע את הפתרון לזה בכמה אופנים:
* ליצור CRON שמייצר לכל תקיות שהתעדכנו קובץ ZIP
* לבנות מנגנון דחיסת תקיות לקובץ - שמוודא שאם הקובץ קיים אז יוריד - אם אינו קיים או לא מעודכן* ליצור מחדש ולדרוס את הישן
* ליצור שהמשתמש הראשון יצור קובץ לפי סעיף קודם - ואם הקובץ קיים יועבר אוטומטית.
(טכניקה של בדיקה ע"י HEAD עם אינו 404 כל X שניות. וברגע שמחזיר 200. המשתמש מועבר לקובץ - וכך מורידו)

יש עוד כל מיני טכניקות. שקצר זמני מלפרט
שיהיה בהצלחה.

ליוהדלה, תודה, אכן כל הרעיונות מצוינים ועונים על הדרישות!
 

פרוגבוט

תוכן שיווקי
פרסומת

פוסטים חדשים שאולי לא קראת....

הצטרפות לניוזלטר

איזה כיף שהצטרפתם לניוזלטר שלנו!

מעכשיו, תהיו הראשונים לקבל את כל העדכונים, החדשות, ההפתעות בלעדיות, והתכנים הכי חמים שלנו בפרוג!

לוח מודעות

הפרק היומי

הפרק היומי! כל ערב פרק תהילים חדש. הצטרפו אלינו לקריאת תהילים משותפת!


תהילים פרק כה

אלְדָוִד אֵלֶיךָ יי נַפְשִׁי אֶשָּׂא:באֱלֹהַי בְּךָ בָטַחְתִּי אַל אֵבוֹשָׁה אַל יַעַלְצוּ אֹיְבַי לִי:גגַּם כָּל קוֶֹיךָ לֹא יֵבֹשׁוּ יֵבֹשׁוּ הַבּוֹגְדִים רֵיקָם:דדְּרָכֶיךָ יי הוֹדִיעֵנִי אֹרְחוֹתֶיךָ לַמְּדֵנִי:ההַדְרִיכֵנִי בַאֲמִתֶּךָ וְלַמְּדֵנִי כִּי אַתָּה אֱלֹהֵי יִשְׁעִי אוֹתְךָ קִוִּיתִי כָּל הַיּוֹם:וזְכֹר רַחֲמֶיךָ יי וַחֲסָדֶיךָ כִּי מֵעוֹלָם הֵמָּה:זחַטֹּאות נְעוּרַי וּפְשָׁעַי אַל תִּזְכֹּר כְּחַסְדְּךָ זְכָר לִי אַתָּה לְמַעַן טוּבְךָ יי:חטוֹב וְיָשָׁר יי עַל כֵּן יוֹרֶה חַטָּאִים בַּדָּרֶךְ:טיַדְרֵךְ עֲנָוִים בַּמִּשְׁפָּט וִילַמֵּד עֲנָוִים דַּרְכּוֹ:יכָּל אָרְחוֹת יי חֶסֶד וֶאֱמֶת לְנֹצְרֵי בְרִיתוֹ וְעֵדֹתָיו:יאלְמַעַן שִׁמְךָ יי וְסָלַחְתָּ לַעֲוֹנִי כִּי רַב הוּא:יבמִי זֶה הָאִישׁ יְרֵא יי יוֹרֶנּוּ בְּדֶרֶךְ יִבְחָר:יגנַפְשׁוֹ בְּטוֹב תָּלִין וְזַרְעוֹ יִירַשׁ אָרֶץ:ידסוֹד יי לִירֵאָיו וּבְרִיתוֹ לְהוֹדִיעָם:טועֵינַי תָּמִיד אֶל יי כִּי הוּא יוֹצִיא מֵרֶשֶׁת רַגְלָי:טזפְּנֵה אֵלַי וְחָנֵּנִי כִּי יָחִיד וְעָנִי אָנִי:יזצָרוֹת לְבָבִי הִרְחִיבוּ מִמְּצוּקוֹתַי הוֹצִיאֵנִי:יחרְאֵה עָנְיִי וַעֲמָלִי וְשָׂא לְכָל חַטֹּאותָי:יטרְאֵה אוֹיְבַי כִּי רָבּוּ וְשִׂנְאַת חָמָס שְׂנֵאוּנִי:כשָׁמְרָה נַפְשִׁי וְהַצִּילֵנִי אַל אֵבוֹשׁ כִּי חָסִיתִי בָךְ:כאתֹּם וָיֹשֶׁר יִצְּרוּנִי כִּי קִוִּיתִיךָ:כבפְּדֵה אֱלֹהִים אֶת יִשְׂרָאֵל מִכֹּל צָרוֹתָיו:
נקרא  2  פעמים
למעלה