נצפה לאחרונה
נצפה לאחרונה

Apache CMS למפרע

[אומתו] עודכן לאחרונה מאת Joe Schaefer ב-יום א׳, 26 אפר׳ 2026    מקור
 

זפת ונוצות

דה אפאצ’י — הומצא באוקטובר 2010 על ידי חברים נבחרים של צוות התשתיות אפאצ’י (פול קרנה, דניאל שחף, Ph.D. (SVN dev), ואני), יצא משימוש רשמי ביוני 2015ולבסוף יצא משירות פעיל בינואר 2022 — הוא תמיד הקדים את זמנו. בשיאו, מעל 100 פרויקטים ברמה העליונה של אפאצ’י ומעל 4K משתמשים הסתמכו על זה, אבל לא יותר מאשר אפאצ’י OpenOffice. מעולם לא הייתה טכנולוגיית הביצועים המדעית שלה ברורה יותר מאשר בפונקציונליות ניהול תלות התוכן שלה בשנים הראשונות של תרומת אורקל של OpenOffice לאפאצ’י ביוני 2011.

להיות ברור: כאשר אחרים מדברים על ניהול תלות, הם עוסקים בעיקר בתלות בתוכנה, לא יחסי תלות של תוכן. הכל מסתכם בתוכן מוסדר היטב “כולל” מערכת Templating+buildוזה בכלל לא אותו דבר כמו תוכנה deps.

תכונה זו הייתה קריטית לחלוטין בתמיכה באסיבית של אפאצ’י. https://OpenOffice.org אתר האינטרנט (OOo). ה-RDBMS CMS Sun שסופק במקור ל-OOo ייפול וימות גם אם רק רצית לתקן טיפו. לעומת זאת, ה- Apache CMS רץ בכלא FreeBSD על baldr.apache.org: מוקצה במתינות, תיבה 1950 של Dell, הפועלת על 8 CPU ו- 24 ג’יגה-בתים של RAM עם זוג כוננים קשיחים משוקפים בנפח 96 ג’יגה-בתים על פני כמה בתי כלא, ועף דרך זרימת העבודה בקלות יחסית.

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

  1. ללכת דגים כי דף מתוך github repo,
  2. מזלג רפו,
  3. ערוך את הדף,
  4. לבצע את השינוי,
  5. לדחוף אותו,
  6. ליצור יחסי ציבור,
  7. המתן עד שהשוטר יאשר וימזג את יחסי הציבור,
  8. המתנה 10-15 דקות לסיום בניית המעבר בעוד הוא מגרד דרך כל 40K+ של נכסים ניתנים לבנייה (~4GB גודל כולל),
  9. המתן למפקח למצוא ולסקור את התוכן שהשתנה איפשהו אתר אחסון,
  10. חכה לשליח זה כדי לקדם את כל האתר לייצור,
  11. חכה עוד 5-10 דקות עד לסיום בניית הפרסום,
  12. המתן ל-gitpubsub כדי לדחוף את התוכן החדש אל שרתי האינטרנט של אפאצ’י.

עם Apache CMS (webgui), שיתוף התחייבות “טלאי/הפרש” דוא”ל יתר היה מבצע בלחיצה אחת עבור כל אדם על פני כדור הארץ, כמו גם פעולה בלחיצה אחת כדי לבצע + בנייה + פרסום עבור Committer להחיל על הפרויקט. כל העניין סובב סביב שיתוף של כתובות URL מסוגלות בהקשר של עורך Markdown חי עם תצוגות מקדימות מיידיות של HTML בחלונית כפולה. הם אפשרו לוועדת אפאצ’י בפרויקט “שכפול” מערכת הקבצים zfs המתארחת על ידי baldr-jail של התורם (לא מחויב) קופה; ולאחר מכן לבדוק, לשנות, ולאשר כי משוכפל קופה על ידי Apache Committer עצמם כמפקח ולא התורם. לאחר ביצוע commit זה קורה, ה-CMS לא רק בנה אותו ב שניות (מכיוון שהוא רק בונה את הקבצים שהשתנו ואת קומץ הקבצים התלויים שלהם), אלא גם סיפק קישורים לבנייה ולרינדור החי של התוכן באתר המעבר לבדיקה לפני קידום לייצור.

