Computer >> Máy Tính >  >> Lập trình >> Redis

Cách xây dựng công cụ kiểm tra A / B thời gian thực bằng Redis

Thử nghiệm A / B đã trở thành một tài sản không thể thiếu đối với các nhà tiếp thị và chủ sở hữu trang web cạnh tranh trong nền kinh tế kỹ thuật số ngày nay. Nó cho phép người dùng thử nghiệm những ý tưởng hiện có, thử nghiệm những ý tưởng mới và làm nổi bật những ý tưởng hiệu quả và điều gì không hiệu quả.

Nếu không có thông tin này, việc cố gắng tối ưu hóa các trang web có thể là một quá trình khó chịu và tốn thời gian. Nhưng thật không may, phần mềm thử nghiệm A / B có thể đắt tiền, khiến nhiều người không thể tiếp cận với các lợi ích của nó.

Nhưng với Redis, lập trình viên Thiago Camargo đã có thể xóa bỏ những rào cản này bằng cách tạo ra một công cụ kiểm tra A / B mở có thể hoạt động trong thời gian thực. Các tính năng xử lý dữ liệu mạnh mẽ của Redis cho phép người dùng thử nghiệm với các biến số họ chọn và khám phá những cách hiệu quả nhất để tối ưu hóa các trang web của họ.

Hãy xem cách Thiago có thể kết hợp ứng dụng này với nhau. Nhưng trước khi đi xa hơn, chúng tôi muốn chỉ ra rằng chúng tôi có rất nhiều ứng dụng sáng tạo để bạn khám phá trên Redis Launchpad.

Vì vậy, hãy nhớ duyệt sau bài đăng này!

  1. Bạn sẽ xây dựng cái gì?
  2. Bạn sẽ cần gì?
  3. Kiến trúc
  4. Bắt đầu
  5. Cách thức hoạt động

1. Bạn sẽ xây dựng cái gì?

Bạn sẽ xây dựng một công cụ kiểm tra A / B mạnh mẽ nhưng đơn giản, có thể mở rộng và hoạt động trong thời gian thực. Dưới đây, chúng tôi sẽ chỉ cho bạn cách xây dựng ứng dụng này từ dưới lên, làm nổi bật những thành phần nào được yêu cầu cùng với chức năng của chúng.

2. Bạn sẽ cần gì?

  • Kotlin : được sử dụng làm ngôn ngữ lập trình nguồn mở cũng được Google sử dụng để phát triển các ứng dụng Android.
  • Gradle : được sử dụng như một công cụ tự động hóa xây dựng để phát triển phần mềm đa ngôn ngữ.
  • Xà lách : xây dựng các ứng dụng phản ứng không chặn
  • RedisGraph : thưa các ma trận để biểu diễn ma trận kề trong đồ thị và đại số tuyến tính để truy vấn đồ thị
  • RedisTimeSeries : cho phép bạn nhập và truy vấn hàng triệu mẫu và sự kiện với siêu hiệu quả.
  • RedisJSON : cho phép lưu trữ, cập nhật và tìm nạp các giá trị JSON từ các khóa Redis

3. Kiến trúc

