Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Redis

วิธีสร้างเครื่องมือทดสอบ A/B แบบเรียลไทม์โดยใช้ Redis

การทดสอบ A/B ได้กลายเป็นสินทรัพย์ที่ขาดไม่ได้สำหรับนักการตลาดและเจ้าของเว็บไซต์ที่แข่งขันกันในเศรษฐกิจดิจิทัลในปัจจุบัน ช่วยให้ผู้ใช้สามารถทดสอบแนวคิดที่มีอยู่ ทดลองกับแนวคิดใหม่ๆ และเน้นว่าสิ่งใดใช้ได้ผลและไม่ได้ผล

หากไม่มีข้อมูลนี้ การพยายามเพิ่มประสิทธิภาพหน้าเว็บอาจเป็นกระบวนการที่น่าผิดหวังและใช้เวลานาน แต่น่าเสียดายที่ซอฟต์แวร์ทดสอบ A/B อาจมีราคาแพง ทำให้หลายคนไม่สามารถเข้าถึงประโยชน์ของซอฟต์แวร์ได้

แต่ด้วย Redis โปรแกรมเมอร์ Thiago Camargo สามารถขจัดอุปสรรคเหล่านี้ได้ด้วยการสร้างเครื่องมือทดสอบ A/B แบบเปิดที่สามารถทำงานได้แบบเรียลไทม์ คุณลักษณะการประมวลผลข้อมูลอันทรงพลังของ Redis ช่วยให้ผู้ใช้สามารถทดลองกับตัวแปรต่างๆ ที่พวกเขาเลือก และค้นพบวิธีที่มีประสิทธิภาพสูงสุดในการเพิ่มประสิทธิภาพหน้าเว็บของตน

มาดูกันว่า Thiago สามารถรวมแอปพลิเคชันนี้เข้าด้วยกันได้อย่างไร แต่ก่อนที่เราจะดำเนินการต่อ เราอยากจะชี้ให้เห็นว่าเรามีแอปพลิเคชันที่เป็นนวัตกรรมมากมายให้คุณค้นพบบน Redis Launchpad

ดังนั้นอย่าลืมเรียกดูหลังจากโพสต์นี้!

  1. คุณจะสร้างอะไร
  2. คุณต้องการอะไร
  3. สถาปัตยกรรม
  4. เริ่มต้นใช้งาน
  5. วิธีการทำงาน

1. คุณจะสร้างอะไร

คุณจะสร้างเครื่องมือทดสอบ A/B ที่มีประสิทธิภาพแต่เรียบง่ายซึ่งสามารถปรับขนาดได้และทำงานแบบเรียลไทม์ ด้านล่างเราจะแสดงวิธีสร้างแอปพลิเคชันนี้จากล่างขึ้นบน โดยเน้นว่าส่วนประกอบใดบ้างที่จำเป็นพร้อมกับฟังก์ชันการทำงาน

2. คุณต้องการอะไร

  • คอตลิน : ใช้เป็นภาษาโปรแกรมโอเพนซอร์ซที่ Google ใช้ในการพัฒนาแอพ Android
  • กราวด์ : ใช้เป็นเครื่องมือสร้างอัตโนมัติสำหรับการพัฒนาซอฟต์แวร์หลายภาษา
  • ผักกาดหอม : สร้างแอปพลิเคชันปฏิกิริยาที่ไม่ปิดกั้น
  • RedisGraph : เมทริกซ์กระจัดกระจายเพื่อแสดงเมทริกซ์ที่อยู่ติดกันในกราฟและพีชคณิตเชิงเส้นเพื่อค้นหากราฟ
  • RedisTimeSeries : ให้คุณนำเข้าและสืบค้นตัวอย่างและเหตุการณ์นับล้านรายการด้วยประสิทธิภาพที่เหนือชั้น
  • RedisJSON : อนุญาตให้จัดเก็บ อัปเดต และดึงค่า JSON จากคีย์ Redis

3. สถาปัตยกรรม

