diff --git a/public/api/i/2025/09/08/10jgi3w-1.webp b/public/api/i/2025/09/08/10jgi3w-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/08/10tx11y-1.webp b/public/api/i/2025/09/08/10tx11y-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/08/10u159n-1.webp b/public/api/i/2025/09/08/10u159n-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/08/110r5za-1.webp b/public/api/i/2025/09/08/110r5za-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/08/111e4i9-1.webp b/public/api/i/2025/09/08/111e4i9-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/08/112zyds-1.webp b/public/api/i/2025/09/08/112zyds-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/08/11321yv-1.webp b/public/api/i/2025/09/08/11321yv-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/08/114vhsk-1.webp b/public/api/i/2025/09/08/114vhsk-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/08/114xwmu-1.webp b/public/api/i/2025/09/08/114xwmu-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/08/115w1hh-1.webp b/public/api/i/2025/09/08/115w1hh-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/08/116hus4-1.webp b/public/api/i/2025/09/08/116hus4-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/08/118d2ss-1.webp b/public/api/i/2025/09/08/118d2ss-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/08/118f5gd-1.webp b/public/api/i/2025/09/08/118f5gd-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/08/118gs9v-1.webp b/public/api/i/2025/09/08/118gs9v-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/08/118hy05-1.webp b/public/api/i/2025/09/08/118hy05-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/08/119g2ic-1.webp b/public/api/i/2025/09/08/119g2ic-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/08/11a35ow-1.webp b/public/api/i/2025/09/08/11a35ow-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/08/11d3nuc-1.webp b/public/api/i/2025/09/08/11d3nuc-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/08/11d5hm7-1.webp b/public/api/i/2025/09/08/11d5hm7-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/08/zoto8t-1.webp b/public/api/i/2025/09/08/zoto8t-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/10irv8h-1.webp b/public/api/i/2025/09/09/10irv8h-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/10iulwy-1.webp b/public/api/i/2025/09/09/10iulwy-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/10nhhg1-1.webp b/public/api/i/2025/09/09/10nhhg1-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/10notnv-1.webp b/public/api/i/2025/09/09/10notnv-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/10o5bfr-1.webp b/public/api/i/2025/09/09/10o5bfr-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/10pdpxq-1.webp b/public/api/i/2025/09/09/10pdpxq-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/10qxsbs-1.webp b/public/api/i/2025/09/09/10qxsbs-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/10r22n7-1.webp b/public/api/i/2025/09/09/10r22n7-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/10rla5b-1.webp b/public/api/i/2025/09/09/10rla5b-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/10s7nn8-1.webp b/public/api/i/2025/09/09/10s7nn8-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/10sa32o-1.webp b/public/api/i/2025/09/09/10sa32o-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/10tejl0-1.webp b/public/api/i/2025/09/09/10tejl0-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/10txbl0-1.webp b/public/api/i/2025/09/09/10txbl0-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/10ujgs1-1.webp b/public/api/i/2025/09/09/10ujgs1-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/122nj25-1.webp b/public/api/i/2025/09/09/122nj25-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/122tejb-1.webp b/public/api/i/2025/09/09/122tejb-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/122tx0s-1.webp b/public/api/i/2025/09/09/122tx0s-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/125oncs-1.webp b/public/api/i/2025/09/09/125oncs-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/129zoko-1.webp b/public/api/i/2025/09/09/129zoko-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/12i6cmk-1.webp b/public/api/i/2025/09/09/12i6cmk-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/12jzoy9-1.webp b/public/api/i/2025/09/09/12jzoy9-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/12k2qso-1.webp b/public/api/i/2025/09/09/12k2qso-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/12kp3qc-1.webp b/public/api/i/2025/09/09/12kp3qc-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/xh9385-1.webp b/public/api/i/2025/09/09/xh9385-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/xmphei-1.webp b/public/api/i/2025/09/09/xmphei-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/xn0e7q-1.webp b/public/api/i/2025/09/09/xn0e7q-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/xp3bld-1.webp b/public/api/i/2025/09/09/xp3bld-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/y283pk-1.webp b/public/api/i/2025/09/09/y283pk-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/zgrhyz-1.webp b/public/api/i/2025/09/09/zgrhyz-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/zh539x-1.webp b/public/api/i/2025/09/09/zh539x-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/zh72vh-1.webp b/public/api/i/2025/09/09/zh72vh-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/zhoxxy-1.webp b/public/api/i/2025/09/09/zhoxxy-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/zhr1zz-1.webp b/public/api/i/2025/09/09/zhr1zz-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/zhxile-1.webp b/public/api/i/2025/09/09/zhxile-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/zlvtzi-1.webp b/public/api/i/2025/09/09/zlvtzi-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/zmmg8c-1.webp b/public/api/i/2025/09/09/zmmg8c-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/zo9kra-1.webp b/public/api/i/2025/09/09/zo9kra-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/09/zoe4t0-1.webp b/public/api/i/2025/09/09/zoe4t0-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/12umpxk-1.webp b/public/api/i/2025/09/10/12umpxk-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/12uomji-1.webp b/public/api/i/2025/09/10/12uomji-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/k90qnk-1.webp b/public/api/i/2025/09/10/k90qnk-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/kb72qe-1.webp b/public/api/i/2025/09/10/kb72qe-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/su1qk8-1.webp b/public/api/i/2025/09/10/su1qk8-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/suhd1q-1.webp b/public/api/i/2025/09/10/suhd1q-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/suonmx-1.webp b/public/api/i/2025/09/10/suonmx-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/suzbio-1.webp b/public/api/i/2025/09/10/suzbio-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/sv0s0r-1.webp b/public/api/i/2025/09/10/sv0s0r-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/sv2leb-1.webp b/public/api/i/2025/09/10/sv2leb-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/sv4dpg-1.webp b/public/api/i/2025/09/10/sv4dpg-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/svjzbo-1.webp b/public/api/i/2025/09/10/svjzbo-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/svm8vj-1.webp b/public/api/i/2025/09/10/svm8vj-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/svoe51-1.webp b/public/api/i/2025/09/10/svoe51-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/svqxit-1.webp b/public/api/i/2025/09/10/svqxit-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/sw5vdr-1.webp b/public/api/i/2025/09/10/sw5vdr-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/sw8g23-1.webp b/public/api/i/2025/09/10/sw8g23-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/swc1j3-1.webp b/public/api/i/2025/09/10/swc1j3-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/sweoot-1.webp b/public/api/i/2025/09/10/sweoot-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/swzinu-1.webp b/public/api/i/2025/09/10/swzinu-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/sxei2s-1.webp b/public/api/i/2025/09/10/sxei2s-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/sxh62n-1.webp b/public/api/i/2025/09/10/sxh62n-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/sxjlh8-1.webp b/public/api/i/2025/09/10/sxjlh8-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/sxlmx2-1.webp b/public/api/i/2025/09/10/sxlmx2-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/sxn9zd-1.webp b/public/api/i/2025/09/10/sxn9zd-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/sxxtmw-1.webp b/public/api/i/2025/09/10/sxxtmw-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/sxzjm2-1.webp b/public/api/i/2025/09/10/sxzjm2-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/sy11fg-1.webp b/public/api/i/2025/09/10/sy11fg-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/sy75as-1.webp b/public/api/i/2025/09/10/sy75as-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/sy8xwf-1.webp b/public/api/i/2025/09/10/sy8xwf-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/sympbg-1.webp b/public/api/i/2025/09/10/sympbg-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/syqfgo-1.webp b/public/api/i/2025/09/10/syqfgo-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/sysm37-1.webp b/public/api/i/2025/09/10/sysm37-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/syuiyd-1.webp b/public/api/i/2025/09/10/syuiyd-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/sz50a7-1.webp b/public/api/i/2025/09/10/sz50a7-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/sz7ftu-1.webp b/public/api/i/2025/09/10/sz7ftu-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/sz8r8r-1.webp b/public/api/i/2025/09/10/sz8r8r-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/szef96-1.webp b/public/api/i/2025/09/10/szef96-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/10/szeur9-1.webp b/public/api/i/2025/09/10/szeur9-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/11/111qad1-1.webp b/public/api/i/2025/09/11/111qad1-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/11/111rxfa-1.webp b/public/api/i/2025/09/11/111rxfa-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/11/114aurs-1.webp b/public/api/i/2025/09/11/114aurs-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/11/11b5y0t-1.webp b/public/api/i/2025/09/11/11b5y0t-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/11/126uk28-1.webp b/public/api/i/2025/09/11/126uk28-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/11/128jwcb-1.webp b/public/api/i/2025/09/11/128jwcb-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/11/12i8qms-1.webp b/public/api/i/2025/09/11/12i8qms-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/12/12boul3-1.webp b/public/api/i/2025/09/12/12boul3-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/13/lqg62s-1.webp b/public/api/i/2025/09/13/lqg62s-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/13/n8ryrj-1.webp b/public/api/i/2025/09/13/n8ryrj-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/13/n99aoy-1.webp b/public/api/i/2025/09/13/n99aoy-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/13/n9u3ge-1.webp b/public/api/i/2025/09/13/n9u3ge-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/13/nmff34-1.webp b/public/api/i/2025/09/13/nmff34-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/13/p26o8x-1.webp b/public/api/i/2025/09/13/p26o8x-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/15/119ff4d-1.webp b/public/api/i/2025/09/15/119ff4d-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/15/12al42k-1.webp b/public/api/i/2025/09/15/12al42k-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/15/ucp5bt-1.webp b/public/api/i/2025/09/15/ucp5bt-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/10r7qnc-1.webp b/public/api/i/2025/09/16/10r7qnc-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/10uklpi-1.webp b/public/api/i/2025/09/16/10uklpi-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/10wvrf2-1.webp b/public/api/i/2025/09/16/10wvrf2-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/10xmq2l-1.webp b/public/api/i/2025/09/16/10xmq2l-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/10xp98x-1.webp b/public/api/i/2025/09/16/10xp98x-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/10xs9rk-1.webp b/public/api/i/2025/09/16/10xs9rk-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/11buhw1-1.webp b/public/api/i/2025/09/16/11buhw1-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/11c1t5t-1.webp b/public/api/i/2025/09/16/11c1t5t-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/11ci8hc-1.webp b/public/api/i/2025/09/16/11ci8hc-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/11d3ogv-1.webp b/public/api/i/2025/09/16/11d3ogv-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/ip1efv-1.webp b/public/api/i/2025/09/16/ip1efv-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/ipewwv-1.webp b/public/api/i/2025/09/16/ipewwv-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/iqpz9m-1.webp b/public/api/i/2025/09/16/iqpz9m-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/iquhuf-1.webp b/public/api/i/2025/09/16/iquhuf-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/p86lpo-1.webp b/public/api/i/2025/09/16/p86lpo-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/p88uqg-1.webp b/public/api/i/2025/09/16/p88uqg-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/p8o5kd-1.webp b/public/api/i/2025/09/16/p8o5kd-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/p9xvzy-1.webp b/public/api/i/2025/09/16/p9xvzy-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/pa0adk-1.webp b/public/api/i/2025/09/16/pa0adk-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/pac0j5-1.webp b/public/api/i/2025/09/16/pac0j5-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/pag7sf-1.webp b/public/api/i/2025/09/16/pag7sf-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/pb08w0-1.webp b/public/api/i/2025/09/16/pb08w0-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/pbu2du-1.webp b/public/api/i/2025/09/16/pbu2du-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/pc7z5d-1.webp b/public/api/i/2025/09/16/pc7z5d-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/pdc4ej-1.webp b/public/api/i/2025/09/16/pdc4ej-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/pde1m5-1.webp b/public/api/i/2025/09/16/pde1m5-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/pdie9j-1.webp b/public/api/i/2025/09/16/pdie9j-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/pdwvlu-1.webp b/public/api/i/2025/09/16/pdwvlu-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/pdzjbq-1.webp b/public/api/i/2025/09/16/pdzjbq-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/pe21e7-1.webp b/public/api/i/2025/09/16/pe21e7-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/pe4gjp-1.webp b/public/api/i/2025/09/16/pe4gjp-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/pet1hq-1.webp b/public/api/i/2025/09/16/pet1hq-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/pf7oj6-1.webp b/public/api/i/2025/09/16/pf7oj6-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/pfvlkh-1.webp b/public/api/i/2025/09/16/pfvlkh-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/pgy0r9-1.webp b/public/api/i/2025/09/16/pgy0r9-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/pgzg8n-1.webp b/public/api/i/2025/09/16/pgzg8n-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/phhvgv-1.webp b/public/api/i/2025/09/16/phhvgv-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/phke37-1.webp b/public/api/i/2025/09/16/phke37-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/phmmeq-1.webp b/public/api/i/2025/09/16/phmmeq-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/pitrj2-1.webp b/public/api/i/2025/09/16/pitrj2-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/qkipdz-1.webp b/public/api/i/2025/09/16/qkipdz-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/qnblw0-1.webp b/public/api/i/2025/09/16/qnblw0-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/qz2t5q-1.webp b/public/api/i/2025/09/16/qz2t5q-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/qzb8ro-1.webp b/public/api/i/2025/09/16/qzb8ro-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/r2w1yc-1.webp b/public/api/i/2025/09/16/r2w1yc-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/r3b7la-1.webp b/public/api/i/2025/09/16/r3b7la-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/rcsxk4-1.webp b/public/api/i/2025/09/16/rcsxk4-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/s4e9am-1.webp b/public/api/i/2025/09/16/s4e9am-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/s8f7jc-1.webp b/public/api/i/2025/09/16/s8f7jc-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/s8kg4t-1.webp b/public/api/i/2025/09/16/s8kg4t-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/s8m7zi-1.webp b/public/api/i/2025/09/16/s8m7zi-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/s8x9i0-1.webp b/public/api/i/2025/09/16/s8x9i0-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/s90p0f-1.webp b/public/api/i/2025/09/16/s90p0f-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/s91r9m-1.webp b/public/api/i/2025/09/16/s91r9m-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/s942bz-1.webp b/public/api/i/2025/09/16/s942bz-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/s954fw-1.webp b/public/api/i/2025/09/16/s954fw-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/s97ozk-1.webp b/public/api/i/2025/09/16/s97ozk-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/s996bt-1.webp b/public/api/i/2025/09/16/s996bt-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/s9j62w-1.webp b/public/api/i/2025/09/16/s9j62w-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/s9k9xw-1.webp b/public/api/i/2025/09/16/s9k9xw-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/s9mcew-1.webp b/public/api/i/2025/09/16/s9mcew-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/s9o1fm-1.webp b/public/api/i/2025/09/16/s9o1fm-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/s9pnms-1.webp b/public/api/i/2025/09/16/s9pnms-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/s9qvtz-1.webp b/public/api/i/2025/09/16/s9qvtz-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/s9tjrb-1.webp b/public/api/i/2025/09/16/s9tjrb-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/s9udvm-1.webp b/public/api/i/2025/09/16/s9udvm-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/sa4di7-1.webp b/public/api/i/2025/09/16/sa4di7-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/sa6axn-1.webp b/public/api/i/2025/09/16/sa6axn-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/sa858d-1.webp b/public/api/i/2025/09/16/sa858d-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/sa92ie-1.webp b/public/api/i/2025/09/16/sa92ie-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/saaosr-1.webp b/public/api/i/2025/09/16/saaosr-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/sh9kgn-1.webp b/public/api/i/2025/09/16/sh9kgn-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/sleywf-1.webp b/public/api/i/2025/09/16/sleywf-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/slhvr2-1.webp b/public/api/i/2025/09/16/slhvr2-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/slolf2-1.webp b/public/api/i/2025/09/16/slolf2-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/sm5ngj-1.webp b/public/api/i/2025/09/16/sm5ngj-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/smohqn-1.webp b/public/api/i/2025/09/16/smohqn-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/snv3yw-1.webp b/public/api/i/2025/09/16/snv3yw-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/sp4xft-1.webp b/public/api/i/2025/09/16/sp4xft-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/sqx5id-1.webp b/public/api/i/2025/09/16/sqx5id-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/sv8wqb-1.webp b/public/api/i/2025/09/16/sv8wqb-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/svq261-1.webp b/public/api/i/2025/09/16/svq261-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/sxcx7d-1.webp b/public/api/i/2025/09/16/sxcx7d-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/sy5ft1-1.webp b/public/api/i/2025/09/16/sy5ft1-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/szf72t-1.webp b/public/api/i/2025/09/16/szf72t-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/szzqxu-1.webp b/public/api/i/2025/09/16/szzqxu-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/t0f29d-1.webp b/public/api/i/2025/09/16/t0f29d-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/t1894n-1.webp b/public/api/i/2025/09/16/t1894n-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/t1n0o7-1.webp b/public/api/i/2025/09/16/t1n0o7-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/t3lybk-1.webp b/public/api/i/2025/09/16/t3lybk-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/tsjuiw-1.webp b/public/api/i/2025/09/16/tsjuiw-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/tsyvbr-1.webp b/public/api/i/2025/09/16/tsyvbr-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/tt6785-1.webp b/public/api/i/2025/09/16/tt6785-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/u7dxwr-1.webp b/public/api/i/2025/09/16/u7dxwr-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/u80n69-1.webp b/public/api/i/2025/09/16/u80n69-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/ua6n2r-1.webp b/public/api/i/2025/09/16/ua6n2r-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/16/vqnibz-1.webp b/public/api/i/2025/09/16/vqnibz-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/17/10egvdw-1.webp b/public/api/i/2025/09/17/10egvdw-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/17/10f1n1j-1.webp b/public/api/i/2025/09/17/10f1n1j-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/17/10hjobo-1.webp b/public/api/i/2025/09/17/10hjobo-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/17/10hp6uw-1.webp b/public/api/i/2025/09/17/10hp6uw-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/17/10iq05i-1.webp b/public/api/i/2025/09/17/10iq05i-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/17/10iw8w4-1.webp b/public/api/i/2025/09/17/10iw8w4-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/17/umd7ep-1.webp b/public/api/i/2025/09/17/umd7ep-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/17/upct3j-1.webp b/public/api/i/2025/09/17/upct3j-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/17/w9rfaa-1.webp b/public/api/i/2025/09/17/w9rfaa-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/17/w9vq4z-1.webp b/public/api/i/2025/09/17/w9vq4z-1.webp old mode 100644 new mode 100755 diff --git a/public/api/i/2025/09/18/8d4y9-1.webp b/public/api/i/2025/09/18/8d4y9-1.webp new file mode 100644 index 0000000..b9c700d Binary files /dev/null and b/public/api/i/2025/09/18/8d4y9-1.webp differ diff --git a/public/api/i/2025/09/18/8or7m-1.webp b/public/api/i/2025/09/18/8or7m-1.webp new file mode 100644 index 0000000..43d3edb Binary files /dev/null and b/public/api/i/2025/09/18/8or7m-1.webp differ diff --git a/src/content/posts/中间件/Redis/如何解决Redis中热点key的问题.md b/src/content/posts/中间件/Redis/如何解决Redis中热点key的问题.md new file mode 100644 index 0000000..3400ddc --- /dev/null +++ b/src/content/posts/中间件/Redis/如何解决Redis中热点key的问题.md @@ -0,0 +1,23 @@ +--- +title: 如何解决Redis中热点key的问题 +published: 2025-09-17 +description: '' +image: '' +tags: [热点key,Redis] +category: '中间件 > Redis' +draft: false +lang: '' +--- + + +# 如何解决Redis中热点key的问题 +Redis中的热点Key问题指的是某些Key被频繁访问,导致Redis的压力过大,进而影响整体性能甚至导致集群节点故障。 +解决热点Key问题的主要方法包括: +- 热点Key拆分: 把热点数据分散到多个Key中,例如通过引入随机前缀,使得不同的用户请求能分散到多个Key,多个key分布在多实例中,避免几种访问单一key +- 多级缓存: 在Redis前增加其他缓存层(比如CDN,本地缓存),来分担Redis的访问压力 +- 读写分离: 通过Redis主从复制,把读请求分发到多个从节点,减轻单节点压力 +- 限流和降级: 在热点Key访问过高的时候,应用限流策略,减少对Redis的请求,或者在必要的时候返回降级的数据或空值。 + +![](https://blog.meowrain.cn/api/i/2025/09/18/8d4y9-1.webp) + +![](https://blog.meowrain.cn/api/i/2025/09/18/8or7m-1.webp) \ No newline at end of file