סקלווי: חיבור לקבצים שנמצאים בINSTANCE אחר
-
לא אני לא רוצה לחסוך מקום, אלא לחסוך עומסים
לא כל כך רלוונטי להעתיק הקבצים כי יש שינויים כל הזמן
אני רוצה שיהיה שרת אחד עם הקבצים, ושרתים אחרים עליהם האסטריסק יעבוד, והם ישמיעו את הקבצים שיש באיחסוןהקמתי BUCKET בסקלווי, עדיין לא הבנתי איך לגשת לזה מהשרת, אבל אני צריך לראות את הדוק שלהם
-
@clickone אמר בסקלווי: חיבור לקבצים שנמצאים בINSTANCE אחר:
@שואף
למה שלא תשתמש ב buckets?
https://console.scaleway.com/object-storage/buckets
זה עובד כמו S3 של אמזוןניסית פעם לחבר את זה ככונן?
עשיתי לפי ההוראות שלהם, קודם יוצר תיקייה ונותן לה הרשאות, ואחרי זה מעלה שם את הבקט, ואז התיקייה נהיית איקסים.
פספסתי משהו?root@PBX100:~# mkdir /var/s3f/a root@PBX100:~# chmod 777 /var/s3f/a root@PBX100:~# s3fs a /var/s3f/a -o passwd_file=${HOME}/.passwd-s3fs,url=s3.fr-par.scw.cloud root@PBX100:~# cd /var/s3f/ root@PBX100:/var/s3f# ll ls: cannot access 'a': Transport endpoint is not connected total 0 d????????? ? ? ? ? ? a
-
הייתי שוב צריך, ומתברר שכנראה הבעיייה היתה שהיה חסר https בURL
כעת עובד תקין, העלתי הBUCKET בתוך תיקייה, ועכשיו מתוך השורת פקודה אני רואה את הקבצים, יכול להציג רשימת הקבצים, לבדוק כמה שוקל כל קובץ וכו'
אבל כשהPHP מנסה לגשה לקבצים, הם לא קיימים, ואם אני עושה file_size זה מחזיר לי שגיאהfilesize(): stat failed for /mnt/data/bucket/welcome.wav
יש כיוון?
תודה רבה -
@dovid אחרי הכל חזרתי לעיצה שלך והיא היתה (כמובן) הכי טובה, חיבור לשרת אחר עם SSHFS (שניהם על אותו LAN), הכל תקין ב"ה, החיבור מהיר מאוד, האסטריסק מנגן קבצים בלי השהייה (אולי חצי שניה, אבל אפשר לסבול את זה).
אם ככה, כנראה מה שאעשה יהיה שרת MYSQL, שרת קבצים (אולי אפשר שניהם על אותו שרת בעצם), וכמה שרתי אסטריסק שמושכים נתונים מהMYSQL ומחוברים בSSHFS לשרת קבצים.רק יש נקודה שאני לא יודע איך היא תסתדר, זה שיש לי שלוחות בהם אפשר להשאיר הודעות, וזה כל פעם מסתכל מה המספר של הקבץ האחרון ומוסיף אחד ומייצר קובץ חדש, וכך ההודעות הם בסדר מספרים רץ.
השאלה מה יהיה אם שני שרתים יגשו לשרת קבצים וישאלו מה הקבץ האחרון, ושניהם ייצרו ביחד קובץ חדש עם אותו שם.. האמת שכבר כעת יש לי את הבעייה אם שני אנשים מתקשרים ביחד ורוצים להשאיר הודעה באותה שניה, ובאמת לא חשבתי על זה עדיין, אבל השאלה אם בצורה הזו שיש כמה מכונות מחוברות בSSH אם זה יהיה יותר חמור.
מה אומרים?@clickone לגבי הבקט, עדיין זה פיתרון נפלא לגיבוי.
-
@שואף אמר בסקלווי: חיבור לקבצים שנמצאים בINSTANCE אחר:
האמת שכבר כעת יש לי את הבעייה אם שני אנשים מתקשרים ביחד ורוצים להשאיר הודעה באותה שניה, ובאמת לא חשבתי על זה עדיין, אבל השאלה אם בצורה הזו שיש כמה מכונות מחוברות בSSH אם זה יהיה יותר חמור.
לדעתי תעשה שם (ותיקיה) זמני שמורכב ממספר הטלפון ושעון יוניקס.
ובסיום אישור ההקלטה אתה בודק מה המספק האחרון, ומבצע העתקה/שינוי שם לשם המבוקש. -
@שואף ב'ימות' ההקלטות בכלל לא נמצאות עד שלא סיימת אותם,
כנראה מהסיבה הזו.העצה של @חוקר הכי לעניין.
@חוקר אמר בסקלווי: חיבור לקבצים שנמצאים בINSTANCE אחר:
לדעתי תעשה שם (ותיקיה) זמני שמורכב ממספר הטלפון ושעון יוניקס.
ובסיום אישור ההקלטה אתה בודק מה המספר האחרון, ומבצע העתקה/שינוי שם לשם המבוקש. -
-
@שואף אמר בסקלווי: חיבור לקבצים שנמצאים בINSTANCE אחר:
@dovid לא, אני חייב את המיספור רץ, ככה אפשר אחרי זה לאתר הודעות (אנשים יכולים ללחוץ במהלך שמיעת ההודעה ולדעת מה מספר ההודעה, ואחר כך לחזור להודעה הזו לפי המספר.
אני עסוק כעת מלענות לך בהרחבה אז רק אומר שזה לא סותר, אתה יכול לתת להם מספר, ולשמור את הקובץ עם זיהוי כמו שאמרתי.
-
@שואף אני אמרתי לך לא לקרוא לקבצים במספר רץ.
אלא מה? ייצוג טקסטואלי ייחודי כל שהוא. למשל במקרה הזה אתה יכול לקחת את מס' המשתמש/שיחה + זמן יצירת הקובץ.
כעת שאתה אומר שאתה רוצה לספק למשתמש מספר איתו הוא יוכל להתייחס לקובץ, תוכל פשוט לתת מספר רץ פר משתמש, או כל דרך ייחודית שתימצא לנכון, בה צירוף המספר שאתה נותן למשתמש יחד עם נתון/נים אחרים ייצור יחודיות. תצטרך לוודא שכשהמשתמש ירצה להתייחס להודעה, תוכל ללדעת את שאר הנתונים וככה להרכיב את מזהה הקובץ שיהיה קימבון של המזהים עם MD5 וכל זה.כל זה כתבתי לספורט להעמיד את דברי שלא ירדו לעמוק הסיפור.
אבל בראיה שניה פשוט לי שהדרך היא להעביר את האחריות הזו למסד - לפני יצירת קובץ אתה יוצר שורה במסד ולוקח את מזהה השורה. ככה גלגלת את בעיית הבו זמניות למסד נתונים שהוא בנוי לעבוד עם זה מצויין.
עדיין הפתרון של הMD5 טוב למקרה שתרצה ליצור את הקובץ מיייד לפני המסד, ורק אח"כ לעדשכן במסד את המזהה ולשלוף בוו העת עם המספר רץ של המסד. -
אני משתמש כבר כמה ימים בSSHFS, זה פיתרון נפלא לבעייה שלי
יש שרת MASTER שעליו הקבצים, ו4 שרתים SLAVE שמחוברים לקבצים שלואבל מידי פעם החיבור לקבצים נופל, ואני מקבל שגיאה
ls: cannot access 'remoteAsterisk': Transport endpoint is not connected
האם יש הגבלה לכמות השרתים שיכולים להתחבר לMASTER, או אולי רעיון אחר לפתור את זה?
כשאני עושה UMOUNT ושוב מחבר זה מתחבר. רק זה תוקע את המערכות, עד שאני מזהה שהחיבור נפל אנשים לא שומעים קבצים בתוך השרת הזה -
כבר תשע חודשים סובל מהבעייה של הניתוקים שכתבתי בהודעה הקודמת. רגע שיש טיפה עומס, נופל החיבור.
עשיתי CRON שבודק כל דקה אם הכונן מחובר, ואם לא, זה מחבר אותו שוב. אבל עדיין השניות האלה שהכונן מנותק עד שהוא מתחבר שוב, גורמות לבעיות ותסכול אצל לקוחות.לפני יומיים שוחחתי עם אחד שמתעסק במרכזיות, ואמר לי שהוא משתמש בNFS, שזה כמו SSHFS אבל בצורה הרבה יותר מהירה (לא דרך הSSH)
העברתי את המערכות שלי לעבוד דרך זה, ומאז זה עובד חלק, בלי ניתוקים.
מקווה שיעזור למי שמתמודד עם עומסים.