cross processes shared arrays
יש לי מערך גדול שאני מחזיק בזכרון, ואני רוצה לשתף אותה בין כמה threadים (או ליתר דיוק פרוססים)..
אני מכיר את היכולות של APC וMEMCACHE אבל הן לא מספיק טובות בשבילי, המערך שלי יוצא ממש גדול ואני צריך גישה ממש מהירה אליו,
וממה שאני מבין גם memcache וגם APC מחזירים לי ערכים BY VALUE, וזה אומר שכל פרוסס יעתיק לעצמו מערך עם אלפי רשומות, וזה זלילת זכרון לא שפויה.
אני רוצה פשוט שכל פרוסס יוכל לקבל רפרנס למערך הזה ושהוא יוחזק בshared memory בין כל הפרוססים.
זה מערך שגדל במהירות ומשתנה כל הזמן, אז להשתמש בShared Memory המובנה של הPHP זה לא נח כי ממה שקראתי צריך להגדיר מראש לאיזה גודל הוא גדל.
מישהו מכיר טכניקה טובה לזה?
יש לי מערך גדול שאני מחזיק בזכרון, ואני רוצה לשתף אותה בין כמה threadים (או ליתר דיוק פרוססים)..
אני מכיר את היכולות של APC וMEMCACHE אבל הן לא מספיק טובות בשבילי, המערך שלי יוצא ממש גדול ואני צריך גישה ממש מהירה אליו,
וממה שאני מבין גם memcache וגם APC מחזירים לי ערכים BY VALUE, וזה אומר שכל פרוסס יעתיק לעצמו מערך עם אלפי רשומות, וזה זלילת זכרון לא שפויה.
אני רוצה פשוט שכל פרוסס יוכל לקבל רפרנס למערך הזה ושהוא יוחזק בshared memory בין כל הפרוססים.
זה מערך שגדל במהירות ומשתנה כל הזמן, אז להשתמש בShared Memory המובנה של הPHP זה לא נח כי ממה שקראתי צריך להגדיר מראש לאיזה גודל הוא גדל.
מישהו מכיר טכניקה טובה לזה?