ประสิทธิภาพการทำงานของโครงสร้างลิงก์ของฉัน


14

ฉันได้อ่านการอภิปรายเกี่ยวกับประสิทธิภาพของ Permalink ที่แตกต่างกันในรายชื่อผู้รับจดหมาย wp ของแฮกเกอร์ฟอรัมนี้และรอบ ๆ Google

อย่างไรก็ตามฉันไม่สามารถอนุมานได้จริง ๆ ว่าโครงสร้าง permalink ที่ฉันใช้ในปีที่ผ่านมานั้นดีหรือไม่:

/%postname%-%year%%monthnum%%day%.html

ชุดค่าผสมนี้ทำให้ชื่อโพสต์ตรงหลัง / และปี, เดือน, ชุดค่าผสมวันทำให้ไม่ซ้ำกันมากขึ้นเนื่องจากชื่อโพสต์จำนวนมากมีชื่อเดียวกัน การเพิ่ม html เป็นสิ่งที่ฉันใช้มานานกว่า 10 ปีในบล็อกของฉัน (แม้แต่ wordpress ก่อน) เพื่อให้เป็นมรดก

ฉันไม่รู้ว่าสิ่งนี้ดีต่อการอนุญาตหรือไม่ดีต่อการทำงานฉันจะตรวจสอบเรื่องนี้ได้อย่างไร

(ฉันใช้งานบล็อกเป็นเวลา 10 ปีและมีโพสต์ประมาณ 10,000 รายการที่มีลิงก์มากมาย)

ลิงค์:

  1. http://codex.wordpress.org/Using_Permalinks

  2. http://www.google.com/search?q=wordpress+category+permalink+performance

  3. http://ottopress.com/2010/category-in-permalinks-considered-harmful/

  4. http://lists.automattic.com/pipermail/wp-hackers/2010-October/035458.html

คำตอบ:


8

คุณสามารถตรวจสอบได้โดยดูที่ขนาดของตัวเลือก rewrite_rules ในฐานข้อมูล ถ้ามันเล็ก (ซึ่งฉันเชื่อว่ามันควรมีโครงสร้างนี้) คุณไม่ได้ใช้กฎ verbose ในทางตรงกันข้ามหากคุณเห็นหลายบรรทัดต่อหนึ่งหน้าคงที่คุณกำลังใช้กฎ verbose และไม่ดี


ขออภัย ... มีหลายบรรทัดต่อหนึ่งหน้าคงที่ GRIN ดังนั้นนี่อาจไม่ใช่โครงสร้างลิงก์ที่ดี ... hmmmm ... นี่จะอธิบายข้อความแสดงข้อผิดพลาดที่ฉันได้รับเมื่อไม่นานมานี้ "ข้อผิดพลาดฐานข้อมูล WordPress มีแพ็กเก็ตที่ใหญ่กว่า 'max_allowed_packet" ฉันต้องเพิ่มการตั้งค่านี้ใน MySql
edelwater

ถ้าคุณเพิ่มหน้าต่อไปในช่วงหลายปีคุณจะได้รับ max_allowed_packet โดยอัตโนมัติไม่ว่าจะเกิดอะไรขึ้น ... เว้นแต่คุณจะเปลี่ยนกลับเป็น Permalinks ที่ไม่สวย ... (ฉันคิดว่า) ดังนั้น ... จะปรับขนาดได้ในอีก 30 ปีข้างหน้า: ) ฉันอาจจะต้องเปลี่ยนกลับไปใช้ Permalinks ที่ไม่สวย ฉันคิด.
edelwater

1
ตราบใดที่คุณกำลังใช้กฎที่ไม่ได้ verbose หน้าของคุณกฎประเภทสิ่งที่แนบมาและโพสต์ที่กำหนดเองเป็นเรื่องทั่วไป ลิงก์สวย ๆ นั้นค่อนข้างปลอดภัยในทางปฏิบัติตราบใดที่พวกมันใช้โครงสร้างที่ไม่ละเอียด
เดนิสเดอเบอร์นาดี

1

ฉันยับยั้งคำตอบที่ยอมรับ ความซับซ้อนของกฎการเขียนซ้ำไม่ได้เป็นการวัดประสิทธิภาพของการค้นหาบทความ

ดูเหมือนว่าการเริ่มต้นลิงก์ถาวรด้วยชื่อโพสต์นั้นไม่ดี ดูhttp://codex.wordpress.org/Using_Permalinks#Structure_Tags

