PDA

View Full Version : مشکل کار با Service Broker برای عدم حدف Queue



rooshan2008
پنج شنبه 12 خرداد 1390, 12:13 عصر
با سلام خدمت اساتید محترم
من چندوقتی هست از Service broker استفاده میکنم وبه یک مشکل برخوردم .
از اونجا که وقتی Notification شروع به کار میکنه یک Queue و همچنین یک سرویس و Stored Procedure در سیستم درست میکنه وقتی برنامه به پایان کار خودش میرسه منظورم Aplication هست که notification رو ایجاد کرده اجزای notification همچنان سرجای خودشون هستن و از بین نمیرن و این مساله باعث میشه کلی ارور لاگ تو سیستم ایجاد بشه و همینطور کارایی کل دیتابیس رو پایین بیاره.
لازم به ذکر هست که Notification درست کار میکنه حتی در هنگام Finalize من تمام اشیا مربوط رو Stop و یا از بین میبرم.

ممنون میشم از اساتید که منو راهنمایی کنن.

Microsoft SQL Server Enterprise Edition 2008

AminSobati
یک شنبه 15 خرداد 1390, 10:18 صبح
سلام دوست عزیزم،
Objectهایی که برای هر Client بوجود میاد، با مکانیزمی شبیه به Garbage Collection حذف میشن. یعنی وقتی یک Client ارتباطش رو قطع میکنه، SPها و Queue و ... که براش تولید شدن بلافاصله Drop نمیشن. اما بعد از گذشت چند دقیقه که البته زمانش رو اندازه نگرفتم، حذف خواهند شد.

rooshan2008
یک شنبه 15 خرداد 1390, 14:50 عصر
با سلام خدومت استاد عزیز
حرفتون کاملا صحیح هست من متوجه شدم که Sqlnotification نباید در هنگام Finalize شدن Stop بشه ولی این درصورتی هست که برنامه شما درحال دیباگ خاتمه پیدانکه و یا نباید با خطای های دیگه بدون Stop کردن خارج بشه .
درغیر این صورت مشکل باقی هست و چون Notification درواقع مثل یک پرسه داخلی هست و باعث کاهش کارایی میشه.

AminSobati
جمعه 20 خرداد 1390, 00:41 صبح
مشکلی که از بابت سرعت برخورد کردین چی بود دقیقا؟