صفحة 1 من 2 12 الأخيرةالأخيرة
النتائج 1 إلى 15 من 18

الموضوع: الفيس بوك وطريقة ربط الأصدقاء ببعضهم ( نقاش )

  1. #1
    عضو نشيط
    تاريخ التسجيل
    Aug 2007
    المشاركات
    44

    الفيس بوك وطريقة ربط الأصدقاء ببعضهم ( نقاش )



    في الحقيقة الموضوع هذا يدور في بالي كثيرا ، ولكن لا أجد الوقت الكافي للبحث فيه أو حتى تطبيقه على الواقع.

    ربط الأصدقاء والمواضيع ببعضهم في الفيس بوك نظريا لا تشكل مشكلة .


    ولكن عندما تعرف أن عدد المستخدمين للموقع يفوق 300 مليون ، هنا الطرق التقليدية لا تنفع وغير مجدية . فمثلا أحد المستخدمين لديه 100 الف صديق عندما يضيف محتوى فهو يظهر للكل.


    لا أدري هل هناك منكم من فكر في طريقة ربط الاصدقاء ببعضهم بهذا الكم من المستخدمين والطريقة المثلى لعمل ذلك.؟







  2. #2
    عضو نشيط
    تاريخ التسجيل
    Jul 2008
    المشاركات
    128


    لم افهم من كلامك الكثير
    هل ممكن تشرح اكثر
    انا احب ان اتكلم بالافكار الي مثل هذه
    كيف ربط الاصدقاء
    هل تقصد انك تتكلم عن موقعك الشخصي؟
    ام تريد تطوير يضاف الى الفيس بووك
    وشكرا





    التعديل الأخير تم بواسطة atlasarab ; 26-02-2011 الساعة 02:22 AM

  3. #3
    عضو شرف
    تاريخ التسجيل
    May 2007
    المشاركات
    1,647


    من الأمور التي سمعتها عن البنية التحتية للـ Facebook أن كل يوزر له قاعدة بيانات خاصة به تحتوي كافة الأمور، تخيّل هذا .. ستكون الاستعلامات أسرع لكن لا أعلم بالضبط كيف تعمل الأمور ..

    لست متأكداً إن كانت هذه الصفحة ستفيدك، لكن اطّلع عليها بشكل سريع قد تعطيك بعض التلميحات:
    http://developers.facebook.com/opensource/

    تحياتي،





    __________________
    # اتبعني على Twitter
    # عِرفان ساهم ببناء المحتوى العربي العلمي على الإنترنت!

  4. #4
    عضو فعال جدا
    تاريخ التسجيل
    Sep 2006
    المشاركات
    3,006


    من الأمور التي سمعتها عن البنية التحتية للـ Facebook أن كل يوزر له قاعدة بيانات خاصة به تحتوي كافة الأمور، تخيّل هذا .. ستكون الاستعلامات أسرع لكن لا أعلم بالضبط كيف تعمل الأمور ..

    لست متأكداً إن كانت هذه الصفحة ستفيدك، لكن اطّلع عليها بشكل سريع قد تعطيك بعض التلميحات:
    http://developers.facebook.com/opensource/

    تحياتي،
    يعني الفيس بوك فيه اكثر من 300 مليون قااعدة ...





    __________________
    p-king-p@hotmail.com


    الرجاء مراجعة الموضوع للجميع :
    http://www.swalif.net/softs/swalif12/softs302945

  5. #5
    عضو شرف
    تاريخ التسجيل
    May 2007
    المشاركات
    1,647


    إذا كانت موزّعة على سيرفرات عدّة، قد تكون أقل ضغطاً من قاعدة واحدة تتلقى جميع الاتصالات، لاحظ أن العدد هو أكبر من 550 مليون وليس 300 مليون فقط، يعني عند مقارنة أرقام ضخمة بقواعد البيانات قد تكون النتائج مختلفة عمّا هي عليه في القواعد الصغيرة ..

    لست متأكداً من ذلك، سمعتها من أحد المطورين الذين عملت معهم هنا في الأردن، أعتقد أن هناك قوائم بريدية لمطوري الفيس بوك، إذا وجدها أحدكم فستكون مشاركتها معنا شيئاً جميلاً جداً





    __________________
    # اتبعني على Twitter
    # عِرفان ساهم ببناء المحتوى العربي العلمي على الإنترنت!

  6. #6
    عضو نشيط
    تاريخ التسجيل
    Aug 2007
    المشاركات
    44


    لم افهم من كلامك الكثير
    هل ممكن تشرح اكثر
    انا احب ان اتكلم بالافكار الي مثل هذه
    كيف ربط الاصدقاء
    هل تقصد انك تتكلم عن موقعك الشخصي؟
    ام تريد تطوير يضاف الى الفيس بووك
    وشكرا

    أنا لا أتكلم على موقعي أو فكرة أريد تطبيقها.

    موقع ناجح مثل الفيس بوك أعتقد من الممتع أن نتناقش فيما بيننا عن آلية التطبيق التي يستخدمها. وأعتقد في نظري سر نجاح الفيس بوك هو طريقة الربط بين الأصدقاء وسرعة عمل ذلك مقارنة بكمية بكمية المستخدمين فيه.






  7. #7
    عضو نشيط
    تاريخ التسجيل
    Aug 2007
    المشاركات
    44


    أشرف ، شكرا على الرابط


    مسألة كل يوزر له قاعدة بيانات قد تكون صحيحة ، إمكانيات العتاد أعتقد أنها كبيرة جداً وليس مثل حكايتنا سيرفرات لهذا لا مانع أن يكون لكل يوزر قاعدة بيانات خاصة لمعلوماته ، لكن السؤال هو كيفيه تحديث هذه القواعد بهذا الكم بشكل متواصل ومتصل.!! ( متصل أقصد أنها تصل لكل الأصدقاء )


    الشيء الجميل في هذا أن اللغة المستخدمة في الموقع هي ( PHP ) وقواعد البيانات ( Mysql ) وهذا يدل على قوة اللغة وقوة قاعدة البيانات إذا أحسنت إستخدامها.






  8. #8
    عضو نشيط
    تاريخ التسجيل
    Apr 2010
    المشاركات
    68


    موضوعك جميل ويدعو الى التفكير
    بصراحة كثيرا ماأتسائل عن هذه السرعة في الفيس بوك
    قد يكون لهذا الموضوع علاقة كبيرة بما تستفسر عنه
    http://www.insidefacebook.com/2010/0...iler-software/

    اما بخصوص الية العمل ربما البحث عنها في الانترنت يأتي بنتيجة





    __________________
    .

  9. #9
    عضو شرف
    تاريخ التسجيل
    May 2007
    المشاركات
    1,647


    لعدم تفكيري بالموضوع ولأنني أكتب الآن على عجلة، أريد مبدئياً التلميح إلى خاصية (Most Recent (N - حيث N هو عدد التحديثات الأجدد والتي لم تطّلع عليها .. الوضع الطبيعي عندما يكون لديك عدد كبير من التحديثات أن ما يعرض فقط هو الأكثر تفاعلاً .. لا أعلم إن كان هذا سيفيد في زيادة السرعة وتسهيل ربط العلاقات والـ News Feeds ..

    عموماً علينا أن نقرأ ونبحث ونعود هنا جميعاً لنكتب ونتعلم من تجربة فيس بوك





    __________________
    # اتبعني على Twitter
    # عِرفان ساهم ببناء المحتوى العربي العلمي على الإنترنت!

  10. #10
    عضو فعال
    تاريخ التسجيل
    Jul 2003
    المشاركات
    1,576


    محاضرة ساعة .. من احد مبرمجي فيس بووك - محاضرة تقنية - عن التقنيات المستخدم في الفيسبوك :

    http://www.infoq.com/presentations/F...Software-Stack

    شاهد اول ربع ساعة .. تبدو عظييييييييمة .. ساكملها لاحقا





    __________________
    SWF Thumbnail - tweet me

  11. #11
    عضو نشيط
    تاريخ التسجيل
    Apr 2010
    المشاركات
    68


    محاضرة ساعة .. من احد مبرمجي فيس بووك - محاضرة تقنية - عن التقنيات المستخدم في الفيسبوك :

    http://www.infoq.com/presentations/Facebook-Software-Stack

    شاهد اول ربع ساعة .. تبدو عظييييييييمة .. ساكملها لاحقا
    شكرا لك
    ارجو ان توافينا بالتفاصيل بعد ان تشاهدها





    __________________
    .

  12. #12
    عضو فعال
    تاريخ التسجيل
    Jul 2003
    المشاركات
    1,576


    وصلت للدقيقة 30 في المحاضرة ، المحاضر هو Aditya Agarwal وهو اندونيسي الاصل، لكنته الانجليزية سريعة .. يشبه لحد كبير لكنة اهل الهند .. وهذا ربما لأنه يتحدث اللغة الهندية - او الاوردي .


    بشكل عام ، ما لاحظته إلى الآن .. ان كل سلايد من المحاضرة .. وكل دقيقة يتحدث فيها هذا الرجل ، يقوم باعطاء كمية من المصطلحات التقنية التي تحتاج ايام عديدة ان لم يكن اسابيع .. لمجرد استيعاب كمية التقنيات المستخدمة في الفيس بووك !

    لربما الحديث عن التقنيات بشكل عام هو امر معقد في العادة .. وتسمية التقنيات بمصطلحات علمية يحتاج للبحث العلمي لفهم ما يقصده بالضبط .. ولكن بشكل عام ، اؤكد ان الفيس بووك يحتوي على كمية تقنيات واساليب برمجية .. حديثة للغاية ومعقدة جدا !

    وهو الامر الذي يجعلني اظن ان هذا الرجل هو اسطورة .. لفهمه الكامل لهذا الكيان بهذا الشكل والحديث عنه بتلقائية مثل الذي يتحدث بها !

    ملاحظة على جنب :http://www.infoq.com/presentations/F...Software-Stack
    المحاضرة تحتوي على فيديو، وبمجرد بدء الفيديو .. يتم تغيير السلايدات التي اسفله .. وهي فلاش swf
    لو حصلنا على السلايدات بشكل منفرد يمكن التحكم به .. ستحتوي على فهرسة رائعة لكل ما قيل في المحاضرة ( فهو يشرح ويتحدث من خلالها )


    وهذه ملاحظاتي السريعة التي كتبتها اثناء استماعي للمحاضرة :
    كود:
    +data housing - offline data, online is mysql
    +php, c++, python
    + no joins - CPU and logical reasons
    + dont save data in centeralized, split the databases over many nodes
    + you dont need to see other updates immediately
    + when you join a group, stored on ur dbm and duplicated on the group db
    + we dont care about consistency ( ex : u joined a group, no need to store that u r a memeber of the group ) cuz we already know the flow of transactions
    +memcache super quick
    + memcache over udp






    __________________
    SWF Thumbnail - tweet me

  13. #13
    عضو فعال
    تاريخ التسجيل
    Jul 2003
    المشاركات
    1,576


    كود:
    php, c++, python
    في البداية تحدث عن الفيس بووك ليس بي اتش بي فقط .. ولكن ايضا يحتوي على اكثر من لغة برمجة منها البايثون والسي بلس بلس

    ويخص بالذكر ان اغلب العمليات التي تتم اونلاين .. تكون بي اتش بي
    بينما العمليات الاوفلاين مثل التخزين والارشفة والمراجعة تكون سي بلس بلس غالبا


    كود:
    data housing - offline data, online is mysql
    الماي سكول ايضا يتم استخدامها اونلاين فقط .. ونظام المايسكول لديهم معقققققد جدا تحدث عنها كثيرا ومع ذلك لم استطع استيعاب التصميم الكامل لها ومع ذلك .. فهو يتحدث ان لكل اوبجكت ( مثلا يوزر او جروب او صفحة .. إلخ ) يكون لها Logical Database - لا استطيع تحديد ماهية ال ( الداتا بيز الوهمية او الغير حقيقية ) ولكن بالفعل كما تم الذكر .. يكون لكل يوزر شيء مثل داتا بيز خاصة به !! ولكنها ليست داتا بيز حقيقية بملفات حقيقية على السيرفر .. او ربما حقيقية ولكن بشكل مختلف ..

    الموضوع يحتاج دراسة كما ذكرت .. وكذلك مفهوم الداتا هاوسينج .. هو مفهوم تقني معروف، ويتم استخدامه بطرق واساليب عديدة .. يمكن البحث عنه ودراسته


    كود:
     no joins - CPU and logical reasons
    تفاجئت بهذه الكلمة !

    الفيس بووك لا يستخدم استعلامات جوين .. او اي استعلامات معقدة
    لضمان سرعة العمل
    + عدم التحميل على السي بي يو


    كود:
     dont save data in centeralized, split the databases over many nodes
    you dont need to see other updates immediately
    when you join a group, stored on ur dbm and duplicated on the group db
    لا يتم حفظ البيانات كلها في مكان واحد .. بل يتم تقسيمها على اكثر من مكان
    وتكون مكررة
    ويتم تنقية البيانات لاحقا

    ومن الاشياء الرائعة التي ذكرها ، هو حاجة المستخدم لرؤية ما قام بكتابته فوريا .. في الوقت الذي لا حاجة لاصدقائه لرؤية ما كتبه فوريا !

    بمعنى ، انك عندما تقوم بتحديث البروفايل الخاص بك .. ترى التحديثات فورية ، ولكن اصدقائك لا يرون نفس التحديثات فوريا .. بل بعدها بفترة - وان كانت فترة قصيرة بالطبع !


    نظام الداتا بيز لديهم .. كما ذكرت لكل اوبجكت داتا بيز ، يتم تحديث بياناته بها
    وكل مجموعة قواعد بيانات .. تتبع لنقطة ( node ) معينة ، وكل فترة وبشكل دوري .. يتم التعامل مع البيانات الموجودة في كل النقاط .. وتجميعها وتنقيتها ، ثم حفظها على اكثر من داتا سنتر .. ويكون هناك ما هو معروف بال Load balance بين الداتا سنترز المختلفة .. كل هذا يكون تابع لقواعد واساليب فهرسة بلا شك .. ( تذكرت هنا انه ذكر انهم قامو بتعديل بسيط على mysql engine ليناسب احتياجاتهم .. كانت هناك مشكلة معهم في عملية ال mysql cache لم استطع الفهم كثيرا ولكن يبدو ان سرعة تكييش البيانات لدي مايسكول لم يكن مناسب لهم .. فقامو بالتعديل على البنية التحتية للمحرك .. ليضمن لهم العمل من خلال القواعد المرادة )

    واخيرا اعطى مثال ، عن انك اذا قمت بالالتحاق بجروب معين ..

    يتم تسجيل ذلك في الداتا بيز الخاصة بك ويتم تسجيلها ايضا في الداتا بيز الخاصة بالجروب ( هذا ما تحدثت عنه باسم : بيانات مكررة )

    ولهذا علاقة ب
    كود:
    we dont care about consistency ( ex : u joined a group, no need to store that u r a memeber of the group ) cuz we already know the flow of transactions
    ال consistency مفهوم معروف .. بالبحث عنه تستطيع معرفة ماهو ( اعذروني كما قلت المواضيع والمفاهيم كثيرة وكلها كبيرة ! )

    المهم .. ان هذه قنبلة اخرى ! انه لا يهتم بتسجيلك كاحد الاعضاء في هذا الجروب .. ولكن اهتمامه الاكبر بالحدث نفسه .. انك التحقت بالجروب !

    بمعنى ، كلنا نعرف .. مثلا في اي سكربت يوجد جدول اعضاء وغالبا يكون فيه جروب اي دي groupid يتم وضع اي دي الجروب فيه ليتم التعرف على العضو على انه تابع لهذا الجروب ..
    مثال : احمد تابع لجروب سوالف

    الفيس بووك لا يعمل بهذه الطريقة

    وانما
    احمد اتبع جروب سوالف
    احمد اتبع جروب البرمجة

    وبهذا يتعرف لاحقا ان احمد .. ملتحق بهذا الجروب ام لا


    كود:
    memcache super quick
    memcache over udp
    بعدها يتحدث عن ال memcache
    وهو ما يعتبره احد الاساسيات في برمجة الفيس بووك

    لم استطع استيعاب كيفية استخدامه بعد .. ولكن على ما يبدو ان كل البيانات يتم التعامل معها بشكل مبدأي الاول ككاش
    قبل التثبيت والحفظ على الداتا سنتر فعليا ويتم هذا كل فترة دورية .. قد تكون اكثر من مرتين باليوم

    والجدير .. انهم وجدو مشكلة في الاستخدام العادي والطبيعي لهذه الخاصية .. لأنهم كانو بصدد مئات مئات الالوف من البيانات .. ولم يصمد النظام ولم تكن سرعته ايجابية
    فقامو باستخدامه من خلال بروتوكول udp






    اخيرا ، هذا ما استنتجته بعد 30 دقيقة من المحاضرة .. ومازالت هناك 30 دقيقة اخرى ، اجزم انها تحتوي على بيانات ادق واكثر تعقيدا !

    المعذرة لو الكلام غير مرتب .. ولكني مذهول مما رأيت وسمعت !
    الموضوع يحتاج بحث .. لاسابيع للوصول لفهم شبه كويس لكيفية عمل الفيس بووك، ولشرحه بشكل تفصيلي نحتاج لشرح العشرات من التقنيات والمفاهيم والاساليب البرمجية الحديثة والمعقدة في ذات الوقت.

    تحمست للموضوع واعتقد اني ساتابع البحث حتى لو لاسابيع !
    شكرا لصاحب الموضوع .. لفتح الرؤيا لنا





    __________________
    SWF Thumbnail - tweet me

  14. #14
    عضو فعال
    تاريخ التسجيل
    Jul 2003
    المشاركات
    1,576


    على عكس ما توقعت
    فالنصف الثاني من المحاضرة .. كان نوعا ما مقبولا ومفهوم، المحاضرة قسمين .. الاول يتحدث عن البنية التحتية للفيس بووك وهي الجزء المعقد في الموضوع .. والثاني عن كيفية عمل الصفحات وجلب البيانات وما الى ذلك وهي بسيطة نسبيا

    الفيس بووك يعتمد على بنية تحتية قوية ، وهذا ما يجعل بقية العمل .. سهل للغاية !

    لم ار مهتم بما اقول .. فهذه ملاحظاتي السريعة :
    كود:
    - my db contains friends ids from memcache first, if not then from db -> memcache
    - php is not fast, interpreter not compiler, C++ maybe java
    - c++ java php python + 15 languages
    -Thrift is cross-language framework
    - less SOAP, Cobra, COM, 
    - developers.facebook.com/thrift/
    - developers.facebook.com/scribe/
    - developers.facebook.com/phpembed/
    
    - user homepage, LAMP is too slow for it
    - home.php -> PHP -> agreggators ( using friends leafs to get recent stories )

    قمت بتحميل سلايدات المحاضرة .. وهي موجودة على هذا الرابط :
    كود:
    http://rapidshare.com/files/452270351/face_presentation.rar
    للاسف لم يتحدث عن كيفية ربط الاصدقاء ببعضهم ( سؤال الاخ shoqi صاحب الموضوع ) ولكنه ذكرها سريعا .. ولكن اعتقد عملية ال social networking ليست ترتبط بالفيس بووك فقط .. ولكنه مفهوم عام في البرمجة يمكن البحث عن مقالات له من خلال هذا الرابط

    http://www.google.com/#hl=en&sugexp=...67cd9a9ddbd998


    تحياتي





    __________________
    SWF Thumbnail - tweet me

  15. #15
    عضو نشيط
    تاريخ التسجيل
    Aug 2007
    المشاركات
    44


    أشكرك أخي Egyptechno كل الشكر على الرابط وعلى المعلومات القيمة التي قدمتها ..

    فعلا الفيس بوك يستخدم مزيج من لغات البرمجة ومزيج من التقنيات ويستند إلى بنية تحتية قوية كما ذكرت ، ومن الجميل أن لا نكتفي بسرد هذه التقنيات فقط ، بل نحللها ونستفيد منها في تطبيقاتنا ، علنا نخرج بموقع بمثل قوته وليس شرطا في نفس المجال.


    لي عودة إن شاء الله بعد مشاهدة الفيدو










ضوابط المشاركة

  • لا تستطيع إضافة مواضيع جديدة
  • لا تستطيع الرد على المواضيع
  • لا تستطيع إرفاق ملفات
  • لا تستطيع تعديل مشاركاتك
  •  

أضف موقعك هنا| اخبار السيارات | حراج | شقق للايجار في الكويت | بيوت للبيع في الكويت | دليل الكويت العقاري | مقروء | شركة كشف تسربات المياه | شركة عزل اسطح بالرياض | عزل فوم بالرياض| عزل اسطح بالرياض | كشف تسربات المياة بالرياض | شركة عزل اسطح بالرياض