Các hệ thống tính toán lượt VIEWS chính xác như thế nào nếu nhiều IP xem videos một lúc | Backend

Поделиться
HTML-код
  • Опубликовано: 30 окт 2024

Комментарии • 31

  • @Rock-ks1gd
    @Rock-ks1gd 2 года назад +5

    Thank anh đã chia sẽ những kiến thức bổ ích 🤓

  • @ongtheanh1852
    @ongtheanh1852 2 года назад +4

    wow, quá nhiều kiến thức thực chiến luôn ạ. Cám ơn anh đã chia sẻ ạ❤❤

    • @anonystick
      @anonystick  2 года назад

      Cảm ơn em đã động viên

  • @YANGLIALUMINIUMVIETNAM
    @YANGLIALUMINIUMVIETNAM Год назад +3

    hãy chia sẻ kiến thức lập trình cho thế hệ trể Việt Nam phát triển .

  • @LePhucDat
    @LePhucDat 2 года назад +6

    Cám ơn anh đã đóng góp cho cộng đồng nhiều! Nhiều kinh nghiệm thực chiến quá :).
    Anh có thể chia sẻ thêm là có cách nào để chống giả mạo request từ Develop tool(console) của Browser không anh?
    1 số tính năng như Like/Vote hay submit form, ... mình có thể Loop và ajax post random các params => là có thể Flood system(database/cache) được rồi anh :D

    • @anonystick
      @anonystick  2 года назад +1

      Cảm ơn em. Video sẽ sớm giải quyết vấn đề này

  • @CoGangHocTap-lx4uz
    @CoGangHocTap-lx4uz 2 дня назад +1

    Anh ơi. Cho em hỏi trường hợp máy user có chung một giải IP. (giống như máy ở công ty) vậy bài toán này mình giải quyết như nào ạ

    • @anonystick
      @anonystick  2 дня назад

      Xem phần ratelimit trong GO member hen

  • @phikiethoang7380
    @phikiethoang7380 2 года назад +1

    Theo em, cái xem tối thiểu 30s đấy phải là do frontend (player youtube) xác định, sau đó nó gửi request lên server để cộng view. Và logic tính view trên frontend cũng có nhiều tham số khác, ngoài 30s tối thiểu. Chứ ko phải cứ play video, hit server, có 1 lần view, thoát ra, chờ 30s, play lại có 1 view. Với các user khác nhau trong cùng mạng LAN (chung IP public), trừ khi youtube phát hiện bất thường (xem liên tục, định kỳ, lặp lại tần suất lớn,...) thì đều được tính view.

    • @anonystick
      @anonystick  2 года назад

      Cảm ơn em đã đóng góp ý kiến rất hay!

    • @huyennguyenvan8094
      @huyennguyenvan8094 4 месяца назад

      Anh ơi, cho em hỏi chút là với user khác nhau trong cùng mạng LAN là kiểu như nào anh nhỉ, nó có ảnh hưởng gì đến bài toán kiểu rate limit không ạ?

  • @nguyenxuanduong5086
    @nguyenxuanduong5086 2 года назад +6

    Em cảm ơn anh về những video hết sức bổ ích ạ.
    Em có một chút thắc mắc, mong anh giải đáp ạ.
    Hiện tại em đang xây dựng chức năng đánh giá sản phẩm:
    Nếu chỉ cho những người đã mua đánh giá thì mình check xem sản phẩm đó đã từng nằm trong hóa đơn chưa hay có cách làm nào để tối ưu hơn không ạ?.
    Em cảm ơn ạ.

    • @anonystick
      @anonystick  2 года назад +1

      Có video cho bạn và cho các bạn có cùng câu hỏi này.

  • @leucthinh3226
    @leucthinh3226 2 года назад +4

    Anh ơi em cũng newbie mong anh chia sẽ về cách trace last login của user ạ

    • @anonystick
      @anonystick  2 года назад

      Em đang hỏi cách detect người dùng đóng app hay đóng browser hay là cách tổ chức database?

    • @leucthinh3226
      @leucthinh3226 2 года назад

      @@anonystick về detect ạ

  • @LePhucDat
    @LePhucDat 2 года назад +1

    Liên quan đến dữ liệu lớn nhưng cần có hiệu suất tốt. Cho em hỏi kĩ thuật Sharding với MongoDB với anh :).
    Kinh nghiệm khi Sharding mình cần lưu ý đến điều gì?
    Cách code có khác khi sharding ko?
    Cấu hình kết nối mongo sharding với Mongoose của Nodejs triển khai thực tế ntn, làm demo được ko a.
    Cám ơn anh rất nhiều!!!

    • @anonystick
      @anonystick  2 года назад +1

      Install xong em xem phần trấnction mongodb mà anh làm á em

  • @dangnhattrinh5500
    @dangnhattrinh5500 Год назад +1

    Em có thắc mắc ở đoạn 24:50, nếu chỉ set keyUserId thì làm sao phân biệt view đó với video này hay video khác? Liệu có phải kết hợp thêm cả videoId nữa không ạ? Với e thấy có bạn hỏi về đồng bộ view trong Db chính thì nó diễn ra như thế nào ạ? Cách vài phút lại gởi lên redis hỏi hay sao ạ?

    • @anonystick
      @anonystick  Год назад

      Hiện tại anh làm sử udngj keyUserId. Nếu em muốn cho từng video thì cú pháp sau: keyUserId-videoId. Đồng bộ thì em xem lại video về redis có trong kênh á em

  • @t_kien
    @t_kien 2 года назад +1

    Mình cũng mới trong BE, vd mình dùng MongoDB thì mình dùng redis tính view và update bên MongoDB ntn?

    • @anonystick
      @anonystick  2 года назад +1

      pub/sub redis đó Kiên.

  • @mykun8737
    @mykun8737 2 года назад +3

    em chưa hiểu title video này lắm, đây là code ngăn chặn nhiều người dùng chung tài khoản ạ?

    • @anonystick
      @anonystick  2 года назад

      Không em. Nhiều hệ thống sẽ tính lượt views để xếp hạng bài viết, videos... vậy backend sẽ làm như thế nào để tránh gian lận lượt view?

  • @nguyencaotai412
    @nguyencaotai412 2 года назад +1

    Nếu theo ip ví dụ 1 máy họ dùng proxy dân cư thì vẫn qua mặt tính đc view a ạ

    • @anonystick
      @anonystick  2 года назад

      Đương nhiên làm sao qua mặt được. Vị trí địa lý, khung giờ... Và quan trọng là một tháng họ sẽ review lại nữa.

  • @huutinnguyen3075
    @huutinnguyen3075 2 года назад +1

    Có nhận đệ không a, chủ yếu mong được học hỏi

    • @anonystick
      @anonystick  2 года назад

      Khônh giám haha. Em cứ tìm hiểu có gì không hiểu hỏi lại hen

    • @anonystick
      @anonystick  2 года назад

      Nhận vào làm project a-z.

  • @baolee4622
    @baolee4622 2 года назад +1

    lưu ở redis đấy rồi thực tế có lưu views này xuống db ko sư phụ

    • @anonystick
      @anonystick  2 года назад +1

      Có em. Luôn luôn đồng bộ, sở dĩ redis đứng trước là giảm áp lực cho db khi lưu lượng lớn.