כל One-Click אמזון פטנט היה קריטי לשביעות רצון הלקוחות עבורם. אותו הדבר כאן; אבל ה- Apache CMS היה לבד בחלל הזה.

ה- CMS של אפאצ’י (webgui) היה אותו לוח תיאום חיוני בין כל האנרגיה המתנדבת שהשאירה את הארגון מאחור.

יש כמה תירוצים למנהיגות התשתיות של אפאצ’י מדוע היא הושלכה:

  1. אוטובוס של 1 (אני)

  2. יציאה בשלבים FreeBSD (OpenZFS על אובונטו,

  3. mod_perlלא פייתון (אבל כנראה) mod_lua כשר),

  4. buggy (לא אמין zfs clones מן קטן FreeBSD כלא),

  5. מכוער (תודה, עשיר!),

  6. טוב יותר (תודה לאל!)

אבל המניע האמיתי היה “למרח”. בין הזמן בו הוצא משירות פעיל במרץ 2015 והזמן שבו הוצא משירות פעיל בינואר 2022, הוא רץ על טייס אוטומטי בכלא FreeBSD על baldr.apache.org במשך כמעט 7 שנים. התחזוקה היחידה הנדרשת הייתה (רבעונית?) אתחול מחדש של המארח עקב סעיף 4 לעיל, וחידושי תעודת SSL שנתיים. זה זה.

כאשר דחיפה הגיעה לדחיפה בסוף 2021, הצעתי לדייב פישר לארח את אתר OpenOffice באוריון בהנחה תלולה. בתחילה, דייב פנה למועצת המנהלים והם אישרו את ההוצאה**. דייב הציע ל-ASF לוותר על דמי הממצא שהסכמתי לשלם לו ואמר לי לשים את הכסף הזה לקראת עלויות האירוח.

מה שקרה אחר כך היה באמת מדהים: צוות התשתיות של אפאצ’י, באופן מיידי ומתמיד במשך כמה שבועות, הציב את דייב בעמדה הבלתי נמנעת של הכרזת הנאמנות הבלעדית שלו, לפיהם: לי ובהרחבת הקהילה המתנדבת של הפרויקט**, או ל- ASF.

דייב היה הממציא הראשי ומשתף הפעולה מאחורי ההצלחות המדרגיות של טכנולוגיית הבנייה המצטברת של Apache CMS. הוא לא המציא את הפתרונות; אבל הוא עבד באופן פרודוקטיבי איתי על איך הוספתי את תכונות המדרגיות שהוא צריך כדי להבטיח ביצועים גבוהים לבנות מ- Apache CMS כפי שהוחל על אתר OpenOffice - אשר באותו זמן היה לספק צפונה של 25M בקשות ביום! יחד גילינו יישום מעמיק של SSI במאמציו, שלדעתי עדיין מתבצעים במערכת הפיתוי JBake הנמצאת בשימוש כיום.

למרבה הצער, אם אתה מסתכל על עריכת התוכן המתרחשת עם אתר האינטרנט של OpenOffice באתר GitHub לאחרונה, אתה יכול לראות בבירור ירידה מסיבית בפעילות כאשר צוות התשתיות Apache אילץ את דייב להעביר אותם מחוץ למערכת CMS אפאצ’י, וכתוצאה מכך תיעל את כל פעילות התרומה דרך GitHub בלבד.

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

מה שמדהים בפרשה כולה היה הלוחמה המוחלטת של צוות התשתיות של אפאצ’י על כל המאמץ. אני אישית החזקתי את היד של כל פרויקט שהשתלבנו ב- Apache CMS; לראות את כל הרצון הטוב שנוצר שרוף לקרקע על ידי צו אוטוקרטי היה פשוט בלתי נתפס לי כחבר זמן רב בארגון.

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

התפטרתי בשנת 2018. לא יכולתי להמשיך להעיד על כך. מה שעשיתי ב-2020 היה לבנות. אוריון מתוך האפר. אבל אפילו שדרה זו נחשפה לפרויקטים של אפאצ’י על ידי צוות התשתיות של אפאצ’י.

הכל עבור spite.

עצוב.

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