1395/2/4، 08:52 عصر
موردی ذهنم رو درگیر کرده و راه حلش رو میخوام.
فرض کنید در بازی آنلاین میخواهیم کاربر رو در سرور ثبت کنیم.
کاربر با دادن نام روی سرور ذخیره میشه و یک id به ترتیب به اونها تعلق میگیره.
تا اینجا مشکلی نیست ولی اگر همزمانی پیش بیاد راه حلش چیه؟
مثلا id کاربر میشه 300 و باید به بازی بگیم آخرین id سرور رو به عنوان شناسه کاربر تو متغیر ذخیره کن.
حالا اگه تو فاصله زمانی بین post و get کاربر 301 ثبت نام کنه اونوقت کاربر در اصل آیدی 300 داره ولی آیدی 301 رو که حالا آخرین آیدی شده تو متغیر گلوبالش ذخیره کرده.
چه راهی برای این مشکل پیشنهاد میکنید؟ یعنی چطور همون لحظه ای که کاربر ثبت میشه شماره id رو از سرور بگیره قبل از اینکه شخص دیگه ای ثبت نام کنه و id آخر رو تغییر بده.
میدونم سوال مفهومی بود ولی تو بازی های با کاربر زیاد حتما پیش میاد
فرض کنید در بازی آنلاین میخواهیم کاربر رو در سرور ثبت کنیم.
کاربر با دادن نام روی سرور ذخیره میشه و یک id به ترتیب به اونها تعلق میگیره.
تا اینجا مشکلی نیست ولی اگر همزمانی پیش بیاد راه حلش چیه؟
مثلا id کاربر میشه 300 و باید به بازی بگیم آخرین id سرور رو به عنوان شناسه کاربر تو متغیر ذخیره کن.
حالا اگه تو فاصله زمانی بین post و get کاربر 301 ثبت نام کنه اونوقت کاربر در اصل آیدی 300 داره ولی آیدی 301 رو که حالا آخرین آیدی شده تو متغیر گلوبالش ذخیره کرده.
چه راهی برای این مشکل پیشنهاد میکنید؟ یعنی چطور همون لحظه ای که کاربر ثبت میشه شماره id رو از سرور بگیره قبل از اینکه شخص دیگه ای ثبت نام کنه و id آخر رو تغییر بده.
میدونم سوال مفهومی بود ولی تو بازی های با کاربر زیاد حتما پیش میاد