ແຍກຄຳຮ້ອງຜ່ານພຣັອກຊີ PowerShell 5.1 ດ້ວຍ Start-Job
ໃຊ້ວຽກພື້ນຫຼັງທຳມະດາເພື່ອແຍກຄຳຮ້ອງເວັບ Windows PowerShell 5.1 ອອກຈາກການປ່ຽນແປງເຄືອຂ່າຍກ່ອນໜ້າໃນຂະບວນການ.
ໃນເຊສຊັນ Windows PowerShell 5.1, ອົງປະກອບກ່ອນໜ້າອາດປ່ຽນສະຖານະເຄືອຂ່າຍ .NET ພາຍໃນຂະບວນການ. ວຽກພື້ນຫຼັງ Start-Job ທຳມະດາໃຫ້ຂະບວນການ PowerShell ແຍກຕ່າງຫາກສຳລັບການດຳເນີນການເວັບຕໍ່ໄປ.
$job = Start-Job -ArgumentList $uri, $proxyUri -ScriptBlock {
param($destination, $intermediary)
$response = Invoke-WebRequest -Uri $destination `
-Proxy $intermediary -UseBasicParsing -TimeoutSec 30
$response.Content
}
try {
Receive-Job -Job $job -Wait -ErrorAction Stop
}
finally {
Remove-Job -Job $job
}
uri ແລະ proxyUri ແມ່ນຄ່າທີ່ແອັບພລິເຄຊັນສະໜອງ. ສຳລັບການທົດສອບ HTTP ສາທາລະນະ, ລາຍການພຣັອກຊີ HTTP ໃຫ້ທີ່ຢູ່ກາງທີ່ເປັນໄປໄດ້; ຮັກສາຈຸດປາຍທາງທີ່ເລືອກໃຫ້ຄົງທີ່ເມື່ອປຽບທຽບຂະບວນການ. ສະໜອງຂໍ້ມູນຢືນຢັນຕົວຕົນຂອງພຣັອກຊີທີ່ຕ້ອງການຜ່ານອິນພຸດວຽກ ແລະ ພາລາມິເຕີຄຳຮ້ອງ. ວັດຖຸເຊສຊັນເວັບທີ່ມີຊີວິດຈາກພໍ່ແມ່ບໍ່ໄດ້ຖືກໃຊ້ຄືນອັດຕະໂນມັດ.
ວຽກມີສະຖານະເຊສຊັນຂອງຕົນເອງ; ໂຫຼດຟັງຊັນ ຫຼື ໂມດູນທີ່ຕ້ອງການຢູ່ທີ່ນັ້ນ. ຜົນລັບຂອງມັນຂ້າມຂອບເຂດຂະບວນການ, ດັ່ງນັ້ນການສົ່ງຄືນເນື້ອຫາຢ່າງຕັ້ງໃຈແມ່ນງ່າຍກວ່າການສົມມຸດວ່າການຕອບສະໜອງທີ່ຖືກຖອດລຳດັບຈະປະພຶດເໝືອນວັດຖຸທີ່ມີຊີວິດເດີມ.
Start-ThreadJob ໃຊ້ຮູບແບບການປະຕິບັດອື່ນ ແລະ ບໍ່ໃຫ້ການແຍກຂະບວນການດຽວກັນ. ຂະບວນການແຍກຕ່າງຫາກກໍບໍ່ໄດ້ແກ້ໄຂຈຸດປາຍທາງພຣັອກຊີທີ່ບໍ່ຖືກຕ້ອງ ຫຼື ນະໂຍບາຍທົ່ວເຄືອຂ່າຍ. ໃຊ້ຂອບເຂດນີ້ເມື່ອສະຖານະຂະບວນການຮ່ວມເປັນຄວາມແຕກຕ່າງທີ່ກ່ຽວຂ້ອງ.