מערכות הפעלה, API ומה שביניהם...

ב־יום שישי, 1 בפברואר 2008, מאת ארתיום; פורסם תחת: לינוקס, פיתוח, תכנה ומחשבים; ‏9 תגובות

הקבוצה עובדת על פרויקט גדול מאוד שאמור להיות מתחזק במשך שנים. הפרויקט כולל רכיבים מגוונים ונדרש לעבוד בצורה מהירה ואמינה. עכשיו יש לכם בעיה: אתם לא רוצים להיות תלויים בספק יחיד או במילים אחרות לא מעוניינים ב-Vendor Lock In. לכן, אתם רוצים שהתוכנה שלכם תהיה Cross Platform: תוכלו להריץ אותה על Linux, OpenVMS, HP-UX, BSD, Win NT, Solaris ואולי עוד כמה מערכות אקזיטיות שאני שכחתי לציין. אז כיצד ניתן לעשות זאת?

אז אלו אופציות יש לכם:

  1. לכתוב בשפה שלא תלויה בפלטפורמה כמו Java. רק מה עם הביצועים? מה עם תלות בספק יחיד?
  2. לכתוב את הכל בשפה כמו Python/Perl? כנ"ל
  3. להשתמש בספריות Cross Platform כמו: ACE ועוד שבונות שכבת תאימות בין מערכת הפעלה לבין הקוד.

אז האופציה השלישית היא כיום הסבירה ביותר, אבל בואו נתבונן בפעולה פשוטה כמו נעילת mutex בעזרת, נגיד APR במערכות שונות:

המשך...

מודול Caching עתידי ל-CppCMS

ב־יום חמישי, 17 בינואר 2008, מאת ארתיום; פורסם תחת: אינטרנט, לינוקס, פיתוח, תכנה ומחשבים, CppCMS; ‏0 תגובות

בזמן האחרון, התעסקתי הרבה בנושא פיתוח/תכנון של מודול caching יעיל עבור CppCMS. בחנתי אפשרות שימוש ב-memcached ופסלתי אותה במהירות.

אני סיכמתי כאן את התכנון והמחשבות הכלליות בנושא ה-cache עבור CppCMS. ד"א אם הוא יהיה מוצלח, אני חושב שניתן יהיה להשתמש בו גם עבור סביבות אחרות. במיוחד זה יכול לעזור בתהליכים שירוצו על אותו מחשב ויפנו ל-cache דרך זכרון במקום לעבוד מעל TCP/IP.

בשקט בשקט, הסמסטר מת...

ב־יום שני, 14 בינואר 2008, מאת ארתיום; פורסם תחת: כללי, הכל מלבד מחשבים, פוליטי; ‏2 תגובות

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

אולי זאת השיטה: לבטל את הסמטר בשקט...

בכל אופן, האם יש למישהו ספק מי אשם לבכל זה?

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

יש גבול לחוצפה?

ב־יום רביעי, 2 בינואר 2008, מאת ארתיום; פורסם תחת: כללי, הכל מלבד מחשבים; ‏10 תגובות

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

  • מדוע הם הפסיקו רק ללמד ולא עצרו את המחקרים שלהם. "הם קצת שובתים -- הם קצת בהיריון"?
  • מדוע הם בחרו את העיתוי הגרוע ביותר -- במקביל לשביתת המורים?
  • במי הם פוגעים כשהם שובתים? (גם כן שאלה רטורית...)

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

נמאס... רוצים ללמוד.

להבין את Berkeley DB...

ב־יום שלישי, 1 בינואר 2008, מאת ארתיום; פורסם תחת: תכנה חופשית, אינטרנט, לינוקס, פיתוח, תכנה ומחשבים, CppCMS; ‏0 תגובות

מי שעוקב אחרי התפתחות של CppCMS בוודאי שם לב שאני בחרתי להשתמש ב-Berkeley DB כתשתית עבורו במקום להשתמש בפתרונות בסיסי SQL סטנדרטיים. בכתבה הזו, אני מסביר על בסיס הנתונים הזה ודן ביתרונות ובחסרונות שלו מבחינת היישום והמפתח.

 

Understanding Berkeley DB

‏There are many high quality, high performance, both open and closed source data bases available on the market: MySQL, PostgreSQL, Firebird, Sqlite, Oracle, MS SQL etc. These are industry standard SQL databases that usually power many web sites. The well known LAMP stack is de-facto standard for the web hosting companies.

So why had I chosen to use Berkeley DB instead of many other data bases that most of web technologies work with?

There are several reasons:

1. Outstanding performance. 2. Direct C++ API instead of SQL one. 3. It is as mature as any other databases.

In order to understand the advantages of Berkeley DB over standard SQL data bases we need to understand the architectures of typical DB.

לכתבה המלאה

העמוד הקודם

העמוד הבא

דפים

נושאים