الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

هل PHP تدعم تعدد المهام؟

بدأه محمد الصقري في 4 سبتمبر 2010 · 7 رد · 814 مشاهدة · في منتدى تطوير المواقع بـ PHP
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم،

هل يوجد موقع أو مرجع رسمي يثبت أن PHP تعتبر داعمة لتعدد المهام. ما أعرفه هو أن PHP نوعين: thread-safe و كذلك non-thread safe ؟

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

تمّت كتابة شفرة سكريبت بسيط لإدخال كمية كبيرة وعشوائية من البيانات في قاعدة البياناتز انظر في الأسفل.

أريد أن اختبر ذلك في عدد كبير من المستخدمين كيف؟ وإثبات ذلك أن البينات سليمة؟ هناك حل هو رفع ذلك السكريبت مع قاعدة البيانات وأطلب من 10 اشخاص مثلا اختبارها بنفس الوقت، هل هذا مجدي؟

أيضاً أريد مرجع رسمي يثبت أن PHP تدعم ما يسمى بالـ Thread ؟

<?php

/*
 * Author: Mohammad Alsagri
 */

// connect the database
$con = mysql_connect("localhost", "root", "");
if (!$con) {
    die('Could not connect: ' . mysql_error());
}
// connect the database
mysql_select_db("test", $con);

// define a counter
$counter = 0;

while ($counter < 200) {
    // generate randome number
    $random = rand(-10000, 10000);
    // encrypt the jumber for getting different texts
    $text = md5($random);
    echo $text . "<br>";

    // excute the query, adding the
    mysql_query("INSERT INTO testtable (data)
                 VALUES ('$text')") or die(mysql_error());

    // increase the counter by 1
    $counter++;
}// end while
//
// close the connection
mysql_close($con);
?>

نتيجة التنفيذ سليمة جداً ويدخل البينات بشكل سليم وهناك حقول تتّم الإدخال بنفس الوقت، انظر الصورة في الأسفل.

er9svvaoi86ljekvqq5r.png

#2

ما تتحدث عنه هو خاص بقاعدة البيانات اي مخدم قاعدة البيانات هو من يقوم بعمليات اقفال على السجلات وفك الاقفال بما يخلق بيانات متوافقة هذه ليست من عمل مخدم ال php

In bad state

#3
X-File كتب:

ما تتحدث عنه هو خاص بقاعدة البيانات اي مخدم قاعدة البيانات هو من يقوم بعمليات اقفال على السجلات وفك الاقفال بما يخلق بيانات متوافقة هذه ليست من عمل مخدم ال php

كلامك صحيح، ولكن ما ذكرت مثال عن قاعدة الينات في PHP، ولكن ماذا لو طلب أكثر من مستخدم دالة معينة بنفس الوقت أو قراءة ملف أو أي طلب من قبل المستخدم.

شكرا على الرد

#4

النسبة لطلب دالة معينة عموما نظام التشغيل سيقوم بتوزيع العملب بناءا على الافضليات ولن يؤثر ذلك بشيىء

اما بالنسبة للكتابة على الملف

ملف نصي يحوي ما يلي

اشترى رجل حاسب

عدل مستخدم ما الملف ليصبح

اشترى رجل سيارة

واثناء التعديل والاصافة يوجد مستخدم اخر ايضا يعدل على الملف

اشترى رجل كتاب

فعليا كانت هذه العقبة لانشاء نظم ادارة قواعد بيانات تتحكم بالاقفال

لان اخر من يقوم بالتعديل هو من سيتم تثبيت التعديل على الملف

In bad state

#5
X-File كتب:

النسبة لطلب دالة معينة عموما نظام التشغيل سيقوم بتوزيع العملب بناءا على الافضليات ولن يؤثر ذلك بشيىء

اما بالنسبة للكتابة على الملف

ملف نصي يحوي ما يلي

اشترى رجل حاسب

عدل مستخدم ما الملف ليصبح

اشترى رجل سيارة

واثناء التعديل والاصافة يوجد مستخدم اخر ايضا يعدل على الملف

اشترى رجل كتاب

فعليا كانت هذه العقبة لانشاء نظم ادارة قواعد بيانات تتحكم بالاقفال

لان اخر من يقوم بالتعديل هو من سيتم تثبيت التعديل على الملف

رد جميل و واضح، فعلاً مشكلة، لأن خبرتي هي في الجافا، وبالطبع جافا تدعم وبقوة نظام التحكم والأقفال.

مع العلم أني أرى يمكن تعلم PHP خلال أسبوع، لكن أحياناً تحتاج لكتابة أكواد أعقد من السي، threads كمثال

تم تعديل هذه المشاركة بواسطة محمد الصقري في 5 سبتمبر 2010 في 02:44

#6

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

(map share people)

فضلا لاتقم بمراسلتي من أجل أسئلة لها أقسامها في المنتدى حتى تعم الفائدة على الجميع وللحصول على إجابات أفضل من أعضاء أكثر خبرة.
Weblog
@bitbucket
@xmonader

#7

السلام عليكم

أنا جديد في المنتدى اخواني لكن لما رأيت الموضوع أردت أن أشارك برأي

أولا لا توجد أي مشكلة و المشكلة أخي أنت من خلقتها لنفسك

تريد دليلا على عدم وجود المشكلة؟

انضر الى الكم الهائل للمواقع الموجودة في الوب هل سمعت بأحد المواقع بشتكي؟

الفيس بوك يعمل رغم كل الضغط الموجود عليه

ان هذه المشكلة حلت في بدايات تطوير قواعد البيانات المركزية و الآن لا أضن أن لها وجود أصلا

لذا امضي في مشروعك و لا تستمع الى الأوهام

مجرد رأي متواضع من هاوي برمجة

مواضيع مشابهة