דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
ח

חוקר

@חוקר
אודות
פוסטים
1.3k
נושאים
199
שיתופים
0
קבוצות
0
עוקבים
5
עוקב אחרי
0

פוסטים

פוסטים אחרונים הגבוה ביותר שנוי במחלוקת

  • בדיקת עומס על שרת
    ח חוקר

    @clickone אמר בבדיקת עומס על שרת:

    אגב הפקודה אמורה להסתיים בסוף?
    אני לא רואה שזה חוזר לשורת הפקודה, רק אם עשיתי לאחר הפלט האחרון קונטרול C הוא הסתיים.
    זה תקין?

    תכנות

  • בדיקת עומס על שרת
    ח חוקר

    @clickone אמר בבדיקת עומס על שרת:

    @חוקר
    תדביק כאן את הפקודה (אתה יכול שלנות את הURL)

    ab -k -c 1000 -n 4000 http://123.123.123.123:3030/campaign_status?ApiPhone=0501234567&go_to_folder=3&campaign_id=00000&menu=1

    תכנות

  • בדיקת עומס על שרת
    ח חוקר

    @clickone אמר בבדיקת עומס על שרת:

    @magicode לכאורה לפי פלט הבדיקה שלו, נראה ש @חוקר השתמש עם

    ab -k -c 1000 -n 4000 example.com/
    
    

    ובגלל הפרמטר C שהוגבל לאלף הוא לא עבר אותו

    אכן, כי המקסימום היוצא הוא כנראה 1024 לפי הבדיקה ב
    ulimit -n

    תכנות

  • בדיקת עומס על שרת
    ח חוקר

    @magicode אמר בבדיקת עומס על שרת:

    תתקין את pm2 ב SYSTEM

    pm2 startup
    תעשה
    systemd restart pm2

    ואז תהיה בטוח שהוא לא מוגבל.

    לגבי השרת הבודק. תריץ את זה לפני הבדיקה.

    ulimit -n 40000

    לא הבנתי על איזה שרת להתקין את הPM2?
    בנבדק זה כבר קיים, צריך להתקין אותו מחדש במיקום שונה?
    או בבודק שזה בעצם ספם שורת פקודה של לינוקס

    תכנות

  • בדיקת עומס על שרת
    ח חוקר

    @clickone אמר בבדיקת עומס על שרת:

    @חוקר כתבת שהרצת 4000 בו זמנית
    שאלתי מה קיבלת על ה3000 בקשות?
    הם נפלו?
    או קיבלת עליהם תשובה מאוחרת?

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

    תכנות

  • בדיקת עומס על שרת
    ח חוקר

    @magicode אמר בבדיקת עומס על שרת:

    תריץ את השרת עם PM2
    תראה שהוא יצליח יותר בגלל שהוא פותח את מגבלות הלינוקס.

    תראה

    ulimit -n

    השרת הבודק או הנבדק?
    הנבדק הוא nodejs שמופעל על ידי pm2

    תכנות

  • בדיקת עומס על שרת
    ח חוקר

    @clickone אמר בבדיקת עומס על שרת:

    @חוקר מה קורה לשאל הבקשות?
    נופלות או שממתינות בבלאנס?

    לא הבנתי

    תכנות

  • בדיקת עומס על שרת
    ח חוקר

    @חוקר אמר בבדיקת עומס על שרת:

    @magicode אמר בבדיקת עומס על שרת:

    https://stackoverflow.com/questions/12732182/ab-load-testing

    איך אני יכול לדעת מהו המקסימום חיבורים האפשריים בשרת היוצא?

    הצלחתי מקסימום אלף

    תכנות

  • בדיקת עומס על שרת
    ח חוקר

    @magicode
    אשמח לדעת מה זה אומר, כשניסיתי 4000 בקשות ע"י 1000 חיבורים בו זמנית.
    זה הדוח

    Concurrency Level:      1000
    Time taken for tests:   4.578 seconds
    Complete requests:      4000
    Failed requests:        0
    Keep-Alive requests:    0
    Total transferred:      1020000 bytes
    HTML transferred:       468000 bytes
    Requests per second:    873.84 [#/sec] (mean)
    Time per request:       1144.380 [ms] (mean)
    Time per request:       1.144 [ms] (mean, across all concurrent requests)
    Transfer rate:          217.61 [Kbytes/sec] received
    
    Connection Times (ms)
                  min  mean[+/-sd] median   max
    Connect:        0    3   3.9      1      16
    Processing:     7  140 689.2     21    4557
    Waiting:        7  140 689.3     21    4557
    Total:          9  143 690.2     23    4563
    
    Percentage of the requests served within a certain time (ms)
      50%     23
      66%     26
      75%     28
      80%     33
      90%     84
      95%    248
      98%   4555
      99%   4560
     100%   4563 (longest request)
    
    

    הCPU בשרת מראה כך
    b5b6876e-13b7-4bd7-9f80-755ddf97acaf-image.png

    תכנות

  • בדיקת עומס על שרת
    ח חוקר

    @magicode אמר בבדיקת עומס על שרת:

    https://stackoverflow.com/questions/12732182/ab-load-testing

    איך אני יכול לדעת מהו המקסימום חיבורים האפשריים בשרת היוצא?

    תכנות

  • בדיקת עומס על שרת
    ח חוקר

    איך אני יכול לנסות להריץ על השרת 1500/2000 בקשות בו זמנית, לראות את העמידות של השרת?
    למישהו יש מידע?

    תכנות

  • סדר המשתנים בnodejs
    ח חוקר

    תודה. הרגעתם אותי

    תכנות

  • סדר המשתנים בnodejs
    ח חוקר

    בJS כידוע כל הקובץ רץ בבת אחת, ולא כ"כ לפי שורה שורה, אלא יותר מבחינת זמן הריצה של ביצוע השורה.
    איך ניתן לסדר מראש שהסדר במשתנים בטוח לא ישתנה.
    נשתמש בדוגמה בסיסית.

    var a = 2;
    var b = a * 4; //8
    var c = 5; //5
    var d = b + c; //13
    

    אני רוצה לקבל במשתנה d תוצאה 13 שמורכב מ b שהוא בעצם הכפלה של a תהליך שלוקח זמן יותר מלאכלס את משתנה c שהוא השמה בלבד ללא חישוב.
    באמת התוצאה בקונסולה היא ש d = 13
    אבל אני חושש מליצור תהליכים שבנויים אחד אחרי השני בקטע של משתנים, כשיש איזה חישוב במשתנים שייתכן שאחד יאוכלס לפני הקודם אליו או משהו כזה.
    האם אני צודק בחששות שלי, וא"כ האם יש פתרון?

    תכנות

  • שאלות מתקדמות ב nodejs
    ח חוקר

    מספר שאלות מתקדמות בnodjs
    א. היות וצורת העבודה שלי היא לא משהו קבוע, אלא כל הזמן עלי להוסיף פעולות וכתובות חדשות, שנקרא להם מערכות, וכן לתקן ולשנות מערכות קודמות.
    מהי צורת העבודה הנכונה והנוחה?
    לעשות לכל מערכת קוד נפרד, שיאזין לפורט נפרד, ואז יש לי את הגמישות שאני יכול לשנות מערכת מבלי לגעת במערכות פעילות אחרות, והקודים הרבה יותר מסודרים, אך אני מריץ לכל דבר תהליך נוד נפרד, דבר שלכאורה יקח יותר משאבים, ומצד שני אם זה היה הכל תחת תהליך אחד, אם תיהיה שגיאה בעדכון החדש זה יכול להפריע למערכות הפעילות, וכן הקוד ארוך ומפותל, אך אולי תהליך אחד גדול מבזבז פחות משאבים מכמה תהליכים קטנים.
    ב. לגבי עצם העדכון, אני משתמש בPM2, לעשות restart לתהליך היא הדרך הכי נכונה לאחר ביצוע שינוי בקובץ?
    ג. עד כמה כדאי להעמיס במשתנים בדף אחד?
    הנקודה היא כך, לפי איך שהתחלתי להבין יותר לעומק איך שנוד בנוי בתהליך שרץ כל הזמן, זה יכול לתת לי מענה למה שהייתי תקוע עד עכשיו בPHP שלא הייתי יכול להשתמש במשתנה אחד משלב לשלב, אלא כל פעם הכל נטען ומסתיים מחדש, כעת אני יכול בעצם ליצור מערך של שיחות (אני מקבל בGET מזהה שיחה יחודי), ואז לאכסן בצד השרת בתהליך של הנוד כל מיני משתנים שרלוונטים לשיחה הנוכחית, ומקסימום אני יכול לעשות שכאשר שיחה מסתיימת אני אמור לקבל בGET פרמטר hangup=yes, ואז אני מוחק את זה מהמערך של השיחות הפעילות, ובעצם המערך הזה אמור להתנפח ולהתקטן לפי כמות השיחות הקיימות כעת במערכת.
    האם זה מומלץ, או יכול ליצור בעיות?
    ד. בהמשך לשרשור הקודם שלי, בניתי בצורה שהנתונים מתעדכנים כל 2 שניות, לא תמיד יש צורך בזה, יש שעות שאף אחד לא מחובר וכו' וחבל על המשאבים.
    האם כדאי לבנות בצורה של מערך שמכיל ג"כ נתון של זמן עדכון אחרון, ואז אני מבצע בדיקה באם העדכון היה לפני למעלה מ2 שניות זה יעדכן תוך כדי הבקשה של הלקוח, והמאזינים הבאים במשך 2 השניות הקרובות יקבלו את המידע השמור, ואח"כ זה שוב יעדכן תוך כדי בקשה וחוזר חלילה.
    אני מרוויח שאין בדיקה סתם כשלא צריך, ומצד שני א. המאזין הנוכחי שאצלו זה מתעדכן ימתין חצי שניה יותר.. ב. מה יקרה בבקשות ביניים, זאת אומרת מאזין א מתקשר, השרת רואה שזה לא מעודכן, ומפעיל את פונקציית העדכון, אך בינתיים ב 165 מ"ש שלוקח לעדכן, מתקשר מאזין ב ואז השרת רואה שעדיין לא עודכן המערך. זה יפעיל שוב את פונקציית העדכון? ונמצא שעודכן פעמיים בזה אח"ז? א"כ אני מפסיד הרבה מאוד ממה שאני רוצה להרוויח כמה שפחות פעולות עדכון.
    @david @magicode @אהרן @יוסף-בן-שמעון @clickone

    תכנות

  • שאלות של מתחיל - מקצועי ב nodejs
    ח חוקר

    תודה רבה לכל אלו שעזרו וסייעו
    @david @יוסף-בן-שמעון @אהרן @magicode @clickone
    מקוה שלא פיספסתי מישהו.
    ב"ה הייתה התקדמות משמעותית היום, השלמתי בניית מערכת שעובדת בצורה חלקה, כמובן בעזרתכם.
    עדיין לא גמרתי, אני לא למדתי עדיין מספיק את השפה, אבל כבר היה מספיק בסיסי כדי לעשות משהו שזז באמת..
    במיוחד תודה ל @magicode על הדוגמה הראשונה שנתן, זה נתן לי פריצת דרך רצינית, וכן לימדה אותי פרק נוסף בנושא.
    וכן ל @david שדחף אותי להיכנס לזה..
    תודה

    נ.ב. אני מקוה שסיימתי לאשכול זה, הנושא הבא כבר יהיה באשכול חדש..

    תכנות

  • שאלות של מתחיל - מקצועי ב nodejs
    ח חוקר

    @אהרן @יוסף-בן-שמעון
    בעצם הכי פשוט להכניס הכל ב IF הקודם.
    כך:

    if (!campaign_id || campaign_id === ''){
        res.end("id_list_message=" + 't-לא הוגדר מספר קמפיין, לא ניתן לבצע פעולה זו.' + '&' + "go_to_folder=/" + 'hangup');
    }else if (!campaigns_data[campaign_id]){
        res.end("id_list_message=" + 't-קמפיין לא מורשה במערכת, לא ניתן לבצע פעולה זו.' + '&' + "go_to_folder=/" + 'hangup');
    } else{
        campaign_stats = campaigns_data[campaign_id];
        var total = campaign_stats.data.total;
        ...
    }
    
    
    תכנות

  • שאלות של מתחיל - מקצועי ב nodejs
    ח חוקר

    @חוקר אמר בשאלות של מתחיל - מקצועי ב nodejs:

    כאשר אין מספר קמפיין, או מספר הקמפיין אינו מופיע במערך של הקמפיינים הפעילים, אני מקבל בלוג
    ReferenceError: campaign_stats is not defined

    מה שמעניין שאני קיבלתי את זה פעם אחת בלוג על כשאין מזהה ופעם נוספת כשהקמפיין אינו במערך, ולא יותר.
    וזה לא נוסף ללוג בכל בקשה מחדש, רק פעם אחת לכל תרחיש.

    תכנות

  • שאלות של מתחיל - מקצועי ב nodejs
    ח חוקר

    @יוסף-בן-שמעון אמר בשאלות של מתחיל - מקצועי ב nodejs:

    אולי תפתח אשכול חדש לכל נושא, זה מכביד 3 עמודים לנושא אחד...

    כעת יש לי עוד 17 הודעות עד לדף הבא, ואח"כ נעבור נושא.
    או שעד אז הכל כבר יהיה מסודר בעזה"י..

    תכנות

  • שאלות של מתחיל - מקצועי ב nodejs
    ח חוקר

    @יוסף-בן-שמעון אמר בשאלות של מתחיל - מקצועי ב nodejs:

    @חוקר זה לא קשור לאיך נוד קורא את הדף, זה פשוט משתנה שמעולם לא אותחל אז הוא undefind, אתה יכול לכתוב כך:

        var total = (campaign_stats && campaign_stats.data.total);
    
    

    זה יבדוק אם המשתנה קיים ואם לא הוא יחזיר מיד את הundifind ולא יכשיל את הפונקציה

    הפונקציה בכל מקרה רצה ולא נכשלה, אבל אני רוצה ללמוד לכתוב תקין בכל מקרה.
    לפחות אם אתם מלמדים אותי בכזה מסירות שיצאו פירות מעמלכם..

    תכנות

  • שאלות של מתחיל - מקצועי ב nodejs
    ח חוקר

    @חוקר אמר בשאלות של מתחיל - מקצועי ב nodejs:

    מה היא הדרך הנוחה ביותר לסדר קוד כעין זה שיהיה תקין?

    אולי הכי קל לעבוד עם IF ו ELSE?
    או כן להתרגל לעבוד עם משהו שהוזכר לעיל בנוגע לעבודה אסינכרונית?

    תכנות
  • 1
  • 2
  • 54
  • 55
  • 56
  • 57
  • 58
  • 62
  • 63
  • 56 / 63
  • התחברות

  • אין לך חשבון עדיין? הרשמה

  • התחברו או הירשמו כדי לחפש.
  • פוסט ראשון
    פוסט אחרון
0
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום