نوشته شده توسط
Ali_Sedaghat
شما یه کاری انجام بده
برای ثبت نام کاربر جدید و ساخت ایمیل یک فایل پردازش دیگه درست کن چرا که اگه فایل پردازش شما یکی باشه این حلقه ی تکرار مدام با ثبت نام کاربر جدید انجام میشه.
یا اگه ساخت فایل جدید امکان پذیر نیست، باید شرط تعیین کنی که وقتی افرادی هم زمان در حال ثبت نام هستن و این فایل قراره پردازش بشه، به بانک اطلاعاتی نگاه کنه و ببینه آیا افرادی که در بانک اطلاعاتی قرار دارن و در داخل حلقه داره روشون عملیات انجام میشه، ایمیل دارن یا خیر؟
اگه ایمیل دارن، رد بشه بره برای دور بعدی، در غیر این صورت برای اون فرد، ایمیل ساخته بشه.
قانون فایل ها در پردازش کردن به این صورت هست که هر وقت این فایل توسط کاربری فراخوانده میشه، کدهای اون فایل از اول خونده و اجرا میشه.
این طور نیست که برنامه به کاربر جدید بگه تو صبر کن من کارم رو انجام بدم بعد نوبت به تو برسه.
ممکنه به صورت همزمان، چند نفر بخوان از یه فایل استفاده کنن، اون موقع چه اتفاقی پیش میاد؟
آخرین پیشنهادم اینه که در فایلت، نشست یا کوکی ایجاد کن؛ شاید با ایجاد نشست، تداخلی در اجرای فایل به وجود نیاد.
اگه من باشم، برای خودم یک فایل مجزا برای ساخت ایمیل دست جمعی درست می کنم که فقط خودم بهش دسترسی داشته باشم و برای کاربران دیگه، فقط یک فایل.
فایلی که مال خودم هست دارای حلقه ی تکرار می کنم و اون شرطی رو که در بالا گفتم در فایلم پیاده سازی می کنم تا اختلالی در کار خودم و سایر کاربران ایجاد نشه.
سلام علی جان
میدونی چیه 1500 نفر عضو داریم در ربات
هر دو دقیقه یک بار کرن جاب اجرا می شده و در یک حلقه دستور check رو دو نه به دونه کاربر اطلاعاتش به یک سات ارسال میشه از طریق وب سرویس و اطلاعاتی گرفته میشه اسم فایلی که حلقه را نوشتم user.php است کاربر را چک میکنه در یک حلقه اطلاعات رو از دیتا بیس بگیره می فرسته به فایل send.php از طریق وب سرویس اطلاعات را می فرسته به سایت و یک اطلاعاتی را می گیری برای دونه دونه کاربر
این عمل زمان بر هست به طبع
حالا اگر دستور دیگه بیاد برای مثال ارسال سفارش برای همه کاربر ها در این میان ارسال دستور از طریق فایل buy.php فرستاده میشه به فایل user.php که سفارش خرید را برای 1500 تا کاربر انجام بشه
حالا سوال من اینه اگر در وسط عمل check سفارش خرید از طریق فایل buy.php به فایل user.php ارسال بشه بعضی وقت ها عمل نمیکنه
خودم خیلی فکر کردم نمیدونم چرا چی کار کنم
یعنی سوال من این هست ما چهار تا فایل داریم به نام های user.php buy.php send.php check.php
فایل check.php به کرن جاب وصل هست هر دو دقیقه اجرا میشه وقتی اجرا میشه دستور check را می فرسته به فایل user.php و فایل user.php در حلقه به 1500 حالا شاید زیاد باشه کاربر اطلاعات هر کاربر را از دیتا بیس میگیره می فرسته به فایل send.php و در فایل send.php از طریق وب سرویس اطلاعات کاربر را میگیره و را بررسی یکنه
و ممکنه در طول روز سفارش خرید از طریق فایل buy.php به فایل user.php ارسال بشه و از طریق حلقه به دونه به دونه کاربر اطلاعاتش را از ریق دیتا بیس بگیره بفرسته سفارش را به فایل send.php جهت خرید سفارش و که این سفارش خرید ممکن هست وسط عمل فوق هم بیاد چون عمل check زمان بر هست و در یک حلقه هست این عمل سفارش خرید تکلیفش چی میشه چون دیدم بعضی وقت ها عمل نمیکنه سفارش خرید نمی دونم چرا
<<check.php
user.php >> send.php << ...................................
<< buy.php
شکل اتصال فایل ها به شکل بالا هست الان من برای حل مشکل فوق چی کار کنم