ಕ್ರಾಲರ್‌ನಲ್ಲಿ ಸಾಕಷ್ಟು ಸಮಕಾಲೀನ ವಿನಂತಿಗಳನ್ನು ಸಂರಚಿಸಲಾಗಿದೆ. ಆದರೂ ಅದು ಪ್ರಾಕ್ಸಿ ಪೂಲ್‌ನಿಂದ ಇನ್ನೊಂದು ವಿಳಾಸವನ್ನು ಕೇಳಿದಾಗಲೆಲ್ಲಾ ನಿಲ್ಲುತ್ತದೆ. ಹೆಚ್ಚು ಪ್ರಾಕ್ಸಿಗಳನ್ನು ಸೇರಿಸುವುದು ಆ ನಿಲುಗಡೆಯನ್ನು ಮುಟ್ಟುವುದಿಲ್ಲ.

ಸಾಮಾನ್ಯ ಮಿಡಲ್‌ವೇರ್ ಮಾದರಿ requests.get(pool_url) ಅನ್ನು process_request() ಒಳಗೆ ಕರೆಯುತ್ತದೆ. ಇದು Scrapy ನ ಅಸಿಂಕ್ರೊನಸ್ ಎಂಜಿನ್‌ನೊಂದಿಗೆ ಸಹಕರಿಸಬೇಕಾದ ಮಾರ್ಗದಲ್ಲಿ ಸಿಂಕ್ರೊನಸ್ ನೆಟ್‌ವರ್ಕ್ ಕಾರ್ಯಾಚರಣೆಯಾಗಿದೆ. ಕರೆ ಕಾಯುತ್ತಿರುವಾಗ, ಅದು ಅದೇ ಇವೆಂಟ್-ಲೂಪ್ ಥ್ರೆಡ್‌ನಲ್ಲಿ ಸಂಬಂಧವಿಲ್ಲದ ಕೆಲಸವನ್ನು ತಡೆಹಿಡಿಯಬಹುದು.

ಕೆಲಸದಲ್ಲಿ ಎರಡು ವಿನಂತಿಗಳಿವೆ

ಒಂದು ವಿನಂತಿ ಪೂಲ್ ಸೇವೆಯಿಂದ ಎಂಡ್‌ಪಾಯಿಂಟ್ ಪಡೆಯುತ್ತದೆ. ಇನ್ನೊಂದು ಆ ಎಂಡ್‌ಪಾಯಿಂಟ್ ಬಳಸಿ ಗಮ್ಯಸ್ಥಾನವನ್ನು ಸಂಪರ್ಕಿಸುತ್ತದೆ. ಅವೆರಡನ್ನೂ ಪ್ರತ್ಯೇಕವಾಗಿ ಅಳೆಯಿರಿ ಮತ್ತು ವರದಿ ಮಾಡಿ. ನಿಧಾನವಾದ ಪೂಲ್ API ಅಪ್ಲಿಕೇಶನ್ ಸಂಪರ್ಕಗೊಳ್ಳುವ ಮೊದಲೇ ಪ್ರತಿ ಆಯ್ಕೆಯಾದ ಪ್ರಾಕ್ಸಿಯನ್ನು ನಿಧಾನವೆಂದು ತೋರಿಸಬಹುದು.

ಸ್ಥಾಪಿಸಿದ Scrapy ಆವೃತ್ತಿ ಬೆಂಬಲಿಸುವ ಅಸಿಂಕ್ರೊನಸ್ ಶೋಧನಾ ಸಂಯೋಜನೆಯನ್ನು ಬಳಸಿ, ಅಥವಾ ಪ್ರತಿ ವಿನಂತಿಯ ನಿರ್ಣಾಯಕ ಮಾರ್ಗದ ಹೊರಗೆ ಸೀಮಿತ ಸ್ಥಳೀಯ ಎಂಡ್‌ಪಾಯಿಂಟ್ ಗುಂಪನ್ನು ಪಡೆದು ರಿಫ್ರೆಶ್ ಮಾಡಿ. ಬ್ಲಾಕಿಂಗ್ ಕೆಲಸವನ್ನು ಸ್ಥಳಾಂತರಿಸಬೇಕಿದ್ದರೆ, ಆ ಕಾರ್ಯನಿರ್ವಾಹಕಕ್ಕೆ ಅದರದೇ ಮಿತಿಗಳು ಮತ್ತು ಟೈಮೌಟ್ ನಿರ್ವಹಣೆಯನ್ನು ನೀಡಿ; ಅಪರಿಮಿತ ಸರದಿ ಕೇವಲ ವಿಳಂಬದ ಸ್ಥಳವನ್ನು ಬದಲಿಸುತ್ತದೆ.

