ພັດທະນາແອັບໃຫ້ມີຄຸນນະພາບ ແລະ ໄວດ້ວຍການນຳໃຊ້ DevOps
⭐️ DevOps ແມ່ນຫຍັງ?
DevOps ແມ່ນການລວມສອງຄຳເຂົ້າກັນ Development + Operations ນັ້ນເອງ.
▶️ ຫຼື ອີກຄວາມໝາຍໜຶ່ງແມ່ນການປະສົມປະສານລະຫວ່າງ ວັດທະນະທຳ (Culture), ແນວທາງການປະຕິບັດ (Practice) ແລະ ເຄື່ອງມື (Tools) ເພື່ອຫຼຸດຊ່ອງຫວ່າງໃນການເຮັດວຽກລະຫວ່າງທີມພັດທະນາ (Development) ກັບ ທີມປະຕິບັດງານ (Operations) ເພື່ອເຮັດໃຫ້ອົງກອນນັ້ນໆສາມາດສົ່ງມອບຊອບແວ ຫຼື ແອັບໃຫ້ລູກຄ້າ ຫຼື ຜູ້ໃຊ້ໄດ້ໄວຂຶ້ນ ແລະ ມີປະສິດທິພາບຫຼາຍກວ່າການເຮັດວຽກແບບເກົ່າໆ.
▶️ ຫຼາຍຄົນອາດຄິດວ່າທີມ Dev ແມ່ນມີແຕ່ຄົນທີ່ຂຽນໂຄ໊ດເທົ່ານັ້ນ — ແຕ່ນີ້ບໍ່ແມ່ນຄວາມຈິງທັງໝົດ. ຜູ້ຊ່ວຍໃນການສ້າງຜະລິດຕະພັນຂອງທີມ Dev ລວມມີ: ນັກອອກແບບ, QA, Tester ແລະ ອື່ນໆ. ໃນທາງດຽວກັນ, ທີມ Ops — ລວມມີ: ວິສະວະກອນລະບົບ, release engineers, ຜູ້ບໍລິຫານລະບົບ, ຜູ້ຈັດການຖານຂໍ້ມູນ, ວິສະວະກອນເຄືອຂ່າຍ, ຜູ້ຈັດການຝ່າຍປະຕິບັດງານ ແລະ ອື່ນໆ.
▶️ ໃນການພັດທະນາແອັບໃດໜຶ່ງບັນຫາທີ່ມັກຈະເກີດຂຶ້ນແມ່ນ ‘ເວລາ’ ເພາະບໍ່ສາມາດປ່ອຍແອັບໄດ້ຕາມເວລາທີ່ກຳນົດ, ຍ້ອນແນວນີ້ DevOps ຈຶ່ງໄດ້ກຳເນີດຂຶ້ນເພື່ອຊ່ວຍຫຼຸດຕົ້ນທຶນດ້ານເວລາ, ຄ່າໃຊ້ຈ່າຍ ແລະ ເພີ່ມປະສິດທິພາບໃນການເຮັດວຽກໃຫ້ດີຂຶ້ນ.
▶️ DevOps ບໍ່ມີຮູບແບບ ແລະ ເຄື່ອງມືໃນການເຮັດວຽກແບບຕາຍໂຕ ຈະແຕກຕ່າງໄປຕາມໜ້າວຽກ ແລະ ອົງກອນນັ້ນໆ ເຮົາຈະເອີ້ນຄົນທີ່ເຮັດວຽກໃນຕຳແໜ່ງນີ້ວ່າ DevOps Engineer.
DevOps ຊ່ວຍແກ້ບັນຫາໄດ້ແນວໃດ?
ແຕ່ລະອົງກອນແມ່ນຈະເຈີກັບບັນຫາທ້າທາຍເປັນຂອງຕົນເອງ ແຕ່ບັນຫາທົ່ວໄປທີ່ມັກຈະເຈີແມ່ນ ເວລາການເປີດໂຕທີ່ດົນເກີນໄປ, ແອັບທີ່ບໍ່ກົງກັບຄວາມຄາດຫວັງ ແລະ IT ທີ່ຈຳກັດການເຕີບໂຕຂອງອົງກອນ ການເຂົ້າມາຂອງ DevOps ຊ່ວຍແກ້ບັນຫາເລື່ອງການສື່ສານ ແລະ ການຈັດລຳດັບຄວາມສຳຄັນລະຫວ່າງທີມ, ການຖ້າເປັນເວລາດົນ, ຂັ້ນຕອນແບບ manual ຈະຖືກແທນທີ່ດ້ວຍການນຳໃຊ້ເຄື່ອງມືເຂົ້າມາຊ່ວຍເຮັດໃຫ້ໂປຣເຈັກທີ່ນຳໃຊ້ DevOps ສາມາດປ່ຽນຈາກລາຍການຄວາມຕ້ອງການ ມາເປັນແອັບທີ່ສາມາດໃຊ້ງານຈິງໄດ້ໄວຂຶ້ນ ແລະ ຮອບເວລາສັ້ນລົງ ເພື່ອສາມາດສົ່ງມອບແອັບຕາມທີ່ລູກຄ້າຕ້ອງການ ແລະ ທັນກຳນົດເວລາ.
⭐️ ຂໍ້ດີຂອງ DevOps ມີຫຍັງແດ່?
▶️ ຊ່ວຍປັບປຸງຄຸນນະພາບຂອງແອັບ
ການເຮັດວຽກຮ່ວມກັນລະຫວ່າງທີມພັດທະນາ ແລະ ທີມປະຕິບັດງານ ແລະ ການຮວບຮວມເອົາຄຳຄິດເຫັນຂອງຜູ້ໃຊ້ເລື້ອຍໆເຮັດໃຫ້ເກີດມີການປັບປຸງຄຸນນະພາບຂອງແອັບ.
▶️ ສົ່ງແອັບໄດ້ໄວ ແລະ ຕໍ່ເນື່ອງ
ທຸກໆພະແນກມີໜ້າທີ່ຮັບຜິດຊອບໃນການຮັກສາຄວາມສະຖຽນ ແລະ ນຳສະເໜີຟີເຈີໃໝ່ໆ. ດັ່ງນັ້ນ, ຄວາມໄວໃນການຈັດສົ່ງແອັບແມ່ນໄວ ແລະ ບໍ່ຖືກລົບກວນ, ແຕກຕ່າງຈາກວິທີການເຮັດວຽກແບບດັ້ງເດີມ.
▶️ ຫຼຸດຕົ້ນທຶນໃນບ້ວງການຜະລິດ
ດ້ວຍການເຮັດວຽກຮ່ວມກັນຢ່າງເໝາະສົມ, DevOps ຈະຊ່ວຍຫຼຸດຕົ້ນທຶນການຈັດການ ແລະ ການຜະລິດຂອງພະແນກທີ່ກ່ຽວຂ້ອງ ບໍ່ວ່າຂະເປັນ maintenance ແລະ ການອັບເດດໃໝ່ໆ.
▶️ ມີເທັກນິກການແກ້ບັນຫາທີ່ໄວ ແລະ ໜ້າເຊື່ອຖື
ຮັບປະກັນການແກ້ໄຂທີ່ວ່ອງໄວ ແລະ ໝັ້ນຄົງຕໍ່ກັບຂໍ້ຜິດພາດທາງເທັກນິກ ໃນການຈັດການແອັບແມ່ນໜຶ່ງໃນຈຸດດີຕົ້ນຕໍຂອງ DevOps.
▶️ ມີຄວາມໂປ່ງໃສທີ່ເຮັດໃຫ້ໄດ້ຮັບຜົນທີ່ມີປະສິດທິພາບ
ດ້ວຍການລົບລ້າງ silo (ing) ແລະ ການສົ່ງເສີມການເຮັດວຽກຮ່ວມກັນ, DevOps ຊ່ວຍໃຫ້ການສື່ສານລະຫວ່າງສະມາຊິກໃນທີມງ່າຍຂຶ້ນ, ເຮັດໃຫ້ພວກເຂົາມີຄວາມເອົາໃຈໃສ່ໃນສາຍສະເພາະຫຼາຍຂຶ້ນ. ສະນັ້ນ, ການລວມເອົາການປະຕິບັດຂອງ DevOps ໄດ້ເຮັດໃຫ້ເກີດມີການເພີ່ມປະສິດທິພາບ ແລະ ປະສິດທິຜົນໃນບັນດາພະນັກງານຂອງອົງກອນ.
▶️ ເພື່ອເຮັດໃຫ້ເຫັນພາບ DevOps ຫຼາຍຂຶ້ນນີ້ແມ່ນຕົວຢ່າງບໍລິສັດລະດັບໂລກທີ່ນຳໃຊ້ DevOps ໃນອົງກອນຕົນເອງ
ETSY
Etsy ແມ່ນໜຶ່ງໃນຫຼາຍໆບໍລິສັດທຳອິດທີ່ນຳໃຊ້ DevOps. Etsy ເປັນເວັບໄຊອີຄອມເມີດສັນຊາດອາເມລິກາທີ່ເນັ້ນການຂາຍເຄື່ອງ vintage ແລະ handmade.
ບັນຫາ
ໃນເບື້ອງຕົ້ນ, Etsy ພົບກັບບັນຫາໃນການພັດທະນາອົງກອນເພາະພວກເຂົາໄດ້ເອົາສະຖາປັດຕະຍະກຳ monolithic ມາໃຊ້ ອັດຕາການປັບໃຊ້ຂອງ Etsy ແມ່ນປະມານສອງຄັ້ງຕໍ່ອາທິດເຊິ່ງສົ່ງຜົນໃຫ້ເກີດການແຍກໂຕອອກມາຂອງພະນັກງານຈາກພະແນກຕ່າງໆ ດ້ວຍເຫດນີ້ Etsy ຕ້ອງຊອກຫາທາງອອກຈາກລະບົບວັດທະນະທຳນີ້.
ວິທີແກ້
CTO ຄົນໃໝ່ໄດ້ນຳເອົາ DevOps ມາປັບໃຊ້ໃນທີມ ໂດຍນຳໃຊ້ເຄື່ອງມື CI/CD pipeline (Writing chunks of code > Deploy the code >Efficient and fast deploy>Test and feedback>Fix issue, roll forward) ຊ່ວຍໃນການປັບໃຊ້ບໍລິການປະມານ 50 ຫາ 100 ເທື່ອຕໍ່ມື້.
ໂຄ໊ດທີ່ປ່ອຍທຳອິດແມ່ນຊຸດຜູ້ໃຊ້ແບບສຸ່ມພາຍໃນອົງກອນ ຫຼັງຈາກການທົດສອບ ແລະ ໄດ້ຮັບຄຳແນະນຳແລ້ວໄດ້ຖືກສົ່ງຕໍ່ໄປຫາພະນັກງານໃນພະແນກອື່ນໆໃນ Etsy.
Netflix
Netflix ເລີ່ມຕົ້ນທຸລະກິດຈາກການໃຫ້ເຊົ່າ DVD, ແຕ່ປັດຈຸບັນໄດ້ກາຍມາເປັນຜູ້ໃຫ້ບໍລິການດ້ານສື່ (Steaming Platform) ທີ່ໃຫຍ່ທີ່ສຸດເຊິ່ງສະມາຊິກໃຊ້ງານເຖິງ 182 ລ້ານຄົນໃນທົ່ວໂລກ.
ບັນຫາ
ຄືກັນກັບອົງກອນອື່ນໆ, Netflix ໄດ້ນຳໃຊ້ Monolithic ສະຖາປັດຕະຍະກຳເພື່ອຈັດການກັບຂະໜາດ ແລະ ປະລິມານການໃຊ້ງານຈຳນວນມະຫາສານທີ່ເກີດຈາກສະມາຊິກຂອງ Netflix ແລະ ເກີດການຂາດແຄນ commercial tools.
ວິທີແກ້
Netflix ໄດ້ເລີ່ມຕົ້ນຍ້າຍຈາກການໃຊ້ ສະຖາປັດຕະຍະກຳ Monolithic ໄປເປັນສະຖາປັດຕະຍະກຳ Microservice ແລະ ໃຊ້ປະມານ 700 ລາຍການເພື່ອຄວບຄຸມແຕ່ລະພາກສ່ວນຂອງບໍລິການເຕັມຮູບແບບ.
ສະຖາປັດຕະຍະກຳ Microservice ແບ່ງທີມວິສະວະກອນອອກຈາກກັນ ແລະ ຊ່ວຍໃຫ້ພວກເຂົາສ້າງ, ທົດສອບ ແລະ ນຳໃຊ້ບໍລິການຂອງຕົນເອງ ຍ້ອນຄວາມຢືດຢຸ່ນນີ້ເອງ ເຮັດໃຫ້ພວກເຂົາສາມາດພັດທະນາແບບກ້າວກະໂດດ.
**Microservices ກັບ Monolithic ແມ່ນສະຖາປັດຕະຍະກຳ ຫຼື ເທັກນິກໃນການພັດທະນາຊອບແວ
ແຫຼ່ງຂໍ້ມູນ
(1) https://hackr.io/blog/what-is-devops