Cách hạn chế User Requests N lần trên X phút trong Rest API | Nodejs Redis

แชร์
ฝัง
  • เผยแพร่เมื่อ 10 ธ.ค. 2024

ความคิดเห็น • 47

  • @haabaa4552
    @haabaa4552 3 ปีที่แล้ว +3

    Rất tâm huyết! Chúc kênh ngày càng có nhiều người theo dõi.

    • @anonystick
      @anonystick  3 ปีที่แล้ว

      Cảm ơn bạn nhé!

  • @funnystudy2887
    @funnystudy2887 3 ปีที่แล้ว +1

    Nội dung vô cùng hữu ích và hấp dẫn, rất mong kênh ngày càng phát triển hơn

  • @minhhieple6483
    @minhhieple6483 3 ปีที่แล้ว +2

    Hay bác ơi em đã đăng kí và bật thông báo rồi, mong bác chia sẻ mấy kinh nghiệm làm việc với hệ thống lớn, thiết kế ...

    • @anonystick
      @anonystick  3 ปีที่แล้ว

      Cảm ơn bạn!

  • @kaypham251
    @kaypham251 3 ปีที่แล้ว +2

    hay quá em đang tim hiểu về BE vs express

    • @anonystick
      @anonystick  3 ปีที่แล้ว

      Uhm, cố gắng nhiều lên hén.

  • @nguyenhoangthai2616
    @nguyenhoangthai2616 7 หลายเดือนก่อน +1

    Hay quá chú ơi.

  • @mrolala1992
    @mrolala1992 3 ปีที่แล้ว +1

    Nội dung hay, bác chiệu khó đầu tư thêm về hình ảnh và live stream chia sẻ thì kênh bác tốt lắm nhé

    • @anonystick
      @anonystick  3 ปีที่แล้ว

      Tks bạn! Sẽ cố gắng hơn nữa

  • @anhung9351
    @anhung9351 2 ปีที่แล้ว +1

    Kênh rất hay mong ad sẽ đầu tư thêm về mặt animation em đã sub.

  •  ปีที่แล้ว

    đúng cái em đang cần luô, cảm ơn anh rất nhiều

  • @cuongmanhmvc
    @cuongmanhmvc 2 ปีที่แล้ว +1

    Quá hay luôn anh ơi

  • @locit9046
    @locit9046 ปีที่แล้ว +1

    không bt em măc phải lỗi gì mà hàm biến numberRequest của em đợi hàm incr() chạy rất lâu ạ

  • @longnt7375
    @longnt7375 2 ปีที่แล้ว

    Bác ơi phút 24:27 bác có nói video sau triển khai middleware một cách kĩ càng hơn. Sao em không tìm thấy video đó ạ? Em cảm ơn bác

  • @cuongangquoc5501
    @cuongangquoc5501 3 หลายเดือนก่อน

    Hay a ơi

  • @hay15z
    @hay15z ปีที่แล้ว +3

    Em nghĩ là logic này không ổn lắm, vì anh lấy request đầu tiên làm mốc thì sẽ không hay, ví dụ
    1p0s request lần 1, là 1 lần
    1p30s request lần 2, là 2 lần
    nhưng 2p10s request lần 3, thì vẫn là 2 lần do là mình chỉ tính từ hiện tại về lại 1p
    Nên em nghĩ là thay vì lưu số lượng request mình nên lưu các lần request ví dụ thay vì là 0 1 2 3 thì là key+newDate().getTime() và set expire là 1 phút lúc tính mình chỉ cần lấy ra những cái key+timestemp và count() lên là ok

    • @anonystick
      @anonystick  ปีที่แล้ว +1

      Đúng em nó còn thiếu, anh sẽ boor sung trong khoá học nha em

    • @hay15z
      @hay15z ปีที่แล้ว

      @@anonystick Dạ, em cảm ơn anh

  • @huuthn
    @huuthn 3 ปีที่แล้ว

    Hay quá anh !like

  • @locit9046
    @locit9046 ปีที่แล้ว

    anh có thể cho em xin link của video thứ 2 để setup middleware cho việc hạn chết request này được không ạ. Em cảm ơn

  • @locit9046
    @locit9046 ปีที่แล้ว +1

    anh dùng extension nào để send trực tiếp cái api đó trong vs code vậy ạ

    • @anonystick
      @anonystick  ปีที่แล้ว

      http client em hỉ?

  • @HuyNguyen-dg7yc
    @HuyNguyen-dg7yc 8 หลายเดือนก่อน +1

    thư viện xử lý rate limit có sẵn r mà lại phải đi code lại nữa nhỉ?

    • @anonystick
      @anonystick  8 หลายเดือนก่อน

      Uhm anh thích xây nhà mình làm hơn á.

  •  ปีที่แล้ว +1

    anh ơi cho em hỏi thêm câu là làm sao để server Back end phân biệt được 2 client cùng dùng chung mạng LAN với nhau (ví dụ wifi), vì khi check IP address thì 2 giống nhau ạ.
    Bài toán là em muốn hạn chế số lần request của một THIẾT BỊ ạ, nếu chỉ kiểm tra bằng IP thì các thiết bị dùng chung mạng LAN sẽ được Backend hiểu là cùng một user

    • @anonystick
      @anonystick  ปีที่แล้ว +1

      Video này đúng với em hơn: th-cam.com/video/BKuNdc92ltI/w-d-xo.html

    •  ปีที่แล้ว

      @@anonystickem cảm ơn anh đã trả lời ạ. Em đã xem hết video này của anh, anh cũng nói là trong 1 cty có 1000 người sử dụng IP chung thì vẫn tính là 1 IP ạ. Nên là vấn đề làm sao để giới hạn request theo thiết bị thì vẫn chưa có lời giải ạ

    • @anonystick
      @anonystick  ปีที่แล้ว

      Nếu user login thì em có userId. Lúc đó em sẽ kết hợp userId + IP thì sẽ có unit... OK hen..

    •  ปีที่แล้ว +1

      @@anonystick dạ OK nếu user đã login và request các API cần authentication ạ, nhưng em thắc mắc nếu mình muốn hạn chế ngay ở cái API login thì sao ạ?

    • @anonystick
      @anonystick  ปีที่แล้ว +1

      @ Em thử nghĩ xem, em có thể tạo một key random khi user đó ở API login được đúng không? Được đúng không. Nếu nâng cao thì em tìm hiểu về "finger browser" đó là cách hiện đại. Mỗi trình duyệt có một dấu vân tay nha em.

  •  ปีที่แล้ว +1

    anh ơi em chạy cái lệnh lấy IP của anh thì em ko bắt được IP của người dùng mà nó bắt IP của server FE thì phải làm sao anh?

    • @anonystick
      @anonystick  ปีที่แล้ว +1

      bắt IP user phải dưới backend. or trên FE thì em dùng api.

  • @nguyenminhtuan2632
    @nguyenminhtuan2632 2 ปีที่แล้ว +1

    Ơ video triển khai middleware rate limit này nó nằm ở đâu vậy ạ ?

    • @anonystick
      @anonystick  2 ปีที่แล้ว

      Trong đó luôn đó em...

  • @nguyenminhkhoa6436
    @nguyenminhkhoa6436 2 ปีที่แล้ว +1

    Gắn cái loop chờ vài giây sau khi click trên app hay web cho gọn :v

    • @anonystick
      @anonystick  2 ปีที่แล้ว

      sai hoàn toàn nha.

  • @peternguyen9244
    @peternguyen9244 2 ปีที่แล้ว +1

    Hi Ad
    Cho em hỏi ví dụ như data luôn bị thay đổi theo từng phút, giờ thì những trường hợp như vậy nếu đẩy vào redis để cache lại thì dữ liệu trả về cho client sẽ bị sai theo thời điểm request.
    Trường hợp nữa là một request get data từ 1 API theo nhiều điều kiện nếu dùng redis để cache lại thì những request tiếp theo cũng gọi API đó nhưng điều kiện truy vấn mỗi lần lại khác nhau thì chúng ta sẽ xử lý ra sạo ạ
    Thanks admin nhiều ạ

    • @anonystick
      @anonystick  2 ปีที่แล้ว

      Câu hỏi này dành cho video này là không đúng. Vì cơ bản là video này chỉ giới hạn request api. Câu hỏi của em liên quan đến "Tính nhất quán của dữ liệu giữa cache và database". Em vào blog anonystick/com tìm theo key redis là sẽ có nha em.

  • @charlottekatakuri7529
    @charlottekatakuri7529 3 ปีที่แล้ว +2

    dạ, thầy ơi video mờ quá thầy ơi

    • @tipsmooc
      @tipsmooc 3 ปีที่แล้ว +1

      Mình thấy rõ, chắc mới up nên chưa phân giải được á

    • @anonystick
      @anonystick  3 ปีที่แล้ว

      Mới up nên chưa rõ đó bạn. Bạn có thể xem lại được rồi. Tks!

  • @JeffSanders-qh1kd
    @JeffSanders-qh1kd ปีที่แล้ว +1

    Em đang code trên windown hình như không áp dụng dc đúng không ạ

    • @anonystick
      @anonystick  ปีที่แล้ว

      Được chứ em!

    • @JeffSanders-qh1kd
      @JeffSanders-qh1kd ปีที่แล้ว

      @@anonystick vâng anh, em đang gặp vấn đề với việc connect tới redis

  • @nhannguyenngoc7705
    @nhannguyenngoc7705 2 ปีที่แล้ว +1

    Nginx đâu không dùng mà chơi kiểu khổ vậy :))

  • @tipsjavascript4610
    @tipsjavascript4610 3 ปีที่แล้ว

    User Requests N lần trên X phút trong Rest API