คำถามและคำตอบสัมภาษณ์ DevOps 50 อันดับแรก (PDF)
ต่อไปนี้เป็นคำถามและคำตอบในการสัมภาษณ์ DevOps สำหรับผู้สมัครใหม่และมีประสบการณ์เพื่อให้ได้งานในฝัน
คำถามและคำตอบสัมภาษณ์ DevOps สำหรับน้องใหม่
1) อธิบายว่า DevOps คืออะไร?
เป็นคำศัพท์ใหม่ที่เพิ่งเกิดขึ้นในสาขาไอที ซึ่งเป็นแนวทางปฏิบัติที่เน้นการทำงานร่วมกันและการสื่อสารระหว่างนักพัฒนาซอฟต์แวร์และทีมปรับใช้ (ปฏิบัติการ) โดยเน้นที่การส่งมอบผลิตภัณฑ์ซอฟต์แวร์ได้เร็วขึ้นและลดอัตราความล้มเหลวของการเผยแพร่
👉 ดาวน์โหลดไฟล์ PDF ฟรี: คำถามและคำตอบสัมภาษณ์ DevOps >>
2) พูดถึงประเด็นสำคัญหรือหลักการเบื้องหลัง DevOps คืออะไร
ประเด็นสำคัญหรือหลักการเบื้องหลัง DevOps คือ
- โครงสร้างพื้นฐานเป็นรหัส
- การปรับใช้อย่างต่อเนื่อง
- อัตโนมัติ
- การตรวจสอบ
- ความปลอดภัย
3) การดำเนินงานหลักของ DevOps ในการพัฒนาแอพพลิเคชั่นและโครงสร้างพื้นฐานคืออะไร
การดำเนินงานหลักของ DevOps คือ
การพัฒนาโปรแกรมประยุกต์
- การสร้างรหัส
- ความครอบคลุมของรหัส
- การทดสอบหน่วย
- บรรจุภัณฑ์
- การใช้งาน
โครงสร้างพื้นฐาน
- การจัดเตรียม
- องค์ประกอบ
- orchestration
- การใช้งาน
4) อธิบายว่า “โค้ดโครงสร้างพื้นฐาน” ได้รับการประมวลผลหรือดำเนินการใน AWS อย่างไร
ใน AWS
- โค้ดสำหรับโครงสร้างพื้นฐานจะอยู่ในรูปแบบ JSON แบบธรรมดา
- รหัส JSON นี้จะถูกจัดระเบียบเป็นไฟล์ที่เรียกว่าเทมเพลต
- เทมเพลตเหล่านี้สามารถปรับใช้บน AWS DevOps และจัดการเป็นสแต็กได้
- Later บริการ CloudFormation จะดำเนินการสร้าง การลบ การอัปเดต ฯลฯ ในสแต็ก
5) อธิบายว่าภาษาสคริปต์ใดที่สำคัญที่สุดสำหรับวิศวกร DevOps
ภาษาสคริปต์ที่ง่ายกว่าจะดีกว่าสำหรับวิศวกร DevOps Python ดูเหมือนจะเป็นที่นิยมมาก
6) อธิบายว่า DevOps มีประโยชน์ต่อนักพัฒนาอย่างไร
DevOps จะเป็นประโยชน์สำหรับนักพัฒนาในการแก้ไขจุดบกพร่องและใช้งานคุณสมบัติใหม่ได้อย่างรวดเร็ว นอกจากนี้ยังช่วยให้การสื่อสารระหว่างสมาชิกในทีมชัดเจนยิ่งขึ้น
7) แสดงรายการเครื่องมือยอดนิยมสำหรับ DevOps?
เครื่องมือยอดนิยมบางส่วนสำหรับ DevOps ได้แก่
- เจนกิ้นส์
- Nagios
- monit
- ELK (อีลาสติกเสิร์ช, Logstash, คิบานะ)
- เจนกิ้นส์
- นักเทียบท่า
- เบิ้ล
- ไป
8) กล่าวถึงกรณีใดที่คุณใช้ SSH?
ฉันใช้ SSH เพื่อเข้าสู่ระบบเครื่องระยะไกลและทำงานบนบรรทัดคำสั่ง นอกจากนี้ ฉันยังใช้มันเพื่อส่งสัญญาณเข้าสู่ระบบเพื่ออำนวยความสะดวกในการสื่อสารที่มีการเข้ารหัสที่ปลอดภัยระหว่างโฮสต์ที่ไม่น่าเชื่อถือสองแห่งผ่านเครือข่ายที่ไม่ปลอดภัย
9) อธิบายว่าคุณจะจัดการกับการควบคุมการแก้ไข (เวอร์ชัน) อย่างไร
แนวทางของฉันในการจัดการกับการควบคุมการแก้ไขคือการโพสต์โค้ดบน SourceForge หรือ GitHub เพื่อให้ทุกคนสามารถดูได้ นอกจากนี้ ฉันจะโพสต์รายการตรวจสอบจากการแก้ไขครั้งล่าสุดเพื่อให้แน่ใจว่าปัญหาที่ยังไม่ได้รับการแก้ไขได้รับการแก้ไข
10) คำขอ Http ประเภทใดบ้าง
ประเภทของคำขอ HTTP คือ
- GET
- HEAD
- PUT
- POST
- ปะ
- ลบ
- ติดตาม
- เชื่อมต่อ
- OPTIONS
11) อธิบายสิ่งที่คุณจะตรวจสอบหาก Linux-build-server เริ่มช้าลงกะทันหัน?
หากเซิร์ฟเวอร์ Linux เริ่มช้าลงอย่างกะทันหัน คุณจะต้องตรวจสอบสิ่งสามประการต่อไปนี้
การแก้ไขปัญหาระดับแอปพลิเคชัน | ปัญหาที่เกี่ยวข้องกับ RAM, ปัญหาการอ่าน-เขียนของดิสก์ I/O, ปัญหาเกี่ยวกับพื้นที่ดิสก์ ฯลฯ |
การแก้ไขปัญหาระดับระบบ | ตรวจสอบไฟล์บันทึกของแอปพลิเคชันหรือไฟล์บันทึกของแอปพลิเคชันเซิร์ฟเวอร์ ปัญหาด้านประสิทธิภาพของระบบ บันทึกของเซิร์ฟเวอร์เว็บ – ตรวจสอบบันทึก HTTP, Tomcat lo, jboss หรือ WebLogic เพื่อดูว่าเวลาตอบสนอง/รับของแอปพลิเคชันเซิร์ฟเวอร์เป็นปัญหาของความล่าช้า หน่วยความจำรั่วหรือไม่ แอปพลิเคชัน |
การแก้ไขปัญหาบริการที่ขึ้นต่อกัน | ปัญหาที่เกี่ยวข้องกับการป้องกันไวรัส, ปัญหาเกี่ยวกับไฟร์วอลล์, ปัญหาเครือข่าย, ปัญหาเวลาตอบสนองของเซิร์ฟเวอร์ SMTP ฯลฯ |
12) องค์ประกอบหลักของ DevOps คืออะไร?
นี่คือสิ่งสำคัญบางประการ ระยะวงจรชีวิตของ DevOps:
- การพัฒนาอย่างต่อเนื่อง
- การบูรณาการอย่างต่อเนื่อง
- การทดสอบอย่างต่อเนื่อง
- การปรับใช้อย่างต่อเนื่อง
- การตรวจสอบอย่างต่อเนื่อง
- ผลตอบรับอย่างต่อเนื่อง
- อย่างต่อเนื่อง Operations
13) ตั้งชื่อแพลตฟอร์มคลาวด์บางส่วนที่ใช้สำหรับการใช้งาน DevOps
แพลตฟอร์มการประมวลผลบนคลาวด์ยอดนิยมที่ใช้สำหรับการใช้งาน DevOps ได้แก่:
- Google Cloud
- Amazon บริการเว็บ
- Microsoft Azure
14) ให้ประโยชน์บางประการของการใช้ระบบควบคุมเวอร์ชัน
- ระบบควบคุมเวอร์ชันช่วยให้สมาชิกในทีมทำงานได้อย่างอิสระกับไฟล์ใดๆ ได้ตลอดเวลา
- เวอร์ชันและเวอร์ชันที่ผ่านมาทั้งหมดถูกรวบรวมไว้ใน VCS อย่างใกล้ชิด
- VCS แบบกระจายช่วยให้คุณจัดเก็บประวัติทั้งหมดของโปรเจ็กต์ ดังนั้นในกรณีที่เซิร์ฟเวอร์กลางเสียหาย คุณสามารถใช้พื้นที่เก็บข้อมูล Git ในเครื่องของสมาชิกในทีมของคุณได้
- ช่วยให้คุณเห็นการเปลี่ยนแปลงที่แน่นอนในเนื้อหาของไฟล์
15) อธิบาย Git Bisect
Git bisect ช่วยให้คุณค้นหาคอมมิตที่ทำให้เกิดจุดบกพร่องโดยใช้การค้นหาแบบไบนารี
16) โครงสร้างคืออะไร?
บิลด์เป็นวิธีการที่รวมซอร์สโค้ดเข้าด้วยกันเพื่อตรวจสอบว่าทำงานเป็นหน่วยเดียวหรือไม่ ในกระบวนการสร้างบิวด์ ซอร์สโค้ดจะต้องได้รับการคอมไพล์ ตรวจสอบ ทดสอบ และปรับใช้
17) หุ่นเชิดคืออะไร?
หุ่นเชิด เป็นเครื่องมือการจัดการโครงการที่มีประโยชน์ ช่วยให้คุณทำงานด้านการดูแลระบบอัตโนมัติ
18) อธิบายการรับรองความถูกต้องด้วยสองปัจจัย
การรับรองความถูกต้องด้วยสองปัจจัยเป็นวิธีการรักษาความปลอดภัยที่ผู้ใช้ระบุตัวตนได้สองวิธีจากหมวดหมู่ที่แยกจากกัน
19) อธิบายคำว่า 'Canary ปล่อย'.
การเปิดตัว Canary เป็นรูปแบบที่ลดความเสี่ยงในการนำซอฟต์แวร์เวอร์ชันใหม่เข้าสู่สภาพแวดล้อมการผลิต โดยทำได้โดยทำให้ซอฟต์แวร์พร้อมใช้งานในลักษณะที่ควบคุมได้สำหรับผู้ใช้กลุ่มย่อย ก่อนที่จะทำให้ซอฟต์แวร์พร้อมใช้งานสำหรับกลุ่มผู้ใช้ทั้งหมด
20) การทดสอบประเภทใดที่สำคัญเพื่อให้แน่ใจว่าบริการใหม่พร้อมสำหรับการผลิต?
คุณต้องทำการทดสอบอย่างต่อเนื่องเพื่อให้แน่ใจว่าบริการใหม่พร้อมสำหรับการผลิต
คำถามและคำตอบสัมภาษณ์ DevOps สำหรับผู้มีประสบการณ์
21) คนเร่ร่อนคืออะไร?
คนเร่ร่อนเป็นเครื่องมือที่สามารถสร้างและจัดการสภาพแวดล้อมเสมือนจริงสำหรับการทดสอบและพัฒนาซอฟต์แวร์
22) การใช้ PTR ใน DNS คืออะไร?
บันทึกตัวชี้ซึ่งเรียกอีกอย่างว่า (PTR) ใช้สำหรับการค้นหา DNS แบบย้อนกลับ
23) เชฟคืออะไร?
เป็นแพลตฟอร์มอัตโนมัติที่ทรงพลังซึ่งเปลี่ยนโครงสร้างพื้นฐานให้เป็นโค้ด ในเครื่องมือนี้ คุณสามารถใช้สคริปต์การเขียนที่ใช้ในการทำให้กระบวนการเป็นอัตโนมัติได้
24) ข้อกำหนดเบื้องต้นสำหรับการนำ DevOps ไปใช้มีอะไรบ้าง?
ต่อไปนี้เป็นข้อกำหนดเบื้องต้นที่มีประโยชน์สำหรับการนำ DevOps ไปใช้:
- ซอฟต์แวร์ควบคุมเวอร์ชันอย่างน้อยหนึ่งรายการ
- การสื่อสารที่เหมาะสมระหว่างสมาชิกในทีม
- การทดสอบอัตโนมัติ
- การปรับใช้อัตโนมัติ
25) ระบุแนวทางปฏิบัติที่ดีที่สุดที่ควรปฏิบัติตามเพื่อความสำเร็จของ DevOps
แนวทางปฏิบัติที่ดีที่สุดที่จำเป็นสำหรับการนำ DevOps ไปใช้มีดังนี้:
- ความเร็วในการจัดส่งหมายถึงเวลาที่ใช้ในงานใดๆ เพื่อนำสิ่งเหล่านี้เข้าสู่สภาพแวดล้อมการใช้งานจริง
- ติดตามจำนวนข้อบกพร่องที่พบในต่างๆ
- สิ่งสำคัญคือต้องวัดเวลาจริงหรือเวลาเฉลี่ยที่ใช้ในการกู้คืนในกรณีที่เกิดความล้มเหลวในสภาพแวดล้อมการผลิต
- จำนวนข้อบกพร่องที่ลูกค้ารายงานยังส่งผลต่อคุณภาพของแอปพลิเคชันด้วย
26) อธิบายเครื่องมือ SubGIt
SubGit ช่วยให้คุณย้าย SVN ไปยัง Git นอกจากนี้ยังช่วยให้คุณสร้างมิเรอร์ Git แบบเขียนได้ของที่เก็บ Subversion ในเครื่องหรือระยะไกล
27) ตั้งชื่อเครื่องมือตรวจสอบเครือข่ายที่สำคัญ
เครื่องมือตรวจสอบเครือข่ายที่โดดเด่นที่สุดคือ:
- Splunk
- Icinga 2
- Wireshark
- Nagios
- OpenNMS
28) การ์ดแสดงผลของคุณสามารถทำงานได้หรือไม่ Unity คุณจะรู้ได้อย่างไร?
เมื่อคุณใช้คำสั่ง
/usr/lib/Linux/unity_support_test-p
มันจะให้ผลลัพธ์โดยละเอียดเกี่ยวกับ Unityและหากเป็นไปตามข้อกำหนดดังกล่าว การ์ดแสดงผลของคุณก็สามารถรัน Unity ได้
29) อธิบายวิธีการเปิดใช้งานเสียงเริ่มต้นใน Ubuntu?
เพื่อเปิดใช้งานเสียงเริ่มต้น
- คลิกเกียร์ควบคุมแล้วคลิก แอปพลิเคชั่นเริ่มต้น
- ตัว Vortex Indicator ได้ถูกนำเสนอลงในนิตยสาร การตั้งค่าแอปพลิเคชันเริ่มต้น หน้าต่างคลิก เพิ่ม เพื่อเพิ่มรายการ
- จากนั้นกรอกข้อมูลลงในช่องแสดงความคิดเห็น เช่น ชื่อ คำสั่ง และความคิดเห็น
/usr/bin/canberra-gtk-play—id= "desktop-login"—description= "play login sound"
- ออกจากระบบแล้วเข้าสู่ระบบเมื่อคุณทำเสร็จแล้ว
คุณยังสามารถเปิดด้วยปุ่มลัดได้ Ctrl+Alt+T
.
30) วิธีใดคือวิธีที่เร็วที่สุดในการเปิดไฟล์ Ubuntu เทอร์มินัลในไดเร็กทอรีใดโดยเฉพาะ?
ในการเปิด Ubuntu เทอร์มินัลในไดเร็กทอรีเฉพาะ คุณสามารถใช้แป้นพิมพ์ลัดแบบกำหนดเองได้
ในการทำเช่นนั้น ในช่องคำสั่งของแป้นพิมพ์แบบกำหนดเองใหม่ ให้พิมพ์ จีโนม – เทอร์มินัล – – การทำงาน – ไดเร็กทอรี = /path/to/dir
31) อธิบายว่าคุณจะได้สีปัจจุบันของหน้าจอปัจจุบันบนหน้าจอได้อย่างไร Ubuntu เดสก์ทอป?
คุณสามารถเปิดภาพพื้นหลังใน The Gimp (โปรแกรมแก้ไขรูปภาพ) จากนั้นใช้เครื่องมือ Dropper เพื่อเลือกสีที่จุดใดจุดหนึ่ง จากนั้นจะแสดงค่า RGB ของสีที่จุดนั้น
32) อธิบายวิธีการสร้าง Launchers บนเดสก์ท็อป Ubuntu?
เพื่อสร้างตัวเรียกใช้งานบนเดสก์ท็อปใน Ubuntu คุณสามารถใช้ได้
ALT+F2 จากนั้นพิมพ์ ” gnome-desktop-item-edit –create-new~/desktop” มันจะเปิดกล่องโต้ตอบ GUI เก่าและสร้างตัวเรียกใช้งานบนเดสก์ท็อปของคุณ
33) อธิบายว่า Memcached คืออะไร?
Memcached เป็นระบบแคชอ็อบเจ็กต์หน่วยความจำแบบกระจายประสิทธิภาพสูงและโอเพ่นซอร์สฟรี วัตถุประสงค์หลักของ Memcached คือการปรับปรุงเวลาตอบสนองสำหรับข้อมูลที่สามารถกู้คืนหรือสร้างจากแหล่งหรือฐานข้อมูลอื่นได้ ซึ่งใช้เพื่อหลีกเลี่ยงความจำเป็นในการดำเนินการ ฐานข้อมูล SQL หรือแหล่งอื่นซ้ำๆ เพื่อดึงข้อมูลสำหรับคำขอที่เกิดขึ้นพร้อมกัน
Memcached สามารถใช้สำหรับ
- เครือข่ายโซเชียล -> การแคชโปรไฟล์
- การรวมเนื้อหา -> การแคช HTML/ หน้า
- การกำหนดเป้าหมายโฆษณา -> การติดตามคุกกี้/โปรไฟล์
- ความสัมพันธ์ -> การแคชเซสชัน
- อีคอมเมิร์ซ -> การแคชเซสชันและ HTML
- บริการตามตำแหน่ง -> การปรับขนาดการสืบค้นฐานข้อมูล
- เกมและความบันเทิง -> การแคชเซสชัน
Memcache ช่วยในการ
- เร่งกระบวนการสมัครให้เร็วขึ้น
- เป็นตัวกำหนดว่าอะไรควรเก็บและอะไรไม่ควรเก็บ
- ลดจำนวนการร้องขอการดึงข้อมูลไปยังฐานข้อมูล
- ลดการเข้าถึง I/O (อินพุต/เอาต์พุต) (ฮาร์ดดิสก์)
ข้อเสียเปรียบของ Memcached คือ
- ไม่ใช่ที่เก็บข้อมูลถาวร
- ไม่ใช่ฐานข้อมูล
- ไม่ใช่แอปพลิเคชันเฉพาะ
- ไม่สามารถแคชวัตถุขนาดใหญ่ได้
34) พูดถึงคุณสมบัติที่สำคัญของ Memcached หรือไม่?
คุณสมบัติที่สำคัญของ Memcached ได้แก่
- โทเค็น CAS: โทเค็น CAS แนบอยู่กับวัตถุที่ดึงมาจากแคช คุณสามารถใช้โทเค็นนั้นเพื่อบันทึกออบเจ็กต์ที่อัปเดตของคุณได้
- โทรกลับ: มันทำให้โค้ดง่ายขึ้น
- ได้รับความล่าช้า: จะช่วยลดเวลาหน่วงของสคริปต์ของคุณที่กำลังรอผลลัพธ์กลับมาจากเซิร์ฟเวอร์
- โปรโตคอลไบนารี: คุณสามารถใช้โปรโตคอลไบนารีแทน ASCII กับไคลเอนต์รุ่นใหม่ได้
- อิกไบนารี: ก่อนหน้านี้ ไคลเอนต์มักจะทำการแปลงค่าเป็นข้อมูลที่ซับซ้อนเสมอ แต่ด้วย Memcached คุณสามารถใช้ตัวเลือก igbinary ได้
คำถามและคำตอบสัมภาษณ์ DevOps สำหรับประสบการณ์ 5+
35) อธิบายว่าเป็นไปได้หรือไม่ที่จะแชร์ Memcache อินสแตนซ์เดียวระหว่างหลาย ๆ โปรเจ็กต์?
ใช่ คุณสามารถแชร์ Memcache อินสแตนซ์เดียวระหว่างหลายโปรเจ็กต์ได้ Memcache เป็นพื้นที่จัดเก็บหน่วยความจำ และคุณสามารถเรียกใช้ memcache บนเซิร์ฟเวอร์ตั้งแต่ 1 เครื่องขึ้นไปได้ คุณยังสามารถกำหนดค่าไคลเอนต์ของคุณให้สื่อสารกับชุดอินสแตนซ์เฉพาะได้ ดังนั้น คุณสามารถเรียกใช้กระบวนการ Memcache ที่แตกต่างกันสองกระบวนการบนโฮสต์เดียวกันได้ แต่กระบวนการทั้งสองยังคงเป็นอิสระอย่างสมบูรณ์ เว้นแต่ว่าคุณได้แบ่งพาร์ติชันข้อมูลของคุณแล้ว ก็จำเป็นต้องทราบว่าจะรับข้อมูลจากหรือใส่ลงในอินสแตนซ์ใด
36) คุณกำลังมีเซิร์ฟเวอร์ Memcache หลายเซิร์ฟเวอร์ ซึ่งเซิร์ฟเวอร์ Memcache ตัวใดตัวหนึ่งทำงานล้มเหลว และมีข้อมูลของคุณอยู่ จะมีการพยายามรับข้อมูลสำคัญจากเซิร์ฟเวอร์ที่ล้มเหลวตัวใดตัวหนึ่งหรือไม่
ข้อมูลในเซิร์ฟเวอร์ที่ล้มเหลวจะไม่ถูกลบออก แต่มีข้อกำหนดสำหรับความล้มเหลวอัตโนมัติ ซึ่งคุณสามารถกำหนดค่าสำหรับหลายโหนดได้ การแทนที่เมื่อเกิดข้อผิดพลาดสามารถทริกเกอร์ได้ในระหว่างข้อผิดพลาดระดับซ็อกเก็ตหรือเซิร์ฟเวอร์ Memcached และไม่ใช่ในระหว่างข้อผิดพลาดไคลเอ็นต์มาตรฐาน เช่น การเพิ่มคีย์ที่มีอยู่ เป็นต้น
37) อธิบายว่าคุณสามารถลดการหยุดทำงานของเซิร์ฟเวอร์ Memcached ได้อย่างไร
- เมื่ออินสแตนซ์ตัวหนึ่งล้มเหลว อินสแตนซ์หลายตัวจะหยุดทำงาน และจะทำให้มีภาระงานมากขึ้นบนเซิร์ฟเวอร์ฐานข้อมูลเมื่อมีการโหลดข้อมูลที่สูญหายอีกครั้งเมื่อไคลเอ็นต์ส่งคำขอ เพื่อหลีกเลี่ยงปัญหานี้ หากโค้ดของคุณถูกเขียนเพื่อลดการประทับแคช มันจะส่งผลกระทบน้อยที่สุด
- อีกวิธีหนึ่งคือการเรียกใช้อินสแตนซ์ของ Memcached บนเครื่องใหม่โดยใช้ที่อยู่ IP ของเครื่องที่สูญหาย
- รหัสเป็นอีกทางเลือกหนึ่งในการลดการหยุดทำงานของเซิร์ฟเวอร์เนื่องจากให้อิสระแก่คุณในการเปลี่ยนแปลงรายการเซิร์ฟเวอร์ Memcached โดยทำงานน้อยที่สุด
- การตั้งค่าการหมดเวลาเป็นอีกตัวเลือกหนึ่งที่ไคลเอนต์ Memcached บางตัวใช้สำหรับเซิร์ฟเวอร์ Memcached ที่ขัดข้อง เมื่อเซิร์ฟเวอร์ Memcached ของคุณล่ม ไคลเอนต์จะพยายามส่งคำขอต่อไปจนกว่าจะถึงขีดจำกัดการหมดเวลา
38) อธิบายว่าคุณสามารถอัปเดต Memcached ได้อย่างไรเมื่อข้อมูลมีการเปลี่ยนแปลง
เมื่อข้อมูลเปลี่ยนแปลงคุณสามารถอัปเดต Memcached ได้โดย
- การล้างแคชเชิงรุก: การล้างแคชเมื่อมีการแทรกหรืออัพเดต
- การรีเซ็ตแคช: คล้ายกับวิธีแรก แต่แทนที่จะลบคีย์และรอการร้องขอข้อมูลครั้งต่อไปเพื่อรีเฟรชแคช ให้รีเซ็ตค่าหลังจากการแทรกหรืออัปเดต
39) อธิบายว่าเอฟเฟกต์ Dogpile คืออะไร? คุณจะป้องกันผลกระทบนี้ได้อย่างไร?
เอฟเฟกต์ Dogpile อ้างถึงเหตุการณ์เมื่อแคชหมดอายุ และเว็บไซต์ถูกโจมตีด้วยคำขอหลายรายการที่ทำโดยไคลเอนต์ในเวลาเดียวกัน ผลกระทบนี้สามารถป้องกันได้โดยใช้ล็อคเซมาฟอร์ ในระบบนี้เมื่อค่าหมดอายุ กระบวนการแรกจะได้รับการล็อคและเริ่มสร้างมูลค่าใหม่
40) อธิบายว่า Memcached ไม่ควรใช้อย่างไร
- การใช้ Memcached ในทางที่ผิดโดยทั่วไปคือการใช้เป็นที่เก็บข้อมูล ไม่ใช่แคช
- อย่าใช้ Memcached เป็นแหล่งข้อมูลเดียวที่คุณต้องการในการเรียกใช้แอปพลิเคชันของคุณ ข้อมูลควรพร้อมใช้งานผ่านแหล่งอื่นเช่นกัน
- Memcached เป็นเพียงที่เก็บคีย์หรือค่า และไม่สามารถทำการสืบค้นข้อมูลหรือวนซ้ำเนื้อหาเพื่อดึงข้อมูล
- Memcached ไม่มีรูปแบบการรักษาความปลอดภัยใดๆ ทั้งในการเข้ารหัสหรือการตรวจสอบสิทธิ์
41) เมื่อเซิร์ฟเวอร์ปิดตัวลง ข้อมูลที่จัดเก็บไว้ใน Memcached จะยังคงอยู่หรือไม่
ข้อมูลที่จัดเก็บไว้ใน Memcached นั้นไม่คงทน ดังนั้นหากเซิร์ฟเวอร์ปิดหรือรีสตาร์ท ข้อมูลทั้งหมดที่จัดเก็บไว้ใน Memcached จะถูกลบ
42) พูดถึงความแตกต่างระหว่าง Memcache และ Memcached?
- เมมแคช: เป็นส่วนขยายที่ช่วยให้คุณทำงานผ่านอินเทอร์เฟซเชิงวัตถุ (OOP) และอินเทอร์เฟซขั้นตอนที่มีประโยชน์ ได้รับการออกแบบมาเพื่อลดภาระฐานข้อมูลในเว็บแอปพลิเคชันแบบไดนามิก
- เมมแคช: มันเป็นส่วนขยายที่ใช้ libmemcached ครับ ไลบรารีเพื่อจัดเตรียม API สำหรับการสื่อสารกับเซิร์ฟเวอร์ Memcached ใช้เพื่อเพิ่มแอปพลิเคชันเว็บไดนามิกโดยการลดภาระของฐานข้อมูล มันเป็น API ล่าสุด
43) อธิบายรูปแบบการปรับใช้สีน้ำเงิน/เขียว
รูปแบบสีฟ้า/เขียวจัดการกับความท้าทายที่สำคัญที่สุดที่ต้องเผชิญในระหว่างกระบวนการปรับใช้อัตโนมัติ ในแนวทางการปรับใช้สีน้ำเงิน/เขียว คุณต้องแน่ใจว่าสภาพแวดล้อมการใช้งานจริงสองรายการเหมือนกัน อย่างไรก็ตาม มีเพียงหนึ่งเดียวเท่านั้นที่สามารถถ่ายทอดสด ณ เวลาใดก็ตาม สภาพแวดล้อมแบบสดเรียกว่าสภาพแวดล้อมสีน้ำเงิน
เมื่อทีมเตรียมการเผยแพร่ซอฟต์แวร์รุ่นถัดไป พวกเขาจะดำเนินการทดสอบขั้นสุดท้ายในสภาพแวดล้อมที่เรียกว่าสภาพแวดล้อมสีเขียว เมื่อตรวจสอบแล้ว การรับส่งข้อมูลจะถูกส่งไปยังสภาพแวดล้อมสีเขียว
44) ภาชนะมีอะไรบ้าง?
คอนเทนเนอร์มาจากการจำลองเสมือนแบบไลท์เวท พวกเขาเสนอการแยกระหว่างกระบวนการต่างๆ
45) การประชุมชันสูตรศพที่เกี่ยวข้องกับ DevOps คืออะไร?
การประชุมชันสูตรศพเสร็จสิ้นเพื่อหารือเกี่ยวกับสิ่งที่ผิดพลาดและขั้นตอนที่คุณต้องดำเนินการเพื่อหลีกเลี่ยงความล้มเหลว
46) วิธีที่ง่ายที่สุดในการสร้างคลาวด์ขนาดเล็กคืออะไร?
VMfres เป็นหนึ่งในตัวเลือกที่มีประสิทธิภาพสูงสุดสำหรับการสร้างคลาวด์ IaaS จาก Virtual Box VM ในเวลาไม่นาน อย่างไรก็ตาม หากคุณต้องการ PaaS แบบน้ำหนักเบา Dokku ก็เป็นตัวเลือกที่ดี เนื่องจากสคริปต์ bash สามารถเป็น PaaS จากคอนเทนเนอร์ Dokku ได้
47) ตั้งชื่อเครื่องมือสองตัวที่ใช้สำหรับการเชื่อมต่อเครือข่ายนักเทียบท่า
สำหรับเครือข่ายนักเทียบท่า คุณสามารถใช้ Kubernetes และ Docker swarm ได้
48)บอกชื่อบางส่วนของพื้นที่ที่มีการนำ DevOps ไปใช้
DevOps ใช้สำหรับการผลิต การดำเนินการด้านไอที ข้อเสนอแนะด้านการผลิต และการพัฒนาซอฟต์แวร์
49) CBD' คืออะไร?
CBD หรือการพัฒนาตามส่วนประกอบเป็นวิธีการเฉพาะในการพัฒนาผลิตภัณฑ์ ในวิธีนี้ นักพัฒนาจะมองหาส่วนประกอบที่กำหนดไว้อย่างดี ทดสอบ และตรวจสอบแล้วอยู่เสมอ เพื่อประกอบและประกอบเข้ากับผลิตภัณฑ์ แทนที่จะพัฒนาตั้งแต่ต้น
50) อธิบายการเขียนโปรแกรมคู่โดยอ้างอิงกับ DevOps
การเขียนโปรแกรมคู่เป็นแนวทางปฏิบัติทางวิศวกรรมของกฎการเขียนโปรแกรมขั้นสูง ในวิธีนี้ โปรแกรมเมอร์สองคนทำงานบนระบบเดียวกัน โดยใช้การออกแบบ/อัลกอริทึม/โค้ดเดียวกัน
โปรแกรมเมอร์คนหนึ่งทำหน้าที่เป็น "ไดรเวอร์" อื่นๆ ทำหน้าที่เป็น “ผู้สังเกตการณ์” ที่ติดตามความคืบหน้าของโครงการอย่างต่อเนื่องเพื่อระบุปัญหา บทบาทสามารถย้อนกลับได้ตลอดเวลาโดยไม่ต้องแจ้งให้ทราบล่วงหน้า
51) อธิบายการทดสอบความยืดหยุ่น
การทดสอบที่ช่วยให้มั่นใจในการกู้คืนโดยไม่มีข้อมูลและการสูญเสียฟังก์ชันการทำงานหลังจากความล้มเหลวเรียกว่าการทดสอบความยืดหยุ่น
52) ตั้งชื่อ DevOps KPI ที่สำคัญสามประการ
KPI ของ DevOps ที่พบบ่อยที่สุดสามประการ ได้แก่:
- ในขณะเดียวกันก็กู้คืนความล้มเหลว
- ความถี่ในการใช้งาน
- เปอร์เซ็นต์ของการปรับใช้ที่ล้มเหลว
คำถามสัมภาษณ์เหล่านี้จะช่วยในวีว่าของคุณ (วาจา)