ichioini
ก๊วนเสียว
พลังน้ำใจ: 20
ออฟไลน์
กระทู้: 481
|
|
« เมื่อ: 30 กรกฎาคม 2022, 03:29:04 » |
|
ปกติผมเขียนเวปด้วย PHP อยู่แล้ว บอกก่อนเลยว่าผมก็งูๆปลาๆใช้วิธี Copy Paste โค้ดคนอื่นมาผสมกัน ก็มันไม่เคยมีปัญหามาก่อนนะครับ เพราะคนเข้าเวปผมหลักร้อยคนต่อวันเอง (อันนี้ทำ Blog ส่วนตัว)
แต่... ตอนนี้ว่าจะเอาของทำเองไปทำการใหญ่ครับ คือปกติอีกงานนึง (เวปข่าว) ผมเอาลิงค์ไปแปะในเฟสบุคส์ คนเข้ามาพร้อมกันทีเคยเห็นสูงสุดทีละ 4 พันคน ในระยะเวลา 1 นาที มันก็ไม่เคยเป็นปัญหามาก่อนเพราะเวปนี้ผมใช้ของสำเร็จรูปมาปรับแต่งมีคนดูแลให้อีกด้วย
ทีนี้ว่าจะมาเขียนเวปเอง(เพราะมันปรับแต่งที่ต้องการได้ตามใจมากกว่า) ผมลองประมวลผลดู 1 การเปิดเวปแต่ละครั้งมันใช้เวลาประมวลผลราวๆ 0.002 - 0.004 วินาที คือถ้าคิดแบบถึกๆถ้าคนเข้าทีละ 4 พันคนก็จะใช้เวลาโหลดหน้าเวป 8 วินาทีเลยหรอครับ
อยากรู้ว่าคนเข้าพร้อมๆกันมันเริ่มนับ และจบตรงไหนหรอครับ - เริ่มนับเวลาประมวลผลโค้ด php ตั้งแต่บรรทัดแรกจนถึงบรรทัดสุดท้ายแล้วจบ - เริ่มตั้งแต่คน 1 คนเข้าเวป อยู่ในเวปและออกไป (เวปไม่มีการใช้ session ใช้แต่ cookie อย่างเดียว)
ขออภัยถ้าคำถามอาจจะดูโง่ หรืองงๆหน่อยนะครับ ผมก็ไม่รู้จะถามยังไงดีเหมือนกัน คือถ้ามันใช้เวลาโหลดมากกว่า 8 วินาที ผมจะได้ไปจ้างเค้าทำเหมือนเดิมครับ ที่จะทำเองเพราะสู้ราคาไม่ไหว และเห็นว่าตัวเองก็น่าจะพอทำเองได้เลยจะลองทำดูน่ะครับ
|
|
« แก้ไขครั้งสุดท้าย: 30 กรกฎาคม 2022, 03:34:10 โดย ichioini »
|
บันทึกการเข้า
|
|
|
|
ichioini
ก๊วนเสียว
พลังน้ำใจ: 20
ออฟไลน์
กระทู้: 481
|
|
« ตอบ #1 เมื่อ: 30 กรกฎาคม 2022, 03:30:07 » |
|
ผมหาข้อมูลดูแล้ว ทางออกอีกทางคือทำ cache ไฟล์ แต่เบื้องต้นอยากรู้ก่อนว่าเวลามันนับว่ารองรับคนเข้าพร้อมๆกันมันเริ่มที่ตรงไหนน่ะครับ
|
|
|
บันทึกการเข้า
|
|
|
|
Best789.
ก๊วนเสียว
พลังน้ำใจ: 5
ออฟไลน์
กระทู้: 300
|
|
« ตอบ #2 เมื่อ: 30 กรกฎาคม 2022, 05:48:11 » |
|
ดันช่วยครับ
|
|
|
บันทึกการเข้า
|
|
|
|
CGN-Xen
Newbie
พลังน้ำใจ: 0
ออฟไลน์
กระทู้: 49
|
|
« ตอบ #3 เมื่อ: 30 กรกฎาคม 2022, 06:38:41 » |
|
ดัน
|
|
|
บันทึกการเข้า
|
*Link Removed*
|
|
|
ivar
หัวหน้าแก๊งเสียว
พลังน้ำใจ: 72
ออฟไลน์
กระทู้: 2,704
|
|
« ตอบ #4 เมื่อ: 30 กรกฎาคม 2022, 12:41:08 » |
|
เท่าที่ทราบต้องปรับแต่งเว็บไซต์ค่ะ (Tuning) เรื่อง cache ก็ส่วนหนึ่ง
|
|
|
บันทึกการเข้า
|
|
|
|
fremznginx
ก๊วนเสียว
พลังน้ำใจ: 7
ออฟไลน์
กระทู้: 219
|
|
« ตอบ #5 เมื่อ: 30 กรกฎาคม 2022, 16:20:57 » |
|
ส่วนมากจะตายกันที่ Database ครับ เพราะงั้น query ต้องเขียนดี ๆ และทำ cache การ query ด้วย คนเข้าเยอะหมายถึง request เยอะ ๆ ครับ 1 คนอาจจะหลาย request ก็ได้
|
|
|
บันทึกการเข้า
|
รับทำเว็บไซต์ทุกรูปแบบ รับ Tune Hosting ให้รองรับคนเข้าเยอะ ๆ
|
|
|
ชื่อพี หน้าตาดีมาก
สมุนแก๊งเสียว
พลังน้ำใจ: 10
ออฟไลน์
กระทู้: 504
|
|
« ตอบ #6 เมื่อ: 30 กรกฎาคม 2022, 16:59:06 » |
|
ตามครับผม
|
|
|
บันทึกการเข้า
|
|
|
|
BOS
ก๊วนเสียว
พลังน้ำใจ: 33
ออฟไลน์
กระทู้: 464
|
|
« ตอบ #7 เมื่อ: 30 กรกฎาคม 2022, 18:43:01 » |
|
นับเป็น request ครับ น่าจะตรงกับข้อ1 วิธีจัดการน่าจะประมาณ query ข้อมูลแล้วเก็บไว้ใน cache แบบไม่ต้อง query ข้อมูลชุดเดิมซ้ำๆ
แต่ก่อนผมก็ปวดหัวกับเรื่องแนวๆนี้มาก เพราะมันมีหลายตัวแปรเหลือเกิน ในที่สุดก็มาจบที่ blogspot บอกเลยว่าลดภาระ และสิ้นเปลืองทรัพยากรน้อยลงมากๆครับ
|
|
|
บันทึกการเข้า
|
|
|
|
forexduck
สมุนแก๊งเสียว
พลังน้ำใจ: 3
ออฟไลน์
กระทู้: 524
|
|
« ตอบ #8 เมื่อ: 30 กรกฎาคม 2022, 20:18:45 » |
|
โอ๊ววว หักมุม
|
|
|
บันทึกการเข้า
|
|
|
|
|
aieaie1234
ก๊วนเสียว
พลังน้ำใจ: 3
ออฟไลน์
กระทู้: 284
|
|
« ตอบ #10 เมื่อ: 01 สิงหาคม 2022, 02:51:31 » |
|
อยากทราบเหมือนกันค่ะ
|
|
|
บันทึกการเข้า
|
ห้ามลิ้งพนัน
|
|
|
Predator
Newbie
พลังน้ำใจ: 10
ออฟไลน์
กระทู้: 92
|
|
« ตอบ #11 เมื่อ: 01 สิงหาคม 2022, 13:34:29 » |
|
คนเข้า4พันคนใน1นาทีนี่ใช้ VPS สเปคอะไรหรอครับ
|
|
|
บันทึกการเข้า
|
|
|
|
arafarn12
สมุนแก๊งเสียว
พลังน้ำใจ: 40
ออฟไลน์
กระทู้: 748
|
|
« ตอบ #12 เมื่อ: 01 สิงหาคม 2022, 13:56:46 » |
|
คน 1 คน โหลดหน้าเว็บ 0.002 - 0.004 วินาที ถ้าเข้าพร้อมกัน 4000 คน ก็อาจจะโหลดหน้าเว็บคนละ 0.002 - 0.004 วินาทีเหมือนเดิมครับ มันแยกประมวลผลกัน ถ้าอยากให้รองรับคนเข้าพร้อมกันเยอะๆ มันมีหลายอย่างมากๆที่ทำได้ เช่นอาจจะทำ cache ปรับ performance โค้ด หรือ mysql หรือจูนตัว web server ให้รองรับการประมวลผลพร้อมกันเยอะๆ
ถ้าตอนนี้เข้าหลักร้อยต่อวันยังไม่ต้องกังวลหรอกครับ
|
|
|
บันทึกการเข้า
|
เมพ เมพ เมพ บร๊ะมูลใหมล่ะ ? ERROR: เขียนอะไรบ้างซิ
|
|
|
ชื่อพี หน้าตาดีมาก
สมุนแก๊งเสียว
พลังน้ำใจ: 10
ออฟไลน์
กระทู้: 504
|
|
« ตอบ #13 เมื่อ: 01 สิงหาคม 2022, 14:24:12 » |
|
ดันช่วยครับผม
|
|
|
บันทึกการเข้า
|
|
|
|
Mickeypig
คนรักเสียว
พลังน้ำใจ: 5
ออฟไลน์
กระทู้: 115
|
|
« ตอบ #14 เมื่อ: 01 สิงหาคม 2022, 14:29:04 » |
|
ดันช่วยครับ
|
|
|
บันทึกการเข้า
|
|
|
|
TG_Min
หัวหน้าแก๊งเสียว
พลังน้ำใจ: 164
ออฟไลน์
กระทู้: 1,518
|
|
« ตอบ #15 เมื่อ: 02 สิงหาคม 2022, 17:27:58 » |
|
ตอบคร่าวๆ นะครับ
มันเริ่มนับตั้งแต่คนเข้าเว็บแล้ว เช่น เริ่มจาก .htacess, robot, index และไฟล์อื่นๆ ที่ถูกเรียกใช้ในไฟล์ index (ถ้ามีประกาศไว้) จนจบ ตั้งแต่ <html>...</html>
ทีนี้ ที่มันนาน เพราะการเรียกใช้คำสั่ง ไปดึงตรงนู้นตรงนี้ ลองดูว่า ถ้ามีคนร้อยคน ดึงข้อมูลเดียวกัน ถ้าไม่มีระบบแคช มันจะมีการรอคิว แต่คอมฯ มันเร็วมาก คิวที่มีเลยไม่ได้กระทบจนเห็นชัด แต่พอพันคนหมื่นคน ตรงนี้แหละจะเริ่มเห็นชัด
เขาเลยแก้ปัญหา อะไรที่มันฟิกได้ (คือไม่เปลี่ยนแปลงบ่อย) จะสร้างแคช เพื่อจะได้ไม่ต้องไป ดึงข้อมูล หลายที คืออยากได้ก็ถ่ายสำเนาไว้แล้วเอาไปดูซะ แบบนี้ (เว้นแต่จะมีอะไรใหม่เข้ามาแทรก ก็รันคำสั่งแล้วแคชซ้ำเข้าไป)
ระบบแคช ถ้าทำไม่เป็น มันจะเต็มเร็วมาก และมันไม่ใช่น้อยๆ เปลี่ยนจุดเพียงนิดเดียว เช่น index.html?a หรือ index.html?b หน้าเดียวกันแต่ข้อมูลเรียกคนละตัว มันจะแคช 2 รอบ (แคชตาม url)
ก็เลยมีการพัฒนาระบบ ใช้ภาษาบางอย่าง ให้ระบบ ทำงานแยกกันไป เช่น ระหว่างที่วิ่งไปถึงจุดนี้ ไอ้นั่นก็ทำงานไปก่อนเลยเพราะเดี๋ยวมันต้องเอาข้อมูลนั้นแน่ๆ (เรียกว่าเตรียมข้อมูลไว้ก่อนล่วงหน้า) แคชมันจะได้ไม่ใหญ่มาก เก็บงานไว้ตามจุดต่างๆ (แคชแยกแคชอีกที) มันเลยยิ่งเร็ว
server ก็ตัวนึง ที่มีข้อจำกัด ถ้ามีคำสั่งมา แล้วช้า จึงเกิดปัญหา โหลดนาน (server ปกติมันจะแชร์กันหลายเว็บในตัวเดียว หารค่าใช้จ่ายกัน) อยากใช้คนเดียวก็ต้องจ่ายแพงขึ้น
ในประเทศ ต่างประเทศ ก็มีเรื่องของระยะทางเข้ามาเกี่ยวด้วย เขาเลยมาตั้ง server ในจุดหลักๆ เหมือนเป็น hub เพื่อคนในโซนนั้นๆ จะได้เรียกใช้ได้เร็ว ไม่ต้องวิ่งไปไกล
อีกเยอะแยะตะแป๊ะขายไก่
|
|
|
บันทึกการเข้า
|
|
|
|
FatCat6
ก๊วนเสียว
พลังน้ำใจ: 9
ออฟไลน์
กระทู้: 297
|
|
« ตอบ #16 เมื่อ: 02 สิงหาคม 2022, 17:57:31 » |
|
มาอ่านเอาความรู้ครับ
|
|
|
บันทึกการเข้า
|
|
|
|
Zionistic
สมุนแก๊งเสียว
พลังน้ำใจ: 9
ออฟไลน์
กระทู้: 511
|
|
« ตอบ #17 เมื่อ: 02 สิงหาคม 2022, 18:02:57 » |
|
ดันครับ
|
|
|
บันทึกการเข้า
|
|
|
|
|