نمایش نتایج 1 تا 5 از 5

نام تاپیک: حل مشکل همزمانی

  1. #1

    حل مشکل همزمانی

    با سلام

    من یه سایت بر پایه تکنولوژی سیلورلایت دارم
    و از طریق dataset ,table adapter با دیتابیس و سپس از طریق wcf با سمت کلاینت ارتباط برقرار میکنم.

    احتمالا دوستان با مشکل همزمانی اشنا هستن. از اونجا که بنده اشنایی زیادی با مقوله بانک اطلاعات ندارم یه سوال برام پیش اومده.

    مشکل احتمالی که امکان داره پیش بیاد زمانی هست که مثلا کاربر A یک رکورد رو پاک کنه در صورتی که کاربر B اون رکورد رو قبلا پاک کرده باشه. از اونجا که پاک کردن رکورد از طریق کلید تیبل هست و کلید رو هم بصورت auto generate گذاشتم . اینطوری در واقع هر 2 کاربر قصد پاک کردن 1 رکورد رو دارن ولی 2 رکورد پاک میشه (اگه اشتباه میکنم بفرمایید)
    و همچنین همچین شرایطی هم ممکنه زمان edit بوجود بیاد.

    راه حلی که خودم حدس زدم اینه که قبل از عملیات edit و delete توسط table adapter ، اطلاعات رو چک کنم . مثلا اگه کاربر خواست رکوردی رو پاک کنه قبلش چک کنم ببینم اطلاعات اون رکورد توی دیتاگرید با اطلاعات اون رکورد توی دیتابیس یکی هست یا خیر ، اگه یکی بود پاک کنه اگه نبود پیغام خطا ارسال بشه

    میخواستم نظر دوستان و اساتید رو بدونم

    با تشکر

  2. #2

    نقل قول: حل مشکل همزمانی

    با سلام
    این مبحث تحت عنوان Concurrency مطالب زیادی وجود داره که بهتره خودتون مطالعه کنید.
    به طور خلاصه بگم 2 روش وجود داره:
    1.lock کردن رکورد در دیتابیس که هزینه این کار زیاده.
    2.ایجاد فیلد از نوع time stamp یا row version در جدول مورد نظر به طوریکه هر بار چند نفر همزمان یک رکورد را گرفتند این فیلد را هم نگه میدارند و موقع ویرایش یا حذف آن را با فیلد در جدول مقایسه میکنند،اگه مساوی بود عمل ویرایش یا حذف انجام شده و فیلد update میگردد. حال نفرات بعدی چون فیلدشان با فیلد جدول یکسان نیست پیغامی مبنی بر همزمانی دریافت میکنند یعنی یک نفر قبلاً آن را ویرایش کرده است!

  3. #3
    کاربر دائمی آواتار aghayex
    تاریخ عضویت
    دی 1388
    محل زندگی
    https://telegram.me/Sed_kazem18
    پست
    924

    نقل قول: حل مشکل همزمانی

    آیا دوستی تا حالا بحث همزمانی با استفاده از روشهای استاندارد رو پی گیری کرده؟

  4. #4

    نقل قول: حل مشکل همزمانی

    سلام.
    شما باید از تکنولوژی هایی مثل Notification ها استفاده کنید و هر بار که تغییری در سمت دیتابیس رخ میده سمت سایت رو با استفاده از تکنولوژی هایی مثل Ajax بروز کنید که کاربر همیشه آخرین تغییرات رو ببینه. یک راه جلوگیری از این اتفاقات همین روشی هست که عرض کردم.مانند کاری که سایتهایی مانند Gmail,Yahoo,Facebook انجام میدن.

  5. #5

    نقل قول: حل مشکل همزمانی

    hdfhdfhdghdfh

تاپیک های مشابه

  1. مشکل همزمانی استفاده از پایگاه داده ها در MS sql
    نوشته شده توسط khadem1386 در بخش SQL Server
    پاسخ: 1
    آخرین پست: دوشنبه 26 اسفند 1387, 14:01 عصر
  2. مشکل همزمانی در ویراش و حذف رکوردها
    نوشته شده توسط sh در بخش SQL Server
    پاسخ: 12
    آخرین پست: پنج شنبه 01 شهریور 1386, 16:49 عصر
  3. مشکل همزمانی یا concurrency
    نوشته شده توسط ب- تات در بخش بانک های اطلاعاتی در Delphi
    پاسخ: 21
    آخرین پست: جمعه 21 اردیبهشت 1386, 08:50 صبح
  4. مشکل همزمانی در شبکه
    نوشته شده توسط yavari در بخش برنامه نویسی در 6 VB
    پاسخ: 4
    آخرین پست: پنج شنبه 09 فروردین 1386, 04:16 صبح
  5. مشکل همزمانی دستیابی به داده ها
    نوشته شده توسط در بخش VB.NET
    پاسخ: 4
    آخرین پست: دوشنبه 31 شهریور 1382, 22:39 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •