WPML

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

מדוע שכתבנו את תרגום מחרוזות?


הגרסה הקודמת של תרגום מחרוזות טענה את המחרוזות ממסד הנתונים וניסתה להימנע מטעינת קובצי .mo. חלק מהתוספים הגדולים ל־WordPress מגיעים עם קובצי .mo ענקיים, המתרגמים כל טקסט וטקסט בתוסף. לדוגמה, קובצי ה־.mo של WooCommerce כוללים קצת יותר מ־8,000 מחרוזות. לתוספים גדולים אחרים יש מספר דומה של מחרוזות.

כאשר אתה מפעיל אתר באנגלית, WordPress אינו טוען את קובצי ה־.mo האלה. עם זאת, כאשר אתה מפעיל אתר בכל שפה אחרת (שפה אחת בלבד, לא אתרים רב-לשוניים), WordPress יטען את כל קובצי ה־.mo האלה. טעינת קבצים אלה אורכת בין 100 ms ליותר משנייה, בהתאם לשרת שבו אתה משתמש. קובצי .mo אלה ייטענו בכל דף שבו התוסף פועל (בדרך כלל, בכל דפי האתר).

עד WPML 4.3, ניסינו לבצע אופטימיזציה למנגנון זה. ל־WPML הייתה אפשרות, שהופעלה כברירת מחדל, למנוע מערכת העיצוב ומהתוספים לטעון קובצי .mo. במקום זאת, בדקנו אילו מחרוזות נדרשות עבור כל דף וטענו את המחרוזות הספציפיות האלה ממסד הנתונים.

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

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

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

כיצד זה ישפיע על זמן הטעינה של האתר שלי?


זה תלוי. אם האתר שלך היה מהיר עד עכשיו (כפי שרוב האתרים המשתמשים ב־WPML הינם), לא תרגיש שינוי משמעותי במהירות. לדוגמה, ב־wpml.org, רוב הדפים מעט מהירים יותר ומספר דפים דורשים מעט יותר זמן כדי להיטען.

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

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

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

האם צפויות אופטימיזציות ביצועים נוספות?


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

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


  • פיצול קובצי .mo ענקיים למספר קבצים קטנים יותר

  • טעינת הקבצים הנכונים בדפים הנכונים

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

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

עדכון, מדידה ודיווח


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

אם אתה מרגיש שדף כלשהו באתר שלך דורש יותר זמן כדי להיטען, אנו מציעים שתתקין את התוסף Query Monitor (עקבו אחר המדריך שלנו כיצד לנתח בעיות ביצועים עם Query Monitor). שים לב שב־WPML 4.3 תיקנו בעיות תאימות משמעותיות עם Query Monitor, כך שהדוחות שאתה רואה אינם שימושיים עבור גרסאות שלפני WPML 4.3.

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

כמובן, נשמח מאוד לשמוע את העדכונים הכלליים שלך לגבי ביצועים (זה מועיל באותה מידה לדווח על שיפורים 🙂). השאר את תגובותיך כאן ונחזור אליך.

מצאת את זה שימושי? שתף מאמר זה: