Ruby on Rails

การดีพลอยและโปรดักชัน

Capistrano, Docker, Heroku, AWS, database.yml, credentials.yml.enc, การ precompile assets, การดีพลอยแบบไม่มี downtime

20 คำถามสัมภาษณ์·
Senior
1

ควรใช้คำสั่งใดในการ precompile assets ของ Rails ก่อนการดีพลอยขึ้นโปรดักชัน?

คำตอบ

คำสั่ง rails assets:precompile จะคอมไพล์ assets ทั้งหมด (JavaScript, CSS, รูปภาพ) ให้เป็นไฟล์ที่ปรับให้เหมาะสมพร้อม fingerprinting สำหรับ cache busting ขั้นตอนนี้จำเป็นก่อนการดีพลอยขึ้นโปรดักชันทุกครั้งเพื่อให้แน่ใจว่า assets พร้อมให้บริการอย่างมีประสิทธิภาพ ตัวแปร RAILS_ENV=production ทำให้มั่นใจได้ว่าการคอมไพล์ใช้การตั้งค่าของโปรดักชัน

2

Rails 7+ จัดเก็บ credentials ที่เข้ารหัสสำหรับโปรดักชันไว้ในไฟล์ใด?

คำตอบ

Rails 7+ ใช้ config/credentials.yml.enc ในการจัดเก็บ secrets แบบเข้ารหัส ไฟล์นี้สามารถ commit เข้าไปใน repository ได้เนื่องจากถูกเข้ารหัสด้วย master key สำหรับ environment เฉพาะ Rails ยังรองรับ config/credentials/production.yml.enc ที่มีคีย์ถอดรหัสของตัวเองอีกด้วย

3

บทบาทหลักของ Capistrano ในเวิร์กโฟลว์การ deploy ของ Rails คืออะไร?

คำตอบ

Capistrano เป็นเครื่องมือสำหรับทำ deployment แบบอัตโนมัติที่รันคำสั่งบนเซิร์ฟเวอร์ระยะไกลผ่าน SSH โดยจัดการ release ด้วยระบบ symlink ที่ทำให้ทำ rollback ได้ทันที รัน migration, precompile asset และรีสตาร์ตเซิร์ฟเวอร์แอปพลิเคชัน แนวทางการใช้ release ที่มีการกำหนดเวอร์ชันช่วยให้การจัดการ deployment ง่ายขึ้น

4

จะเข้าถึง credential ที่เก็บอยู่ใน credentials.yml.enc จากโค้ด Rails ได้อย่างไร?

5

การกำหนดค่าใดใน database.yml ที่ช่วยให้จัดการ read replica หลายตัวสำหรับ production ได้?

+17 คำถามสัมภาษณ์

หัวข้อสัมภาษณ์ Ruby on Rails อื่นๆ

พื้นฐาน Ruby

Junior
25 คำถาม

การเขียนโปรแกรมเชิงวัตถุใน Ruby

Junior
20 คำถาม

พื้นฐาน Rails

Junior
18 คำถาม

Routing & Controllers

Junior
22 คำถาม

พื้นฐาน ActiveRecord

Junior
25 คำถาม

Views และ ERB Templates

Junior
20 คำถาม

การเชื่อมโยงของ ActiveRecord

Mid-Level
24 คำถาม

การสอบถาม ActiveRecord ขั้นสูง

Mid-Level
28 คำถาม

ฟอร์ม Rails

Mid-Level
20 คำถาม

การยืนยันตัวตนและการอนุญาต

Mid-Level
22 คำถาม

Asset Pipeline สมัยใหม่และ frontend

Mid-Level
18 คำถาม

โหมด API ของ Rails

Mid-Level
20 คำถาม

การทดสอบด้วย RSpec

Mid-Level
24 คำถาม

ActiveJob & Background Jobs

Mid-Level
20 คำถาม

ActionCable & WebSockets

Mid-Level
18 คำถาม

ActionMailer

Mid-Level
18 คำถาม

ActiveStorage

Mid-Level
20 คำถาม

กลยุทธ์การ Caching

Mid-Level
20 คำถาม

การ Migration ขั้นสูง

Mid-Level
20 คำถาม

Rails Engines และแอปแบบโมดูลาร์

Senior
18 คำถาม

การเพิ่มประสิทธิภาพการทำงาน

Senior
26 คำถาม

Design Patterns ใน Rails

Senior
22 คำถาม

เมตาโปรแกรมมิงใน Ruby

Senior
20 คำถาม

ความปลอดภัยของ Rails

Senior
22 คำถาม

GraphQL กับ Rails

Senior
20 คำถาม

Monitoring & Logging

Senior
20 คำถาม

กลยุทธ์การอัปเกรด Rails

Senior
18 คำถาม

เชี่ยวชาญ Ruby on Rails สำหรับการสัมภาษณ์ครั้งถัดไป

เข้าถึงคำถามทั้งหมด flashcards แบบทดสอบเทคนิค แบบฝึกหัด code review และตัวจำลองสัมภาษณ์

เริ่มใช้ฟรี