Cache stampede
ಕ್ಯಾಶ್ ಸ್ಟ್ಯಾಂಪೆಡ್ ಎಂಬುದು ಕ್ಯಾಸ್ಕೇಡಿಂಗ್ ವೈಫಲ್ಯದ ಒಂದು ವಿಧವಾಗಿದ್ದು, ಕ್ಯಾಶಿಂಗ್ ಕಾರ್ಯವಿಧಾನಗಳೊಂದಿಗೆ ಬೃಹತ್ ಸಮಾನಾಂತರ ಕಂಪ್ಯೂಟಿಂಗ್ ವ್ಯವಸ್ಥೆಗಳು ಹೆಚ್ಚಿನ ಹೊರೆಗೆ ಒಳಗಾದಾಗ ಸಂಭವಿಸಬಹುದು. ಈ ನಡವಳಿಕೆಯನ್ನು ಕೆಲವೊಮ್ಮೆ ಡಾಗ್-ಪೈಲಿಂಗ್ ಎಂದೂ ಕರೆಯಲಾಗುತ್ತದೆ. ಕ್ಯಾಶ್ ಸ್ಟ್ಯಾಂಪ್ಡ್ಗಳು ಹೇಗೆ ಸಂಭವಿಸುತ್ತವೆ ಎಂಬುದನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳಲು, ಸಿಸ್ಟಮ್ ಲೋಡ್ ಅನ್ನು ಸುಲಭಗೊಳಿಸಲು, ಸ್ವಲ್ಪ ಸಮಯದವರೆಗೆ ಕ್ಯಾಶ್ ಮಾಡಿದ ಪುಟಗಳಿಗೆ ಮೆಮ್ಕ್ಯಾಚ್ಡ್ ಅನ್ನು ಬಳಸುವ ವೆಬ್ ಸರ್ವರ್ ಅನ್ನು ಪರಿಗಣಿಸಿ. ಒಂದೇ ಯು. ಆರ್. ಎಲ್. ಗೆ ನಿರ್ದಿಷ್ಟವಾಗಿ ಹೆಚ್ಚಿನ ಲೋಡ್ ಅಡಿಯಲ್ಲಿ, ಸಂಪನ್ಮೂಲವು ಕ್ಯಾಶ್ ಆಗಿರುವವರೆಗೆ ವ್ಯವಸ್ಥೆಯು ಸ್ಪಂದಿಸುತ್ತದೆ, ಕ್ಯಾಶ್ ಮಾಡಲಾದ ನಕಲನ್ನು ಪ್ರವೇಶಿಸುವ ಮೂಲಕ ವಿನಂತಿಗಳನ್ನು ನಿರ್ವಹಿಸಲಾಗುತ್ತದೆ. ಇದು ರೆಂಡರಿಂಗ್ ಕಾರ್ಯಾಚರಣೆಯ ವೆಚ್ಚವನ್ನು ಕಡಿಮೆ ಮಾಡುತ್ತದೆ. ಕಡಿಮೆ ಲೋಡ್ ಅಡಿಯಲ್ಲಿ, ಕ್ಯಾಶ್ ಮಿಸ್ಗಳು ರೆಂಡರಿಂಗ್ ಕಾರ್ಯಾಚರಣೆಯ ಒಂದೇ ಮರು ಲೆಕ್ಕಾಚಾರಕ್ಕೆ ಕಾರಣವಾಗುತ್ತವೆ. ಈ ವ್ಯವಸ್ಥೆಯು ಮೊದಲಿನಂತೆಯೇ ಮುಂದುವರಿಯುತ್ತದೆ, ಹೆಚ್ಚಿನ ಕ್ಯಾಶ್ ಹಿಟ್ ದರದ ಕಾರಣದಿಂದಾಗಿ ಸರಾಸರಿ ಲೋಡ್ ಅನ್ನು ತುಂಬಾ ಕಡಿಮೆ ಇಡಲಾಗುತ್ತದೆ. ಆದಾಗ್ಯೂ, ತುಂಬಾ ಭಾರದ ಅಡಿಯಲ್ಲಿ, ಆ ಪುಟದ ಕ್ಯಾಶ್ ಮಾಡಲಾದ ಆವೃತ್ತಿಯು ಅವಧಿ ಮುಗಿದಾಗ, ಸರ್ವರ್ ಫಾರ್ಮ್ನಲ್ಲಿ ಸಾಕಷ್ಟು ಏಕಕಾಲೀನತೆ ಇರಬಹುದು, ಆ ಕಾರ್ಯಗತಗೊಳಿಸುವಿಕೆಯ ಅನೇಕ ಎಳೆಗಳು ಆ ಪುಟದ ವಿಷಯವನ್ನು ಏಕಕಾಲದಲ್ಲಿ ನಿರೂಪಿಸಲು ಪ್ರಯತ್ನಿಸುತ್ತವೆ. ವ್ಯವಸ್ಥಿತವಾಗಿ, ಇತರರು ಒಂದೇ ಸಮಯದಲ್ಲಿ ಅದೇ ರೆಂಡರಿಂಗ್ ಮಾಡುತ್ತಿದ್ದಾರೆ ಎಂದು ಏಕಕಾಲೀನ ಸರ್ವರ್ಗಳಿಗೆ ತಿಳಿದಿಲ್ಲ. ಸಾಕಷ್ಟು ಹೆಚ್ಚಿನ ಹೊರೆ ಇದ್ದರೆ, ಹಂಚಿಕೆಯ ಸಂಪನ್ಮೂಲಗಳು ಖಾಲಿಯಾಗುವ ಮೂಲಕ ವ್ಯವಸ್ಥೆಯ ದಟ್ಟಣೆಯ ಕುಸಿತವನ್ನು ತರಲು ಇದು ಸಾಕಾಗಬಹುದು. ದಟ್ಟಣೆಯ ಕುಸಿತವು ಪುಟವನ್ನು ಸಂಪೂರ್ಣವಾಗಿ ಮರು-ರೆಂಡರ್ ಮಾಡುವುದನ್ನು ಮತ್ತು ಮರು-ಕ್ಯಾಶ್ ಮಾಡುವುದನ್ನು ತಡೆಯುತ್ತದೆ, ಏಕೆಂದರೆ ಹಾಗೆ ಮಾಡುವ ಪ್ರತಿಯೊಂದು ಪ್ರಯತ್ನವೂ ಸಮಯ ಮೀರಿದೆ. ಹೀಗಾಗಿ, ಕ್ಯಾಶ್ ಕಾಲ್ತುಳಿತವು ಕ್ಯಾಶ್ ಹಿಟ್ ದರವನ್ನು ಶೂನ್ಯಕ್ಕೆ ಇಳಿಸುತ್ತದೆ ಮತ್ತು ಲೋಡ್ ತುಂಬಾ ಭಾರವಾಗಿ ಉಳಿಯುವವರೆಗೆ ಸಂಪನ್ಮೂಲವನ್ನು ಪುನರುತ್ಪಾದಿಸಲು ಪ್ರಯತ್ನಿಸುವುದರಿಂದ ವ್ಯವಸ್ಥೆಯನ್ನು ನಿರಂತರವಾಗಿ ದಟ್ಟಣೆಯ ಕುಸಿತದಲ್ಲಿ ಇಡುತ್ತದೆ. ಒಂದು ದೃಢವಾದ ಉದಾಹರಣೆಯನ್ನು ನೀಡಲು, ಪರಿಗಣನೆಯಲ್ಲಿರುವ ಪುಟವು ಪ್ರಸ್ತುತಪಡಿಸಲು 3 ಸೆಕೆಂಡುಗಳನ್ನು ತೆಗೆದುಕೊಳ್ಳುತ್ತದೆ ಮತ್ತು ನಾವು ಪ್ರತಿ ಸೆಕೆಂಡಿಗೆ 10 ವಿನಂತಿಗಳ ದಟ್ಟಣೆಯನ್ನು ಹೊಂದಿದ್ದೇವೆ ಎಂದು ಭಾವಿಸಿ. ನಂತರ, ಕ್ಯಾಶ್ ಮಾಡಿದ ಪುಟದ ಅವಧಿ ಮುಗಿದ ನಂತರ, ನಾವು 30 ಪ್ರಕ್ರಿಯೆಗಳನ್ನು ಹೊಂದಿದ್ದೇವೆ, ಏಕಕಾಲದಲ್ಲಿ ಪುಟದ ರೆಂಡರಿಂಗ್ ಅನ್ನು ಮರು ಲೆಕ್ಕಾಚಾರ ಮಾಡುತ್ತೇವೆ ಮತ್ತು ಪ್ರಸ್ತುತಪಡಿಸಿದ ಪುಟದೊಂದಿಗೆ ಕ್ಯಾಶ್ ಅನ್ನು ನವೀಕರಿಸುತ್ತೇವೆ. ವಿಶಿಷ್ಟವಾದ ಕ್ಯಾಶ್ ಬಳಕೆಯು ಕೆಳಗಿನಂತೆ ಒಂದು ವಸ್ತುವಿನ ವಿಶಿಷ್ಟ ಕ್ಯಾಶ್ ಬಳಕೆಯ ಮಾದರಿಯಾಗಿದ್ದು, ಅದನ್ನು ಪ್ರತಿ ಏಕಮಾನದ ಸಮಯದಲ್ಲೂ ನವೀಕರಿಸಬೇಕಾಗುತ್ತದೆಃ ಕಾರ್ಯ fetch (ಕೀ, ಟಿಟಿಎಲ್) {ವ್ಯಾಲ್ಯೂ-ಕ್ಯಾಶ್ _ ರೀಡ್ (ಕೀ) ಇಫ್ (! ವ್ಯಾಲ್ಯೂ) {ವ್ಯಾಲ್ಯೂ-ರೀಕಂಪ್ಯೂಟ್ _ ವ್ಯಾಲ್ಯೂ () ಕ್ಯಾಶ್ _ ರೈಟ್ (ಕೀ, ವ್ಯಾಲ್ಯೂ, ಟಿಟಿಎಲ್)} ರಿಟರ್ನ್ ವ್ಯಾಲ್ಯೂ} ಕಾರ್ಯವು ಬಹಳ ಸಮಯ ತೆಗೆದುಕೊಂಡರೆ ಮತ್ತು ಕೀಯನ್ನು ಆಗಾಗ್ಗೆ ಪ್ರವೇಶಿಸಿದರೆ, ಅನೇಕ ಪ್ರಕ್ರಿಯೆಗಳು ಏಕಕಾಲದಲ್ಲಿ ಕ್ಯಾಶ್ ಮೌಲ್ಯದ ಮುಕ್ತಾಯದ ಮೇಲೆ ಕರೆ ಮಾಡುತ್ತವೆ. ವಿಶಿಷ್ಟವಾದ ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್ಗಳಲ್ಲಿ, ಕಾರ್ಯವು ಡೇಟಾಬೇಸ್ ಅನ್ನು ಪ್ರಶ್ನಿಸಬಹುದು, ಇತರ ಸೇವೆಗಳನ್ನು ಪ್ರವೇಶಿಸಬಹುದು ಅಥವಾ ಕೆಲವು ಸಂಕೀರ್ಣ ಕಾರ್ಯಾಚರಣೆಯನ್ನು ಮಾಡಬಹುದು (ಅದಕ್ಕಾಗಿಯೇ ಈ ನಿರ್ದಿಷ್ಟ ಗಣನೆಯನ್ನು ಮೊದಲ ಸ್ಥಾನದಲ್ಲಿ ಕ್ಯಾಶ್ ಮಾಡಲಾಗುತ್ತಿದೆ). ವಿನಂತಿಯ ದರವು ಹೆಚ್ಚಾದಾಗ, ದತ್ತಸಂಚಯವು (ಅಥವಾ ಯಾವುದೇ ಇತರ ಹಂಚಿಕೆಯ ಸಂಪನ್ಮೂಲ) ಮಿತಿಮೀರಿದ ವಿನಂತಿಗಳು/ಪ್ರಶ್ನೆಗಳಿಂದ ಬಳಲುತ್ತದೆ, ಇದು ವ್ಯವಸ್ಥೆಯ ಕುಸಿತಕ್ಕೆ ಕಾರಣವಾಗಬಹುದು. ಕ್ಯಾಶ್ ಕಾಲ್ತುಳಿತವನ್ನು ತಗ್ಗಿಸಲು ಕ್ಯಾಶ್ ಕಾಲ್ತುಳಿತಗಳನ್ನು ತಗ್ಗಿಸಲು ಹಲವಾರು ವಿಧಾನಗಳನ್ನು ಪ್ರಸ್ತಾಪಿಸಲಾಗಿದೆ (ಇದನ್ನು ಡಾಗ್ಪೈಲ್ ತಡೆಗಟ್ಟುವಿಕೆ ಎಂದೂ ಕರೆಯಲಾಗುತ್ತದೆ). ಅವುಗಳನ್ನು ಸ್ಥೂಲವಾಗಿ 3 ಪ್ರಮುಖ ವರ್ಗಗಳಾಗಿ ವಿಂಗಡಿಸಬಹುದು. ಒಂದೇ ಮೌಲ್ಯದ ಏಕಕಾಲದಲ್ಲಿ ಅನೇಕ ಮರುಮೌಲ್ಯಮಾಪನಗಳನ್ನು ತಡೆಗಟ್ಟಲು, ಕ್ಯಾಶ್ ತಪ್ಪಿಹೋದಾಗ ಒಂದು ಪ್ರಕ್ರಿಯೆಯು ಆ ಕ್ಯಾಶ್ ಕೀಲಿಯ ಲಾಕ್ ಅನ್ನು ಪಡೆಯಲು ಪ್ರಯತ್ನಿಸುತ್ತದೆ ಮತ್ತು ಅದನ್ನು ಪಡೆದುಕೊಂಡರೆ ಮಾತ್ರ ಅದನ್ನು ಮರುಮೌಲ್ಯಮಾಪನ ಮಾಡುತ್ತದೆ. ಲಾಕ್ ಅನ್ನು ಪಡೆಯದಿದ್ದಾಗ ಪ್ರಕರಣಕ್ಕಾಗಿ ವಿವಿಧ ಅನುಷ್ಠಾನ ಆಯ್ಕೆಗಳಿವೆಃ ಮೌಲ್ಯವನ್ನು ಮರು ಲೆಕ್ಕಾಚಾರ ಮಾಡುವವರೆಗೆ ಕಾಯಿರಿ "ಕಂಡುಬಂದಿಲ್ಲ" ಎಂದು ಹಿಂತಿರುಗಿ ಮತ್ತು ಕ್ಲೈಂಟ್ ಮೌಲ್ಯದ ಅನುಪಸ್ಥಿತಿಯನ್ನು ಸರಿಯಾಗಿ ನಿಭಾಯಿಸುವಂತೆ ಮಾಡಿ ಹೊಸ ಮೌಲ್ಯವನ್ನು ಮರು ಲೆಕ್ಕಾಚಾರ ಮಾಡುವಾಗ ಬಳಸಬಹುದಾದ ಕ್ಯಾಶೆಯಲ್ಲಿ ಹಳೆಯ ವಸ್ತುವನ್ನು ಇರಿಸಿ ಸರಿಯಾಗಿ ಕಾರ್ಯಗತಗೊಳಿಸಿದರೆ, ಲಾಕಿಂಗ್ ಸ್ಟ್ಯಾಂಪ್ಗಳನ್ನು ಸಂಪೂರ್ಣವಾಗಿ ತಡೆಯಬಹುದು, ಆದರೆ ಲಾಕಿಂಗ್ ಕಾರ್ಯವಿಧಾನಕ್ಕೆ ಹೆಚ್ಚುವರಿ ಬರವಣಿಗೆ ಅಗತ್ಯವಿರುತ್ತದೆ. ಬರವಣಿಗೆಗಳ ಸಂಖ್ಯೆಯನ್ನು ದ್ವಿಗುಣಗೊಳಿಸುವುದರ ಜೊತೆಗೆ, ಮುಖ್ಯ ನ್ಯೂನತೆಯೆಂದರೆ ಲಾಕಿಂಗ್ ಕಾರ್ಯವಿಧಾನದ ಸರಿಯಾದ ಅನುಷ್ಠಾನವಾಗಿದ್ದು, ಇದು ಲಾಕ್ ಅನ್ನು ಪಡೆಯುವ ಪ್ರಕ್ರಿಯೆಯ ವೈಫಲ್ಯ, ಲಾಕ್ಗಾಗಿ ಟೈಮ್-ಟು-ಲೈವ್ ಟ್ಯೂನಿಂಗ್, ರೇಸ್-ಷರತ್ತುಗಳು ಮತ್ತು ಮುಂತಾದವುಗಳನ್ನು ಒಳಗೊಂಡಂತೆ ಎಡ್ಜ್ ಪ್ರಕರಣಗಳನ್ನು ಸಹ ನೋಡಿಕೊಳ್ಳುತ್ತದೆ. ಬಾಹ್ಯ ಮರುಮೌಲ್ಯಮಾಪನ ಈ ಪರಿಹಾರವು ಕ್ಯಾಶ್ ಮೌಲ್ಯದ ಮರುಮೌಲ್ಯಮಾಪನವನ್ನು ಅದರ ಅಗತ್ಯವಿರುವ ಪ್ರಕ್ರಿಯೆಗಳಿಂದ ಬಾಹ್ಯ ಪ್ರಕ್ರಿಯೆಗೆ ಚಲಿಸುತ್ತದೆ. ಬಾಹ್ಯ ಪ್ರಕ್ರಿಯೆಯ ಮರುಮೌಲ್ಯಮಾಪನವನ್ನು ವಿವಿಧ ರೀತಿಯಲ್ಲಿ ಪ್ರಚೋದಿಸಬಹುದುಃ ಕ್ಯಾಶ್ ಮೌಲ್ಯವು ಅದರ ಮುಕ್ತಾಯವನ್ನು ನಿಯತಕಾಲಿಕವಾಗಿ ಸಮೀಪಿಸಿದಾಗ ಮೌಲ್ಯದ ಅಗತ್ಯವಿರುವ ಪ್ರಕ್ರಿಯೆಯು ಕ್ಯಾಶ್ ಮಿಸ್ ಅನ್ನು ಎದುರಿಸಿದಾಗ ಈ ವಿಧಾನಕ್ಕೆ ಇನ್ನೂ ಒಂದು ಚಲಿಸುವ ಭಾಗ-ಬಾಹ್ಯ ಪ್ರಕ್ರಿಯೆಯ ಅಗತ್ಯವಿರುತ್ತದೆ-ಅದನ್ನು ನಿರ್ವಹಿಸುವ ಮತ್ತು ಮೇಲ್ವಿಚಾರಣೆ ಮಾಡುವ ಅಗತ್ಯವಿದೆ. ಇದಲ್ಲದೆ, ಈ ಪರಿಹಾರಕ್ಕೆ ಅಸ್ವಾಭಾವಿಕ ಕೋಡ್ ಬೇರ್ಪಡಿಸುವಿಕೆ/ನಕಲು ಅಗತ್ಯವಿರುತ್ತದೆ ಮತ್ತು ಇದು ಹೆಚ್ಚಾಗಿ ಸ್ಥಿರ ಕ್ಯಾಶ್ ಕೀಲಿಗಳಿಗೆ ಸೂಕ್ತವಾಗಿರುತ್ತದೆ (ಅಂದರೆ, ಐ. ಡಿ. ಯಿಂದ ಸೂಚ್ಯಂಕಗೊಳಿಸಲಾದ ಕೀಲಿಗಳಂತೆ ಕ್ರಿಯಾತ್ಮಕವಾಗಿ ಉತ್ಪತ್ತಿಯಾಗುವುದಿಲ್ಲ). ಸಂಭಾವ್ಯ ಆರಂಭಿಕ ಮುಕ್ತಾಯ ಈ ವಿಧಾನದೊಂದಿಗೆ, ಪ್ರತಿ ಪ್ರಕ್ರಿಯೆಯು ಸ್ವತಂತ್ರ ಸಂಭವನೀಯ ನಿರ್ಧಾರವನ್ನು ತೆಗೆದುಕೊಳ್ಳುವ ಮೂಲಕ ಅದರ ಮುಕ್ತಾಯಕ್ಕೆ ಮುಂಚಿತವಾಗಿ ಕ್ಯಾಶ್ ಮೌಲ್ಯವನ್ನು ಮರು ಲೆಕ್ಕಾಚಾರ ಮಾಡಬಹುದು, ಅಲ್ಲಿ ನಾವು ಮೌಲ್ಯದ ಮುಕ್ತಾಯಕ್ಕೆ ಹತ್ತಿರವಾಗುತ್ತಿದ್ದಂತೆ ಆರಂಭಿಕ ಮರು ಲೆಕ್ಕಾಚಾರವನ್ನು ಮಾಡುವ ಸಂಭವನೀಯತೆಯು ಹೆಚ್ಚಾಗುತ್ತದೆ. ಪ್ರತಿ ಪ್ರಕ್ರಿಯೆಯಿಂದ ಸಂಭವನೀಯ ನಿರ್ಧಾರವನ್ನು ಸ್ವತಂತ್ರವಾಗಿ ತೆಗೆದುಕೊಳ್ಳುವುದರಿಂದ, ಅದೇ ಸಮಯದಲ್ಲಿ ಕಡಿಮೆ ಪ್ರಕ್ರಿಯೆಗಳು ಮುಕ್ತಾಯಗೊಳ್ಳುವುದರಿಂದ ಕಾಲ್ತುಳಿತದ ಪರಿಣಾಮವನ್ನು ಕಡಿಮೆ ಮಾಡಲಾಗುತ್ತದೆ. ಸ್ಟ್ಯಾಂಪ್ಗಳನ್ನು ತಡೆಗಟ್ಟುವಲ್ಲಿ ಅದರ ಪರಿಣಾಮಕಾರಿತ್ವ ಮತ್ತು ಆರಂಭಿಕ ಮರು ಲೆಕ್ಕಾಚಾರಗಳು ಹೇಗೆ ಸಂಭವಿಸಬಹುದು ಎಂಬುದರ ದೃಷ್ಟಿಯಿಂದ ಘಾತೀಯ ವಿತರಣೆಯ ಆಧಾರದ ಮೇಲೆ ಈ ಕೆಳಗಿನ ಅನುಷ್ಠಾನವು ಅತ್ಯುತ್ತಮವಾಗಿದೆ ಎಂದು ತೋರಿಸಲಾಗಿದೆ. ಫಂಕ್ಷನ್ x-fetch (ಕೀ, ಟಿಟಿಎಲ್, ಬೀಟಾ = 1) {ವ್ಯಾಲ್ಯೂ, ಡೆಲ್ಟಾ, ಎಕ್ಸ್ಪೈರಿ-ಕ್ಯಾಶ್ _ ರೀಡ್ (ಕೀ) ಇಫ್ (! ವ್ಯಾಲ್ಯೂ | | (ಟೈಮ್ ()-ಡೆಲ್ಟಾ * ಬೀಟಾ * ಲಾಗ್ (ರಾಂಡ್ (0,1))) ± ಎಕ್ಸಪೈರಿ) {ಸ್ಟಾರ್ಟ್-ಟೈಮ್ () ವ್ಯಾಲ್ಯೂ-ರೀಕಂಪ್ಯೂಟ್ _ ವ್ಯಾಲ್ಯೂ () ಡೆಲ್ಟಾ-ಟೈಮ್ ()-ಸ್ಟಾರ್ಟ್ ಕ್ಯಾಶ್ _ ರೈಟ್ (ಕೀ, (ವ್ಯಾಲ್ಯೂ, ಡೆಲ್ಟಾ), ಟಿಟಿಎಲ್)} ರಿಟರ್ನ್ ವ್ಯಾಲ್ಯೂ} ಹಿಂದಿನ ರಿಕಂಪ್ಯುಟೇಷನ್ಗಳನ್ನು ಬೆಂಬಲಿಸಲು ಮತ್ತು ಸ್ಟ್ಯಾಂಪ್ಗಳನ್ನು ಮತ್ತಷ್ಟು ಕಡಿಮೆ ಮಾಡಲು ನಿಯತಾಂಕವನ್ನು 1 ಕ್ಕಿಂತ ಹೆಚ್ಚಿನ ಮೌಲ್ಯಕ್ಕೆ ಹೊಂದಿಸಬಹುದು ಆದರೆ ಲೇಖಕರು ಸೆಟ್ಟಿಂಗ್ = 1 ಆಚರಣೆಯಲ್ಲಿ ಉತ್ತಮವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ ಎಂದು ತೋರಿಸುತ್ತಾರೆ. ವೇರಿಯೇಬಲ್ ಮೌಲ್ಯವನ್ನು ಮರು ಲೆಕ್ಕಾಚಾರ ಮಾಡುವ ಸಮಯವನ್ನು ಪ್ರತಿನಿಧಿಸುತ್ತದೆ ಮತ್ತು ಸಂಭವನೀಯತೆಯ ವಿತರಣೆಯನ್ನು ಸೂಕ್ತವಾಗಿ ಅಳೆಯಲು ಬಳಸಲಾಗುತ್ತದೆ. ಈ ವಿಧಾನವನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸಲು ಸರಳವಾಗಿದೆ ಮತ್ತು ಸಂಚಾರ ದರ ಹೆಚ್ಚಾದಾಗ ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಆರಂಭಿಕ ಮರುಮೌಲ್ಯಮಾಪನಗಳನ್ನು ಬೆಂಬಲಿಸುವ ಮೂಲಕ ಕ್ಯಾಶ್ ಸ್ಟ್ಯಾಂಪ್ಗಳನ್ನು ಪರಿಣಾಮಕಾರಿಯಾಗಿ ಕಡಿಮೆ ಮಾಡುತ್ತದೆ. ಒಂದು ನ್ಯೂನತೆಯೆಂದರೆ, ಇದು ಕ್ಯಾಶೆಯಲ್ಲಿ ಹೆಚ್ಚಿನ ಮೆಮೊರಿಯನ್ನು ತೆಗೆದುಕೊಳ್ಳುತ್ತದೆ, ಏಕೆಂದರೆ ನಾವು ಕ್ಯಾಶ್ ಐಟಂನೊಂದಿಗೆ ಮೌಲ್ಯದ ಡೆಲ್ಟಾವನ್ನು ಜೋಡಿಸಬೇಕಾಗಿದೆ-ಕ್ಯಾಶಿಂಗ್ ವ್ಯವಸ್ಥೆಯು ಪ್ರಮುಖ ಮುಕ್ತಾಯ ಸಮಯದ ಮರುಪಡೆಯುವಿಕೆಯನ್ನು ಬೆಂಬಲಿಸದಿದ್ದಾಗ, ನಾವು ಬಂಡಲ್ನಲ್ಲಿ (ಅಂದರೆ,) ಸಂಗ್ರಹಿಸಬೇಕಾಗುತ್ತದೆ. ಉಲ್ಲೇಖಗಳು ಬಾಹ್ಯ ಕೊಂಡಿಗಳು ಕ್ಯಾಶ್ ಸ್ಟ್ಯಾಂಪ್ಡ್ಗಳನ್ನು ಕಡಿಮೆ ಮಾಡುವುದು, ಜೋಶುವಾ ಥಿಜ್ಸೆನ್, 2010 ವಿಶಿಷ್ಟ ಪರ್ಲ್ ಕ್ಯಾಶ್ ಬಳಕೆಗೆ ಸಮಸ್ಯೆಗಳು ಮತ್ತು ಪರಿಹಾರಗಳು, ಜೊನಾಥನ್ ಸ್ವಾರ್ಟ್ಜ್, 2008 ಎಂಜಿನಿಯರಿಂಗ್ ವೈಫಲ್ಯಗಳು ಸಮಾನಾಂತರ ಕಂಪ್ಯೂಟಿಂಗ್ ಕಂಪ್ಯೂಟರ್ ಆಪ್ಟಿಮೈಸೇಶನ್ ಕ್ಯಾಶ್ (ಕಂಪ್ಯೂಟಿಂಗ್)