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

نام تاپیک: مشکل تداخل بین proccess ها در ذخیره اطلاعات در جداول دیتابیس در Entity FrameWork

  1. #1
    کاربر دائمی آواتار saeidgab
    تاریخ عضویت
    بهمن 1385
    محل زندگی
    طهرون
    پست
    101

    مشکل تداخل بین proccess ها در ذخیره اطلاعات در جداول دیتابیس در Entity FrameWork

    سلام به همگی،
    من یه برنامه نوشتم که در DataAccess از EntityFrameWork استفاده کردم و اطلاعات حجیمی رو (تا 10000 رکورد) از طریق چند XML هر دقیقه میخونم و بعد از تجزیه تحلیل اونا، نتیجه رو در بانک ذخیره میکنم. در ضمن با توجه به حجم بالای اطلاعات و نیاز به سرعت در انجام تجزیه تحلیلها برنامه رو به صورت MultiThread نوشتم. مشکل اینه که بعضی وقتا proccess ها با هم در کار با دیتابیس تداخل پیدا میکنن و برنامه ارور زیر رو میده:
    An error occurred while updating the entries. See the InnerException for details.
    Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding.
    البته اول در select هایی هم که از دیتابیس میزدم ارور Timeout expired رو میداد که بعد از search تو نت این کد رو پیدا کردم و جاهایی که تو برنامه میخواستم با دیتابیس کار کنم ازش استفاده کردم:
       using (var t = new TransactionScope(TransactionScopeOption.Required, new TransactionOptions { IsolationLevel = System.Transactions.IsolationLevel.ReadUncommitted }))
    {
    ObjectEntities ctx= new ObjectBetEntities();
    }

    اساتید که تجربه و دانشی در این زمینه دارن لطفا کمک کنن، با تشکر.

  2. #2
    کاربر دائمی
    تاریخ عضویت
    فروردین 1388
    محل زندگی
    کرج
    پست
    319

    نقل قول: مشکل تداخل بین proccess ها در ذخیره اطلاعات در جداول دیتابیس در Entity FrameWork

    دوستان دقیقا من هم همین مشکل رو دارم تو بعضی از قسمتای برنامم از transactionscope استفاده کردم و وقتی چند کاربر همزمان باهم کار میکنند انگار تداخل پیدا میکنه و خطای زیر رو میده:
    Timeout expired.The timeout period elapsed prior to completion of the operation or the serve is not responding
    برای اینکه چند تا عملیاتی که با هم انجام می شود در صورتی که یکی از آنها اجرا نشد بقیه عملیات هم متوقف شود به جز استفاده از transactionscope ، آیا راه حل دیگه ای هم وجود داره؟

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

    نقل قول: مشکل تداخل بین proccess ها در ذخیره اطلاعات در جداول دیتابیس در Entity FrameWork

    دوست عزیز چون شما دارید به طور همزمان چند عمل مثل درج یا ویرایش یا حذف رو انجام میدید با خطای همزمانی مواجه میشید و باید از تکنیک های رفع همزمانی استفاده کنید . در سایت آقای نصیری در جستجوی سایت بزنید همزمانی در ef مطالب خوبی رو براتون میاره .

    مشکل دوست دوم هم برمیگرده به جواب ندادن سرویس دهنده و برنامه تا زمان مشخصی منتظر جواب میمونه و بعد از اتمام زمان خطای تایم اوت رو صادر می کنه . شما باید ببینی که چرا اینقدر زمان می بره تا به شما جواب داده بشه و اگه این زمان طبیعی هست باید زمان انتظار برنامه رو ببری بالا .

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

    نقل قول: مشکل تداخل بین proccess ها در ذخیره اطلاعات در جداول دیتابیس در Entity FrameWork

    دوست عزیز چون شما دارید به طور همزمان چند عمل مثل درج یا ویرایش یا حذف رو انجام میدید با خطای همزمانی مواجه میشید و باید از تکنیک های رفع همزمانی استفاده کنید . در سایت آقای نصیری در جستجوی سایت بزنید همزمانی در ef مطالب خوبی رو براتون میاره .

    مشکل دوست دوم هم برمیگرده به جواب ندادن سرویس دهنده و برنامه تا زمان مشخصی منتظر جواب میمونه و بعد از اتمام زمان خطای تایم اوت رو صادر می کنه . شما باید ببینی که چرا اینقدر زمان می بره تا به شما جواب داده بشه و اگه این زمان طبیعی هست باید زمان انتظار برنامه رو ببری بالا .

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

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