PDA

View Full Version : نوشتن سرویس پایدار



yaas135
یک شنبه 27 آذر 1384, 16:22 عصر
سلام
گرچه این سوال رو برای این موردِ خاص مطرح می کنم،‌اما ممنون می شم اگر دوستان خیی کامل جواب بدن:
من یه سرور اپلیکیشن با دلفی نوشتم و قصد دارم اون رو روی یک سرور به عنوان یک سرویس راه اندای کنم. این سرویس هر چند ثانیه باید داده ها رو از اس کیو ال بگیره و بصورت فایل روی سرور ذخیره کنه.
حالا با توجه به این که هر روز ممکنه این سرویس مثلا چند هزار فایل رو بسازه، و فشار بیاد بهش می خوام ببینم دوستان برای پایداری این سرویس (که دم به دقیقه هنگ نکنه!) ]چه پیشنهاداتی دارن؟

من از این دستوارت استفاده کردم برای انجام این کار:

ضمنا من برای اینکه بدونم کدوم قایلها جدید اومدن و ساخته نشدن،‌اطلاعات جدید رو از یک پروسیجر می گیرم، به این ترتیب در این سرویس از یک تایمر و کامپوننت استورد پروسیجر استفاده کردم.
لطقا پیشنهادات خودتون رو برای پایداری این سرویس بفرماییدک
var
fileType: TextFile;
Path: string;
begin
AssignFile(fileType, 'C:\path.txt');
Reset(fileType);
ReadLn(fileType, Path);
fileGen.Open;
while Not filegen.Eof do
begin
ForceDirectories(Path+fileGenAddress.AsString);
fileGenContext.SaveToFile(Path+fileGenAddress.AsSt ring+fileGenFileName.AsString);
fileGen.Next;
end;
CloseFile(fileType);
fileGen.close;
end;

yaas135
دوشنبه 28 آذر 1384, 11:08 صبح
کسی نیست کمکون کنه؟

سید مسعود موحد
دوشنبه 28 آذر 1384, 12:43 عصر
دوست عزیز
من هم کار شما را انجام داده ام شما باید یک سرویس بنویسید که همیشه سرویس شما را چک کند که اگر STOP و شده آنرا دوباره استارت کند.

yaas135
دوشنبه 28 آذر 1384, 14:45 عصر
اون وقت این کار منطقیه؟ سرویس باید خودش اون قدر پایداری داشته باشه که لازم نباشه سرویس دیگری رو برای بپا بگذاریم. ضمن این که این طوری ما فقط امکان هنگ کدن سرویس رو تریبا دو سوم کاهش دادیم، چون ممکنه همین سرویس نگهبان هم خودش دچار مشکل بشه!!!

سید مسعود موحد
سه شنبه 29 آذر 1384, 08:46 صبح
آخه سرویس نگهبان کاری بجز نگهداری سرویس دیگر ندارد و معمولا میشود گفت که هیچگاه دچار مشکل نمیشود ولی سرویس دیگر اگر کارهای بزرگی انجام دهد و یک خطایی بخورد و استاپ بشود احتمالش بعید نیست

yaas135
سه شنبه 29 آذر 1384, 11:04 صبح
این منظقی نیست، چون با گذشت زمان باز هم ممکنه که اون سرویس دچار مشکل بشه، ضمن این که در تنظیمات سرویس میشه مشخص کرد، فلان سرویس هر چند دقیقه یا روز یک بار ری ست بشه!