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

همیشه توجه داشته باشیم که با رأی مثبت خود می توانیم از دوستانمان تشکر کنیم!

دسته بندی ها

890 سوال

854 پاسخ

363 نظر

1.1k کاربر


فعال ترین کاربران
این ماه:
  1. sahar123 - 2 امتیاز
Gute Mathe-Fragen - Bestes Mathe-Forum
+1 امتیاز

سلام 

من قصد دارم در حین اجرای شبیه سازی با توجه به محاسباتی که انجام می دهم در صورت نیاز تصمیم به کاهش تعداد VMها بگیرم. 

برای این کار باید یک VM را مشخص کنم و ان را تخریب کنم.

به نظر متد ProcessVmDestroy از کلاس Datacenter این کار انجام می دهد. به اين صورت كه يك event ایجاد می کند و برای رخ دادن ان را ارسال می کند.

1- حال اگر این فرایند که گفتم درست است. چطور باید این متد را فراخوانی کنم؟ از فایل اصلی اجرایی (مثل example1) یا از کلاس DatacenterBroker؟

2- اگر cloudlet های در حال اجرا در این VM باشند یا قرار باشد در آن اجرا شوند تکلیف انها چه می شود؟

کد متد تخریب VM از کلاس دیتاسنتر به این صورت است:

 

protected void processVmDestroy(SimEvent ev, boolean ack) {
Vm vm = (Vm) ev.getData();
getVmAllocationPolicy().deallocateHostForVm(vm);
 
if (ack) {
int[] data = new int[3];
data[0] = getId();
data[1] = vm.getId();
data[2] = CloudSimTags.TRUE;
 
sendNow(vm.getUserId(), CloudSimTags.VM_DESTROY_ACK, data);
}
 
getVmList().remove(vm);
}
بوسیله ی (کاربر معمولی) (696 امتیاز)
برای یافتن پاسخ های بیشتر، سئوال را به اشتراک بگذارید:

لطفا وارد شده یا عضو شوید تا بتوانید سوال بپرسید

...