Cách xây dựng công cụ kiểm tra A / B thời gian thực bằng Redis Một thử nghiệm được tạo trên Swagger dựa trên các biến số bạn muốn thử nghiệm trên trang web của mình. Người dùng này đã chọn để kiểm tra mức độ ảnh hưởng của các màu khác nhau đối với doanh số bán hàng.
  • Sự kiện kích hoạt xác định những người dùng sẽ tự động được đăng ký trong thử nghiệm.
  • Người dùng đăng ký một đăng ký sẽ được ghi lại dưới dạng sự kiện kích hoạt (chuyển đổi). Màu của mỗi sự kiện kích hoạt cũng sẽ được ghi lại để đo lường kết quả.
  • Thử nghiệm A / B là gì?

    Còn được gọi là thử nghiệm phân tách, thử nghiệm A / B đề cập đến quá trình thử nghiệm có phương pháp trong đó hai hoặc nhiều phiên bản của một biến được hiển thị cho khách truy cập trang web để xác định biến nào có tác động lớn hơn đến chuyển đổi.

    Nó được thiết kế để làm rõ hơn về cách bạn có thể định vị thương hiệu, sản phẩm và dịch vụ của mình hiệu quả hơn trên thị trường.

    Ví dụ:bạn có một sản phẩm trên trang web mà bạn đang cố gắng bán. Một biến bạn có thể thử nghiệm sẽ là nút gọi hành động (CTA) bên cạnh sản phẩm. Có một số cách khác nhau để bạn có thể A / B kiểm tra CTA, bao gồm:

    1. Vị trí
    2. Thiết kế
    3. Màu sắc
    4. Kích thước
    5. Viết lách

    Bằng cách thử nghiệm tách các biến này, bạn sẽ khám phá ra phiên bản CTA nào sẽ tối ưu nhất để thúc đẩy chuyển đổi.

    4. Bắt đầu

    Điều kiện tiên quyết

    • Docker
    • Cài đặt Gradle 7.2
    • Maven 3.8.1
    • Cài đặt OpenJDK
    • Tài liệu API Swagger

    Bước 1:Sao chép kho lưu trữ

    Bước 2. Thực hiện tác vụ xây dựng

    Bước 3:Thiết lập mô-đun Redis

    Nếu bạn đang sử dụng máy tính để bàn Docker, hãy đảm bảo rằng tùy chọn chia sẻ tệp được bật cho ổ gắn kết. Sử dụng mã bên dưới để thiết lập Redis:

    Bước 4. Chạy ứng dụng

    Sử dụng mã bên dưới để khởi động docker:

    Cách hoạt động

    API thử nghiệm

    Sau đây, chúng tôi sẽ hướng dẫn bạn cách tạo thử nghiệm kiểm tra A / B có thể mở rộng với đăng ký có trọng số dựa trên trình kích hoạt.

    Cách tạo thử nghiệm

    Trong bước này, chúng tôi sẽ hướng dẫn bạn cách tạo thử nghiệm cho phép bạn kiểm tra A / B các biến khác nhau. Chúng tôi sẽ đặt mình vào vị trí của một nhà tiếp thị đang tìm cách phân chia thử nghiệm các màu màn hình khác nhau để xem chúng có tác động gì đến doanh số bán hàng.

    Để bắt đầu, hãy sử dụng mã bên dưới.

    Điều đáng chú ý là chúng tôi đã thay đổi "mục tiêu" ở trên cùng thành "mua hàng" để đo lường số lần bán hàng được thực hiện từ mỗi màu màn hình. Dưới đó, chúng tôi đã tạo "id" của thử nghiệm là "subscription1".

    Để xác định sự kiện kích hoạt, chúng tôi đã chèn ‘user-plan-screen-view.’ Điều này có nghĩa là khi một sự kiện được kích hoạt, người dùng sẽ tự động được đăng ký trong thử nghiệm.

    Tiếp theo, chúng tôi đã xác định các biến thể là "red" và "blue" vì đây là hai biến mà chúng tôi sẽ thử nghiệm A / B.

    Cách truy xuất thử nghiệm

    Phản ứng.

    API cấu hình từ xa

    Sau đây, chúng tôi sẽ hướng dẫn bạn cách tạo dịch vụ cấu hình ứng dụng khách từ xa động và có thể mở rộng (Thay thế Firebase).

    Cách cập nhật cấu hình từ xa

    Cách truy xuất cấu hình từ xa

    Phản hồi

    API sự kiện

    Bước này liên quan đến Lập chỉ mục sự kiện Timeseries.

    Cách đẩy sự kiện

    API Tóm tắt - Dịch vụ Tóm tắt Chung

    Đây là một dịch vụ tóm tắt đơn giản và linh hoạt có khả năng lưu giữ và duy trì các bản tóm tắt của nhiều loại ứng dụng. Chúng bao gồm:bảng điểm trò chơi, xếp hạng sản phẩm, xếp hạng người dùng, số liệu gia tăng và nhiều hơn nữa.

    Cập nhật tóm tắt

    Lấy tóm tắt

    Phản hồi:

    API ngăn - Khóa chung / Dịch vụ giá trị

    Lưu trữ tài sản linh hoạt

    Cập nhật ngăn kéo

    Nhận ngăn kéo

    Phản hồi:

    Một số truy vấn Redis đã sử dụng

    Hầu hết các lệnh được sử dụng bên dưới đều được triển khai bằng Chú thích lệnh của Diếp cá Redis.

    Biểu đồ

    • registerEmitterOnExperiment
    • fetchParticipantsOnExperiment
    • graphQuery

    TimeSeries

    • pushEvent

    JSON

    • setObject
    • getObject
    • setPathValue
    • getPathValue

    Cốt lõi

    • HSET
    • HGET / HGETALL
    • HEXISTS

    Kết luận:Giúp mọi người có thể truy cập thử nghiệm A / B

    Thử nghiệm A / B đã trở thành một phần không thể thiếu đối với bất kỳ nhà tiếp thị nào cạnh tranh trong sân chơi kỹ thuật số ngày nay. Nhưng có được phần mềm này có thể tốn kém, buộc nhiều người phải hoạt động với một trang web chưa tối ưu. Và để kết hợp điều này hơn nữa, việc tạo phần mềm kiểm tra phân tách của bạn có những khó khăn lập trình riêng.

    Để tạo một ứng dụng như vậy đòi hỏi một cơ sở dữ liệu đa năng và mạnh mẽ có khả năng truyền dữ liệu hiệu quả giữa các thành phần. Tuy nhiên, bất chấp những trở ngại này, Redis đã loại bỏ tất cả những trở ngại này.

    Chỉ bằng cách sử dụng Redis trên máy tính xách tay của mình, bạn có thể A / B kiểm tra bất kỳ biến nào trên trang web của mình và tự kết nối mình với thị trường mục tiêu hơn. Nếu bạn muốn khám phá thêm về cách ứng dụng này được tạo ra, hãy nhớ xem Video YouTube này.

    Tuy nhiên, bất chấp những nhu cầu này, khả năng xử lý dữ liệu tiên tiến của Redis đã giúp việc truyền dữ liệu giữa các thành phần trở nên siêu hiệu quả và đáng tin cậy, tạo ra một ứng dụng có độ phản hồi cao.

    Điều này có nghĩa là không có độ trễ, không có độ trễ và không có nguyên nhân nào gây ra xích mích giữa người dùng và ứng dụng. Chỉ bằng cách sử dụng Redis trên máy tính xách tay của mình, bạn có thể A / B kiểm tra bất kỳ biến nào trên trang web của mình và tự kết nối mình với thị trường mục tiêu hơn.

    Nếu bạn muốn khám phá thêm về cách ứng dụng này được tạo ra, hãy nhớ xem Video YouTube này.

    Nếu bạn thích bài đăng này thì chúng tôi còn có nhiều thứ khác để bạn khám phá trên Redis Launchpad. Từ việc tạo ra các hệ thống theo dõi xe theo thời gian thực đến xây dựng các hệ thống máy bay không người lái mạnh mẽ để bảo vệ các công ty bảo hiểm cây trồng ở các nước đang phát triển, Redis đã được các lập trình viên trên toàn thế giới tận dụng để cải thiện cuộc sống hàng ngày.

    Bạn có thể làm gì với Redis?

    Cách xây dựng công cụ kiểm tra A / B thời gian thực bằng Redis Ai đã tạo ra ứng dụng? Cách xây dựng công cụ kiểm tra A / B thời gian thực bằng Redis

    Thiago Camargo

    Nếu bạn thích ứng dụng này, hãy nhớ truy cập trang GitHub của Thiago để cập nhật tất cả các dự án mà anh ấy đã tham gia.