โดยไม่ต้องมองเข้าไปในรหัส Wordpress ฉันสามารถจินตนาการว่าพวกเขาอย่างใดดัชนีโพสต์ตามลำดับชั้น ดังนั้นตัวแปรที่ใช้ในลิงก์ถาวรควรเรียงลำดับจากซ้ายไปขวาจากตัวแปรทั่วไปที่สุดไปยังตัวแปรเฉพาะส่วนใหญ่ที่ใช้ ฮิวริสติกนี้สนับสนุนมาตรฐานปี / เดือน / ชื่อหรือหมวดหมู่ / ชื่อ


1
category/nameเป็นที่รู้จักและยืนยันว่าเป็นสาเหตุของปัญหาเรื่องประสิทธิภาพหากมีหน้าจำนวนมาก มันไม่ได้เกี่ยวข้องเป็นอย่างมากกับความเร็วของการค้นหาเป็นไป deducing วัตถุที่ถูกต้องที่จะให้บริการและความซับซ้อนของกฎระเบียบที่เขียนเป็นที่เกี่ยวข้องอย่างสมบูรณ์
Rarst

คุณช่วยให้การอ้างอิงเอกสาร / รหัสได้ไหม? ฉันเพิ่งอ่านรหัส(wp-include/rewrite.phpและwp-include/query.php); ในขณะที่มีลักษณะที่น่ากลัวและซับซ้อนโดยไม่จำเป็นดูเหมือนว่าโดยทั่วไปชิ้นส่วนจะถูกรวบรวมและระบุและแทรกลงในแบบสอบถาม SQL โดยตรง ฉันยังไม่เห็นว่าทำไมจึงใช้เวลานานกว่าสำหรับคำสั่งซื้อที่แตกต่างกัน แต่เมื่อฐานข้อมูลแบบสอบถามจะถูกดำเนินการหลายร่วมจะต้องมีการดำเนินการและที่นี่มีคำสั่งที่สำคัญจริงๆ ฉันดูเหมือนจะจำได้ว่า MySQL ไม่ดีโดยเฉพาะอย่างยิ่งที่เพิ่มประสิทธิภาพการเข้าร่วม
Raphael

ฉันไม่ได้ลึกเข้าไปในทฤษฎี DB แต่คุณต้องทำให้ผลิตภัณฑ์เล็ก ไม่ว่าในกรณีใดก็ตามนี่อาจเป็นข้อผิดพลาดในแง่ที่ว่าโปรแกรมไม่ได้มีประสิทธิภาพเท่าที่ควร
Raphael

2
Codex ให้ "HINTS สองสาม" (ดู Codex) และไม่เจาะจงอัลกอริธึมที่สมบูรณ์ อย่างไรก็ตามมันชี้ไปที่ottopress.com/2010/category-in-permalinks-considered-harmfulและcomox.textdrive.com/pipermail/wp-testers/2009- มกราคม /ทั้งหมดล้วนมีความขัดแย้งระหว่างแนวทางปฏิบัติที่ดีที่สุด ของการแฮ็ก url ในด้านการปฏิสัมพันธ์ระหว่างคอมพิวเตอร์และมนุษย์จากการปรับปรุงประสิทธิภาพ
edelwater

1
ขอบคุณสำหรับตัวชี้ ottopress มันเป็น appaers ที่เปลี่ยนการประชุมเช่นที่ทุกหน้า url จะเริ่มต้นด้วย/page/และทุกโพสต์ url ด้วย/post/การลบความไม่น่าสงสัย คุณควรทำสิ่งนี้ได้ด้วยตัวเองโดยเพิ่มข้อความที่กำหนดไว้ในโครงสร้างความคิดของคุณ นี่อาจเป็นการตัดสินใจที่ดีอย่างไรก็ตาม จะเกิดอะไรขึ้นหากฉันมีแถบโพสต์ในหมวดหมู่ FOO และแถบหน้าเว็บที่เป็นหน้าย่อยของ FOO ทั้งสองจะได้รับการแก้ไขโดย/foo/bar/สมมติว่าโครงการ% category% /% postname% หรือทากทั่วโลกมีเอกลักษณ์หรือไม่?
Raphael

0

เพียงเพื่อ QA เวิร์กโฟลว์:

คำตอบคือ: ไม่นี่ไม่ใช่โครงสร้างลิงก์ที่ดีเกี่ยวกับประสิทธิภาพ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.