ಪ್ರತಿ ವಿನಂತಿಗೆ ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಇನ್ನೊಂದು ಶೋಧನಾ ಕರೆ ಮಾಡಬೇಡಿ. ಅಲ್ಪಕಾಲಿಕ ಕ್ಯಾಶ್ ಅಥವಾ ಗುತ್ತಿಗೆ ಪಡೆದ ಬ್ಯಾಚ್ ಪೂಲ್ ಸೇವೆಯ ಮೇಲಿನ ಅವಲಂಬನೆಯನ್ನು ಕಡಿಮೆ ಮಾಡಬಹುದು, ಅದರ ಜೀವಿತಾವಧಿ ಸೇವೆಯ ನಿಜವಾದ ಎಂಡ್‌ಪಾಯಿಂಟ್ ನೀತಿಗೆ ಹೊಂದಿಕೆಯಾದರೆ.

ವಿಫಲ ಲುಕಪ್ ಎಂದರೇನು ಎಂಬುದನ್ನು ವ್ಯಾಖ್ಯಾನಿಸಿ

ಖಾಲಿ ಅಥವಾ ವಿಫಲ ಪೂಲ್ ಪ್ರತಿಕ್ರಿಯೆ ಪ್ರಾಕ್ಸಿ ಮೆಟಾಡೇಟಾವನ್ನು ಸದ್ದಿಲ್ಲದೆ ತೆಗೆದು ನೇರ ವಿನಂತಿಗೆ ಅವಕಾಶ ನೀಡಬಾರದು. ಸ್ಪಷ್ಟ ಫಲಿತಾಂಶವನ್ನು ಆಯ್ಕೆಮಾಡಿ: ಕಾರ್ಯದ ಬಜೆಟ್ ಒಳಗೆ ಕಾಯುವುದು, ವಿಫಲವಾಗುವುದು, ಅಥವಾ ಅನುಮೋದಿತ ಕ್ಯಾಶ್ ಮಾಡಿದ ಎಂಡ್‌ಪಾಯಿಂಟ್ ಬಳಸುವುದು.

ಪೂಲ್ API ಯ ಸ್ವಂತ ಮಾರ್ಗವನ್ನೂ ಮುಕ್ತವಾಗಿರಿಸಿ. ಅದು ಆಂತರಿಕ ಸೇವೆಯಾಗಿದ್ದರೆ, ಅದರ ಖಾಸಗಿ ಹೋಸ್ಟ್‌ನೇಮ್ ಅನ್ನು ಅದನ್ನು ಆಯ್ಕೆ ಮಾಡಲು ಸಹಾಯ ಮಾಡುವ ಪ್ರಾಕ್ಸಿಯ ಮೂಲಕ ಕಳುಹಿಸುವುದು ಚಕ್ರೀಯ ಅವಲಂಬನೆಯನ್ನು ಸೃಷ್ಟಿಸಬಹುದು.

ಶೋಧನೆ ಸಂಬಂಧವಿಲ್ಲದ ಕೆಲಸವನ್ನು ನಿರ್ಬಂಧಿಸದೆ ಕೆಲಸ ಮಾಡಿದ ನಂತರ, ಸಾಮಾನ್ಯ ಪ್ರಾಕ್ಸಿ ವ್ಯವಹಾರವನ್ನು ಪರಿಶೀಲಿಸಿ. ಇವು ಪ್ರತ್ಯೇಕ ರಿಪೇರಿಗಳು, ಮತ್ತು ಅವುಗಳ ಸಮಯ ಲಾಗ್‌ನಲ್ಲಿ ಪ್ರತ್ಯೇಕ ಕ್ಷೇತ್ರಗಳಿಗೆ ಅರ್ಹವಾಗಿದೆ.

ಸಂಬಂಧಿತ ಲೇಖನಗಳು