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

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

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. כמות חיבורים בו זמנית MySQL על אבונטו VPS (ב AWS)

כמות חיבורים בו זמנית MySQL על אבונטו VPS (ב AWS)

מתוזמן נעוץ נעול הועבר תכנות
11 פוסטים 2 כותבים 993 צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • ח מנותק
    ח מנותק
    חוקר
    כתב ב נערך לאחרונה על ידי
    #1

    הפעלתי קמפיין שהיו לי מאות שיחות בו זמנית (ימות המשיח באמצעות שלוחת API) .
    בסופו של דבר הmysql סגר את עצמו לעשר דקות (לא קריסה של השרת הCPU בקושי גירד 20 %).
    סיבת הדבר הוא ככל הנראה בכמות החיבורים האפשרי בו זמנית.
    כבר מזמן עשיתי חיפוש בנושא והגדרתי בקובץ mysqld.cnf את

    max_connections        = 2500
    open_files_limit = 2048
    

    מה שמוזר לי ביותר שכאשר אני בודק את SHOW FULL PROCESSLIST אני לא רואה יותר מאחד, שזה של השאילתה עצמה של הבדיקה...
    (כאשר אני פותח תוכנה של ניהול MYSQL אני כן רואה עוד 2/3 חיבורים, אבל תו לא).
    למעשה לא מזמן עשיתי שינוי במחלקה שלי להתחברות לMYSQL והגדרתי שעל כל שאילתה החיבור ייסגר מידית, ואפילו אם יהיו כמה שאילתות בסקריפט (PHP) אחד, זה ייפתח ויסגר על כל שאילתה. כך המליצו לי, (הייתי צריך את זה בגלל סקריפטים שניגשים למקורות חיצוניים שיכולים להתמשך זמן מה, שלא יהיה חיבור פתוח סתם, ולא יעבור את המקסימום המתנה).
    מצד שני בסטיסטיקות אני כן רואה שישנם הרבה חיבורים בו זמנית, (Max. concurrent connections 64) .
    השאלה היא איך אני יכול לראות בצורה אחרת את כמות החיבורים בו זמנית?
    ומה עוד אני יכול לעשות להגדיל את המקסימום?
    תודה

    תגובה 1 תגובה אחרונה
    1
    • dovidD מחובר
      dovidD מחובר
      dovid ניהול
      כתב ב נערך לאחרונה על ידי
      #2

      בשביל לצפות, נסה את זה:

      show status where `variable_name` = 'Threads_connected'
      

      בשביל להגדיר, בדוק שmax_user_connections מוגדר על 0 או על יותר מאלף.
      הפעלת מחדש את השירות של MYSQL אחרי שינוי הקונפיגורציה?

      מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

      בכל נושא אפשר ליצור קשר dovid@tchumim.com

      ח תגובה 1 תגובה אחרונה
      1
      • ח מנותק
        ח מנותק
        חוקר
        השיב לdovid ב נערך לאחרונה על ידי
        #3

        @dovid אמר בכמות חיבורים בו זמנית MySQL על אבונטו VPS (ב AWS):

        show status where variable_name = 'Threads_connected'

        אף פעם לא הצלחתי לתפוס תוצאה יותר גדולה מ 2
        0_1539896642764_c600c7d4-fe2e-4817-91f4-ee5125ef2e67-image.png
        כמו"כ זה מה שמוגדר לגבי כמות החיבורים
        0_1539896773884_7527a8ae-f332-423f-8350-ab3d1140b4ae-image.png

        תגובה 1 תגובה אחרונה
        1
        • dovidD מחובר
          dovidD מחובר
          dovid ניהול
          כתב ב נערך לאחרונה על ידי
          #4

          בסופו של דבר הmysql סגר את עצמו לעשר דקות

          איך זה התבטא? מה הייתה הודעת השגיאה המדוייקת?

          מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

          בכל נושא אפשר ליצור קשר dovid@tchumim.com

          ח תגובה 1 תגובה אחרונה
          0
          • ח מנותק
            ח מנותק
            חוקר
            השיב לdovid ב נערך לאחרונה על ידי
            #5

            @dovid אמר בכמות חיבורים בו זמנית MySQL על אבונטו VPS (ב AWS):

            בסופו של דבר הmysql סגר את עצמו לעשר דקות

            איך זה התבטא? מה הייתה הודעת השגיאה המדוייקת?

            הפלט בסקריפט PHP שנכשל היה

            PDOStatement::execute(): MySQL server has gone away
            

            וכאשר ניסיתי להכנס לניהול דרך PHPmyadmin או דרך adminer קיבלתי הודעה שגיאה באנגלית משהו של אין גישה/ לא נמצא קובץ משאבים.
            לא זכרתי להעתיק את הנוסח המדוייק שנכתב.

            תגובה 1 תגובה אחרונה
            0
            • dovidD מחובר
              dovidD מחובר
              dovid ניהול
              כתב ב נערך לאחרונה על ידי
              #6

              @חוקר אמר בכמות חיבורים בו זמנית MySQL על אבונטו VPS (ב AWS):

              MySQL server has gone away

              https://dev.mysql.com/doc/refman/8.0/en/gone-away.html

              הפתרון לפי מה שאני קורא ברפרוף זה הגדלת הערכים האלו:
              wait_timeout
              max_allowed_packet

              אבל בברירת מחדל עריכיהם ענקיים כך שאני מתפלא. יש בטבלאות שדות של בתים (BLOB)?

              מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

              בכל נושא אפשר ליצור קשר dovid@tchumim.com

              ח תגובה 1 תגובה אחרונה
              0
              • ח מנותק
                ח מנותק
                חוקר
                השיב לdovid ב נערך לאחרונה על ידי
                #7

                @dovid אמר בכמות חיבורים בו זמנית MySQL על אבונטו VPS (ב AWS):

                @חוקר אמר בכמות חיבורים בו זמנית MySQL על אבונטו VPS (ב AWS):

                MySQL server has gone away

                https://dev.mysql.com/doc/refman/8.0/en/gone-away.html

                הפתרון לפי מה שאני קורא ברפרוף זה הגדלת הערכים האלו:
                wait_timeout
                max_allowed_packet

                אבל בברירת מחדל עריכיהם ענקיים כך שאני מתפלא. יש בטבלאות שדות של בתים (BLOB)?

                max_allowed_packet	= 16M
                

                לא נראה לי שיש צורך ביותר, כי בשעה שלימה הוא בקושי מגיע ל 50 מגה.
                0_1539897802260_738167c1-5bba-4aa7-ad0a-859386f0eff9-image.png

                לא הבנתי את המשפט האחרון

                תגובה 1 תגובה אחרונה
                0
                • ח מנותק
                  ח מנותק
                  חוקר
                  כתב ב נערך לאחרונה על ידי
                  #8

                  מה שמוזר לי שכעת אני רואה שיש לחצן שאף פעם לא בדקתי בשם מוניטור, וזה מה שהוא מציג לי (כעת כשיש מעט אין שיחות)
                  0_1539899388054_4b66c2ac-2ab7-4378-a853-b99c8c46b10b-image.png
                  נראה שיש כן איזה דרך לדעת (שאילתה) מהו הכמות בו זמנית.
                  אך בעיקר מה שחשוב לי לדעת א"כ מה ניתן לעשות למנוע זאת?

                  תגובה 1 תגובה אחרונה
                  0
                  • ח מנותק
                    ח מנותק
                    חוקר
                    כתב ב נערך לאחרונה על ידי חוקר
                    #9

                    מה שלא מובן לי, כעת הפעלתי קמפיין ויש הרבה חיבורים.
                    0_1539948209538_7aada4c3-e6c6-48e4-9d3f-407d94e1eedc-image.png
                    ובכ"ז בכמות החיבורים אני לא מוצא רק 2.
                    ניתן לראות בתמונה שהסימון הכחול של כמות החיבורים אוחז בתשעים ומשהו, והתהליכים בכתום אוחז בשתיים בלבד

                    תגובה 1 תגובה אחרונה
                    0
                    • dovidD מחובר
                      dovidD מחובר
                      dovid ניהול
                      כתב ב נערך לאחרונה על ידי
                      #10

                      תדביק פה את כל ערכי הshow status בשעה עמוסה (יחסית לפחות),
                      אולי נראה משהו חריג.

                      מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                      בכל נושא אפשר ליצור קשר dovid@tchumim.com

                      תגובה 1 תגובה אחרונה
                      1
                      • ח מנותק
                        ח מנותק
                        חוקר
                        כתב ב נערך לאחרונה על ידי
                        #11

                        ב"ה
                        בהמשך להנ"ל כעת הפעלתי קמפיין והשרת SQL שוב סגר את עצמו, זו ההודעה כאשר ניסיתי להיכנס לניהול דרך PHPMYADMIN
                        0_1540750323538_61f2ae84-8d66-4a3b-b0d5-38f2e5ba448e-image.png

                         #2002 - No such file or directory<br />The server is not responding (or the local server's socket is not correctly configured).
                         Connection for controluser as defined in your configuration failed.
                        

                        את משתני המערכת הורדתי לאקסל המצ"ב
                        למעשה ייתכן שזה כן בעיה בCPU ועלי לשדרג את השרת, מצ"ב תמונת מנהל משימות
                        0_1540751097295_77afd5f5-ef46-4a11-b93d-6f205ee2795c-image.png
                        תודה לעונים.
                        0_1540751203802_ערכים בעת עומס.xlsx

                        תגובה 1 תגובה אחרונה
                        0

                        בא תתחבר לדף היומי!
                        • התחברות

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

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