Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

ความแตกต่างระหว่าง localhost และ 127.0.0.1


ความแตกต่างหลักคือ Name Resolution:

  • localhost: ต้อง resolve ผ่าน hosts file (หรือ DNS) ก่อน จึงจะได้ IP address (ปกติคือ 127.0.0.1) มี overhead นิดหน่อย
  • 127.0.0.1: เป็น IP address โดยตรง ไม่ต้อง resolve เร็วกว่าเล็กน้อย

ใน MySQL มีความหมายเพิ่มเติม:

  • localhost → ใช้ Unix Socket (หรือ Named Pipe ใน Windows) การเชื่อมต่อเร็วกว่า TCP/IP
  • 127.0.0.1 → บังคับใช้ TCP/IP loopback แม้อยู่เครื่องเดียวกัน

สรุป:

  • ง่ายต่อการจดจำ: https://localhost
  • เร็วกว่า (ใน MySQL): localhost (เพราะใช้ Socket) แต่ถ้าพูดทั่วไป 127.0.0.1 ไม่ต้อง resolve
  • หากต้องการทดสอบ TCP/IP stack ให้ใช้ 127.0.0.1