คำถามและคำตอบสัมภาษณ์ 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 ดูเหมือนจะเป็นที่นิยมมาก

คำถามสัมภาษณ์ DevOps


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:

SQL

  • การพัฒนาอย่างต่อเนื่อง
  • การบูรณาการอย่างต่อเนื่อง
  • การทดสอบอย่างต่อเนื่อง
  • การปรับใช้อย่างต่อเนื่อง
  • การตรวจสอบอย่างต่อเนื่อง
  • ผลตอบรับอย่างต่อเนื่อง
  • อย่างต่อเนื่อง Operations

13) ตั้งชื่อแพลตฟอร์มคลาวด์บางส่วนที่ใช้สำหรับการใช้งาน DevOps

แพลตฟอร์มการประมวลผลบนคลาวด์ยอดนิยมที่ใช้สำหรับการใช้งาน DevOps ได้แก่:

  1. Google Cloud
  2. Amazon บริการเว็บ
  3. 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 ที่พบบ่อยที่สุดสามประการ ได้แก่:

  • ในขณะเดียวกันก็กู้คืนความล้มเหลว
  • ความถี่ในการใช้งาน
  • เปอร์เซ็นต์ของการปรับใช้ที่ล้มเหลว

คำถามสัมภาษณ์เหล่านี้จะช่วยในวีว่าของคุณ (วาจา)