อยากรู้เทคนิคนึงเวลามีเจ้าของร้านจดโดเมนเป็นของตัวเองแต่ต้องการชี้ dsn ไปที่ server ของ ระบบขายของของเรา
ส่วนใหญ่เขียนเป็นระบบ auto ให้ไปแก้ไขเพิ่มค่า domain เข้าไปอัตโนมัตหรือให้พนักงานทำให้เป็นรายๆไป อยากรู้จัง
ไม่ว่าแบบไหนมันก็ได้ทั้งนั้นครับ
ส่วนมากจริงๆ จะเป็น wildcard dns (น่าจะแบบ tld ได้นะ)
แล้วค่อยไป control ที่ตัว php
ดักค่า request uri แล้วมาตรวจค่า host ว่าโดเมนตรงกับที่มีในระบบไหม
ความจริง smarty ก็จัดการเรื่อง cache ได้ครับ
แต่ smarty ไม่เก็บบแคชไว้ในแรมครับ
smarty ดีตรงมัน compile tpl เป็น php ได้
แต่เรื่องทำแคช จุดประสงค์มันไม่เหมือนกัน
การทำแคชในเรื่องการทำระบบ php มีแบ่งเป็นแนวๆ พวกนี้
- แคชdata อันนี้ทำแคชตั้งแต่ข้อมูลที่มีการโปรเสจกันเลย เช่น เรียก mysql ออกมาเป็น array แล้ว
ไม่อยากให้เรียกอีกอันนี้ก็แคชไป หรือข้อมูลที่ยำจาก regex แล้วอันนี้ก็แคชไป
- แคชoutput อันนี้จะทำตอนจัดการข้อมูลทั้งหมดเสร็จแล้ว อันนี้ก็จะดัก buffer ขาออก
แล้วมาเขียนแคชเก็บไว้ รวมถึงข้อมูลที่ไม่ใช่ markup ด้วย เช่น ajax json หรือ dynamic image
- แคชphp อันนี้ก็ต้องอาศัย php ext เพราะจะเป็นการทำแคช php compiled ที่กลายเป็น opcode แล้ว
เขาว่ากันว่าจริงๆ อาจทำได้ความเร็วถึง 3X
- แคชobj อันนี้ก็ต้องอาศัย php ext เหมือนกัน ข้อดีคือกับงาน OOP มันจะช่วยได้เยอะมากมาย
ถ้าไม่ใช่งานใหญ่ๆ หรืออาศัย framework มากๆ ก็คงไม่มีโอกาสใช้
แต่บรรดาทั้งหมด มี แคชoutput อันเดียวที่ถ้าทำดีๆ จะลดการ request จากผู้ใช้ได้
ด้วยการกำหนดวันหมดอายุแนบไปกับ header ขาออก
ทำแบบนี้ browser จะไม่เรียกไปยังโฮสบ่อยๆ
ใครไม่รู้ ตัวอย่างหาดูจากสคริป twitter signature ที่ผมเคยเขียนแจกอะ
นั้นแหละ ทำแคชoutput แล้วกำหนดวันหมดอายุแนบไปด้วย
ปล. อันไหนผิด ตกหล่น ชี้แนะได้เน้อ ถือเป็นการบูรณาการณ์ความรู้ร่วมกัน