วิธีสร้างเครื่องมือทดสอบ A/B แบบเรียลไทม์โดยใช้ Redis
  • การทดสอบถูกสร้างขึ้นบน Swagger ตามตัวแปรที่คุณต้องการทดสอบบนเว็บไซต์ของคุณ ผู้ใช้รายนี้เลือกที่จะทดสอบว่าสีต่างๆ มีผลกับการขายอย่างไร
  • เหตุการณ์ทริกเกอร์กำหนดผู้ใช้ที่จะลงทะเบียนในการทดสอบโดยอัตโนมัติ
  • ผู้ใช้ที่สมัครรับข้อมูลจะถูกบันทึกเป็นเหตุการณ์ที่ทริกเกอร์ (การแปลง) สีของเหตุการณ์ทริกเกอร์แต่ละรายการจะถูกบันทึกเพื่อวัดผลลัพธ์ด้วย
  • การทดสอบ A/B คืออะไร

    หรือที่เรียกว่าการทดสอบแยก การทดสอบ A/B หมายถึงกระบวนการทดสอบตามระเบียบวิธี โดยจะแสดงตัวแปรตั้งแต่ 2 เวอร์ชันขึ้นไปให้ผู้เข้าชมเว็บไซต์ดู เพื่อพิจารณาว่าตัวแปรใดส่งผลต่อ Conversion มากกว่า

    ออกแบบมาเพื่อเพิ่มความชัดเจนในการวางตำแหน่งแบรนด์ ผลิตภัณฑ์ และบริการของคุณอย่างมีประสิทธิภาพมากขึ้นในตลาดกลาง

    สมมติว่าคุณมีผลิตภัณฑ์บนเว็บไซต์ที่คุณกำลังพยายามขาย ตัวแปรหนึ่งที่คุณสามารถทดลองได้คือปุ่มคำกระตุ้นการตัดสินใจ (CTA) ถัดจากผลิตภัณฑ์ มีหลายวิธีที่คุณสามารถทดสอบ A/B CTA ได้แก่:

    1. ตำแหน่ง
    2. การออกแบบ
    3. สี
    4. ขนาด
    5. การคัดลอก

    การทดสอบตัวแปรเหล่านี้แยกกัน คุณจะพบว่า CTA เวอร์ชันใดที่เหมาะสมที่สุดในการขับเคลื่อน Conversion

    4. เริ่มต้นใช้งาน 

    ข้อกำหนดเบื้องต้น

    • นักเทียบท่า
    • ติดตั้ง Gradle 7.2
    • Maven 3.8.1
    • ติดตั้ง OpenJDK
    • เอกสาร Swagger API 

    ขั้นตอนที่ 1:โคลนที่เก็บ

    ขั้นตอนที่ 2 ดำเนินงานบิลด์

    ขั้นตอนที่ 3:ตั้งค่าโมดูล Redis

    หากคุณกำลังใช้เดสก์ท็อป Docker ตรวจสอบให้แน่ใจว่าได้เปิดใช้งานตัวเลือกการแชร์ไฟล์สำหรับการเมานต์โวลุ่ม ใช้รหัสด้านล่างเพื่อตั้งค่า Redis:

    ขั้นตอนที่ 4 การเรียกใช้แอปพลิเคชัน

    ใช้รหัสด้านล่างเพื่อเริ่มต้นนักเทียบท่า:

    วิธีการทำงาน

    API การทดสอบ

    ในที่นี้เราจะแสดงวิธีสร้างการทดสอบ A/B ที่ปรับขนาดได้ด้วยการลงทะเบียนแบบถ่วงน้ำหนักตามทริกเกอร์

    วิธีสร้างการทดสอบ

    ในขั้นตอนนี้ เราจะแสดงวิธีสร้างการทดสอบที่อนุญาตให้คุณทดสอบ A/B ตัวแปรต่างๆ เราจะสวมบทบาทเป็นนักการตลาดที่ต้องการแยกการทดสอบสีต่างๆ ของหน้าจอเพื่อดูว่ามีผลกระทบต่อยอดขายอย่างไร

    ในการเริ่มต้นใช้รหัสด้านล่าง

    เป็นที่น่าสังเกตว่าเราเปลี่ยน 'รหัสเป้าหมาย' ที่ด้านบนเป็น 'ซื้อ' เพื่อวัดจำนวนยอดขายที่เกิดจากสีหน้าจอแต่ละสี ด้านล่างนี้ เราได้สร้าง "id" ของการทดสอบ "subscription1" 

    เพื่อระบุเหตุการณ์ทริกเกอร์ เราได้แทรก "มุมมองแผนผู้ใช้-หน้าจอ" ซึ่งหมายความว่าเมื่อมีการทริกเกอร์เหตุการณ์ ผู้ใช้จะถูกลงทะเบียนในการทดสอบโดยอัตโนมัติ

    ต่อไป เราระบุตัวแปรเป็น "สีแดง" และ "สีน้ำเงิน" เนื่องจากเป็นตัวแปร 2 ตัวที่เราจะทำการทดสอบ A/B

    วิธีเรียกข้อมูลการทดสอบ 

    การตอบสนอง.

    API การกำหนดค่าระยะไกล

    ที่นี่เราจะแสดงวิธีสร้างบริการกำหนดค่าไคลเอ็นต์ระยะไกลแบบไดนามิกและปรับขนาดได้ (Firebase Replacement)

    วิธีอัปเดตการกำหนดค่าระยะไกล

    วิธีเรียกการกำหนดค่าระยะไกล

    ตอบกลับ

    API เหตุการณ์

    ขั้นตอนนี้เกี่ยวข้องกับการจัดทำดัชนีเหตุการณ์อนุกรมเวลา

    วิธีผลักดันกิจกรรม

    สรุป API – บริการสรุปทั่วไป

    นี่คือบริการสรุปที่ง่ายและยืดหยุ่นซึ่งสามารถเก็บและบำรุงรักษาสรุปของแอปพลิเคชันหลายประเภท ซึ่งรวมถึง:ตารางคะแนนเกม การให้คะแนนผลิตภัณฑ์ การให้คะแนนของผู้ใช้ ตัวชี้วัดที่เพิ่มขึ้น และอื่นๆ อีกมากมาย

    กำลังอัปเดตข้อมูลสรุป

    รับข้อมูลสรุป

    ตอบกลับ:

    Drawer API – บริการคีย์/ค่าทั่วไป

    การจัดเก็บทรัพย์สินที่ยืดหยุ่น

    กำลังอัปเดตลิ้นชัก

    รับลิ้นชัก

    ตอบกลับ:

    แบบสอบถาม Redis ที่ใช้แล้วบางส่วน

    คำสั่งส่วนใหญ่ที่ใช้ด้านล่างใช้คำอธิบายประกอบคำสั่ง Lettuce Redis

    กราฟ

    • enrollEmitterOnExperiment
    • fetchParticipantsOnExperiment
    • graphQuery

    อนุกรมเวลา

    • pushEvent

    JSON

    • setObject
    • getObject
    • setPathValue
    • getPathValue

    แกนหลัก

    • HSET
    • HGET / HGETALL
    • HEXISTS

    บทสรุป:ทำให้ทุกคนสามารถเข้าถึงการทดสอบ A/B

    การทดสอบ A/B ได้กลายเป็นส่วนสำคัญของนักการตลาดที่แข่งขันกันในสนามเด็กเล่นดิจิทัลในปัจจุบัน แต่การได้มาซึ่งซอฟต์แวร์นี้อาจมีราคาแพง ทำให้หลายคนต้องใช้งานเว็บไซต์ที่ไม่มีประสิทธิภาพ และในการทบต้นนี้ให้ดียิ่งขึ้น การสร้างซอฟต์แวร์ทดสอบแบบแยกส่วนมีปัญหาในการเขียนโปรแกรมของตัวเอง

    ในการสร้างแอปพลิเคชันดังกล่าวต้องใช้ฐานข้อมูลที่หลากหลายและมีประสิทธิภาพที่สามารถส่งข้อมูลระหว่างส่วนประกอบต่างๆ ได้อย่างมีประสิทธิภาพ แม้จะมีอุปสรรคเหล่านี้ Redis ก็ขจัดอุปสรรคเหล่านี้ทั้งหมด

    เพียงแค่ใช้ Redis บนแล็ปท็อปของคุณ คุณสามารถทดสอบ A/B ตัวแปรใดๆ บนเว็บไซต์ของคุณและเชื่อมโยงตัวเองให้ใกล้ชิดกับตลาดเป้าหมายมากขึ้น หากคุณต้องการทราบข้อมูลเพิ่มเติมเกี่ยวกับวิธีการสร้างแอปพลิเคชันนี้ อย่าลืมดูวิดีโอ YouTube นี้

    แม้จะมีความต้องการเหล่านี้ ความสามารถในการประมวลผลข้อมูลขั้นสูงของ Redis ทำให้การรับส่งข้อมูลระหว่างส่วนประกอบต่างๆ มีประสิทธิภาพสูงและเชื่อถือได้สูง สร้างแอปพลิเคชันที่มีการตอบสนองสูง

    ซึ่งหมายความว่าไม่มีความล่าช้า ไม่มีความล่าช้า และไม่มีสาเหตุของการเสียดสีระหว่างผู้ใช้และแอปพลิเคชัน เพียงแค่ใช้ Redis บนแล็ปท็อปของคุณ คุณสามารถทดสอบ A/B ตัวแปรใดๆ บนเว็บไซต์ของคุณและเชื่อมโยงตัวเองให้ใกล้ชิดกับตลาดเป้าหมายมากขึ้น

    หากคุณต้องการทราบข้อมูลเพิ่มเติมเกี่ยวกับวิธีการสร้างแอปพลิเคชันนี้ อย่าลืมดูวิดีโอ YouTube นี้

    หากคุณชอบโพสต์นี้ เราก็ยังมีอีกมากมายให้คุณค้นพบบน Redis Launchpad ตั้งแต่การสร้างระบบติดตามยานพาหนะแบบเรียลไทม์ไปจนถึงการสร้างระบบโดรนที่ทรงพลังเพื่อปกป้องบริษัทประกันพืชผลในประเทศกำลังพัฒนา Redis ถูกโปรแกรมเมอร์ทั่วโลกใช้ประโยชน์จาก Redis เพื่อปรับปรุงชีวิตประจำวัน

    คุณสามารถทำอะไรกับ Redis ได้บ้าง

    วิธีสร้างเครื่องมือทดสอบ A/B แบบเรียลไทม์โดยใช้ Redis

    ติอาโก้ คามาร์โก้

    หากคุณชอบแอปพลิเคชันนี้ โปรดไปที่หน้า GitHub ของ Thiago เพื่อติดตามข่าวสารล่าสุดเกี่ยวกับโครงการทั้งหมดที่เขาเกี่ยวข้อง