இருபத்தைந்து நிமிடங்கள் பயனுள்ள தரவுத்தள வேலை கிட்டத்தட்ட எந்த வெளியீட்டையும் தருவதில்லை, மேலும் பாதையில் உள்ள ஒவ்வொரு சாதனத்திலிருந்தும் அந்த ஓட்டம் செயலற்றதாகத் தெரிகிறது. செயலற்ற நிலையே சேகரிக்கப்படுகிறது. பிந்தைய அறிக்கை எப்போதும் ஒரே வடிவம்: வினவல் இயங்கிக்கொண்டிருந்தது, பிறகு அமர்வு மறைந்தது, முடிவு ஒருபோதும் வரவில்லை.

நான்கு சோதனைகள் அமைதியான அமர்வு நீடிக்குமா என்பதைத் தீர்மானிக்கின்றன, அவை சாக்கெட்டிலிருந்து வெளியே செல்கின்றன. அவற்றை வரிசையாகச் செய்யுங்கள், ஏனெனில் ஒவ்வொன்றும் முந்தைய அடுக்கு தன் வேலையைச் செய்கிறது எனக் கருதுகிறது.

எந்த ஓட்டம் அமைதியாகிறது

முக்கியமான இணைப்பு தரவுத்தளப் போக்குவரத்தைச் சுமப்பது, அதன் சொந்த முகவரிகள் மற்றும் துறைகளால் அடையாளம் காணப்படுகிறது. வேறு எதுவும் அதைப் புதுப்பிக்கவில்லை. நுழைவாயிலுக்கு பிங், அதே ஹோஸ்டிலிருந்து இரண்டாவது SQL இணைப்பு மற்றும் சுரங்கப்பாதையின் சொந்த இதயத் துடிப்பு தனித்தனி ஓட்டங்கள், அவற்றைக் கண்காணிக்கும் ஒவ்வொரு சாதனத்திலும் தனித்தனி நிலை.

ss -tio dst 10.60.4.20
sysctl net.ipv4.tcp_keepalive_time net.ipv4.tcp_keepalive_intvl net.ipv4.tcp_keepalive_probes

சாக்கெட் பட்டியல் வாழும் இணைப்பின் நேரக்கணக்கிகள் மற்றும் வரிசை நிலையைக் காட்டுகிறது, இது அணுகல் சோதனையை விட அதிக தகவல் தருகிறது. sysctl மதிப்புகள் keepalive நடத்தைக்கான கர்னல் இயல்புநிலைகள், அடுத்த பகுதி அவை உங்கள் அமர்வுக்கு ஒருபோதும் பொருந்தாமல் போகலாம் என்பதை விளக்குகிறது. ஒருபோதும் தூண்டப்படாத இயல்புநிலையை எந்த இயல்புநிலையும் இல்லாததிலிருந்து வேறுபடுத்த முடியாது.

இணைப்பு பயன்படுத்தும் முகவரிகள், துறைகள் மற்றும் இடைமுகத்தை எழுதுங்கள். அமர்வு இறக்கும்போது, அது என்ன செய்தது என்று சரியான சாதனத்திடம் கேட்க இந்த விவரங்களே உதவுகின்றன, பிணையம் இயங்கியதா என்று கேட்பதற்குப் பதிலாக.

செயலற்ற கொள்கை காலாவதியாகிறதா அல்லது வரம்பிடுகிறதா

இரண்டு கொள்கைகள் ஒரே அறிகுறியை உருவாக்கி எதிர் பதில்களைக் கோருகின்றன. செயலற்ற காலவரம்பு தகுதியான போக்குவரத்து புதுப்பித்திருக்கக்கூடிய நிலையை நீக்குகிறது, keepalive அதைத் தடுக்கலாம். முழுமையான அமர்வு வரம்பு செயல்பாட்டைப் பொருட்படுத்தாமல் நிலையான காலத்திற்குப் பிறகு ஓட்டத்தை நீக்குகிறது, எந்த keepalive அதை மாற்றாது.

ஒவ்வொரு இடைநிலையின் உரிமையாளரிடம் இரண்டில் எதைச் செயல்படுத்துகிறார் எனக் கேளுங்கள். ஃபயர்வால், NAT சாதனம், சுமை சமநிலைப்படுத்தி மற்றும் மேக நுழைவாயில் அனைத்தும் நிலையை வைத்திருக்க முடியும், அவை ஒத்துப்போக வேண்டியதில்லை. மிகக் குறுகியது நீங்கள் வெல்ல வேண்டிய காலக்கெடுவை நிர்ணயிக்கிறது.

இந்த வேறுபாடு எப்போது சரிசெய்வதை நிறுத்த வேண்டும் என்பதையும் சொல்கிறது. கொள்கை முழுமையான வரம்பு என்றால், சரியான தீர்வு குறுகிய வேலை அலகு, மீண்டும் தொடங்கக்கூடிய வேலை அல்லது அங்கீகரிக்கப்பட்ட விதிவிலக்கு, கீழேயுள்ள சோதனை keepalive எதையும் மாற்றவில்லை என்பதை மட்டும் உறுதிப்படுத்தும்.

Linux இயல்புநிலைகளுக்குப் பின்னால் உள்ள சாக்கெட் சுவிட்ச்

keepalive ஒவ்வொரு சாக்கெட்டுக்கும் விருப்பத்தேர்வு. கர்னல் இயல்புநிலைகள் சாக்கெட் பொறிமுறையை இயக்கிய பிறகு ஆய்வுகள் எவ்வாறு நடந்துகொள்கின்றன என்பதை விவரிக்கின்றன, அவை ஏற்கனவே உள்ள இணைப்புகளுக்கு அதை இயக்குவதில்லை. ஒருபோதும் கேட்காத பயன்பாடு எந்த ஆய்வையும் பெறாது, sysctl மதிப்புகள் என்ன சொன்னாலும்.

எனவே எண்களை மட்டும் உயர்த்துவது தரவுத்தள வாடிக்கையாளருக்கு எதையும் மாற்றாது. வாடிக்கையாளர் நூலகம் அல்லது பயன்பாடு பொறிமுறையை இயக்க வேண்டும், ஸ்டாக் ஒவ்வொரு இணைப்புக்கும் கட்டுப்பாடுகளை வழங்கும் இடத்தில், தொடர்பில்லாத சேவைகளைப் பாதிக்கும் முழு ஹோஸ்ட் மாற்றத்தை விட வரம்பிடப்பட்ட அமைப்பு சிறந்தது.

முதல் ஆய்வுக்கான இடைவெளியும் வினவல் காலவரம்பு அல்ல. ஆரோக்கியமான இணைப்பு ஆய்வுகளுக்கு இடையே அமைதியாக இருக்கிறது, இறந்த துணை ஆய்வு இடைவெளி மற்றும் எண்ணிக்கையின்படி அறியப்படுகிறது. இந்த மூன்று மதிப்புகளையும் ஒரே காலவரம்பாகப் படிப்பது மிகவும் தாமதமாகவோ மிகவும் அவசரமாகவோ தோல்வியைக் கண்டறியும் அமைப்புகளுக்கு இட்டுச் செல்கிறது. அவை கண்டறிதலைக் கட்டுப்படுத்துகின்றன, பயன்பாட்டின் பொறுமையை அல்ல.

EXPIRE_TIME ஒரு தரவுத்தள அமைப்பு, பிணையத் திருத்தம் அல்ல

Oracle Net அதன் சொந்த உயிர்ப்புப் பொறிமுறையை வழங்குகிறது, இது செயல்முறைக்கான பயனுள்ள சுயவிவரத்தில் அமைக்கப்படுகிறது, தற்செயலாக ஒத்த பெயரைக் கொண்ட ஏதோ ஒரு கோப்பில் அல்ல. மதிப்பு நிமிடங்களில் வெளிப்படுத்தப்படுகிறது.

SQLNET.EXPIRE_TIME = 5

அதன் முதன்மை நோக்கம் சேவையகப் பக்கத்தில் இறந்த இணைப்புகளைக் கண்டறிவது, மேம்பட்ட மாதிரியை ஆதரிக்கும் தளங்களில் அந்த இணைப்புகளுக்கான TCP keepalive நடத்தையையும் சரிசெய்கிறது. இது பயனுள்ள பண்பு: தரவுத்தள அடுக்கு வாடிக்கையாளர் பயன்பாட்டை மாறச் சொல்லாமல் ஆய்வுகளை ஒழுங்கமைக்க முடியும்.

மேலே உள்ள எடுத்துக்காட்டு மதிப்பு கருதப்பட்ட காலக்கெடுவுக்கு எதிரான ஒருங்கிணைந்த தேர்வு, பரிந்துரை அல்ல. ஆவணப்படுத்தப்பட்ட பொதுவான வழிகாட்டுதல் நீண்ட இடைவெளி, சரியான எண் நிறுவப்பட்ட செயலாக்கம், ஏற்கப்படும் ஆய்வுச் செலவு மற்றும் பாதையில் உள்ள உண்மையான புதுப்பித்தல் விதிகளைப் பொறுத்தது. அமைப்பைத் தொடர்புடைய செயல்முறை படிக்கும் சுயவிவரத்தில் வைத்து, செயல்முறை அதை எடுத்துக்கொண்டதை உறுதிசெய்யுங்கள். Oracle சுயவிவர இருப்பிடங்களையும் கண்டறிதல் நடத்தையையும் தனது அளவுரு குறிப்பில் ஆவணப்படுத்துகிறது.

அமைதியான இடைவெளியைச் சோதித்து, பிறகு மீட்பைத் திட்டமிடுங்கள்

நீங்கள் வெல்ல முயலும் காலக்கெடுவை விட நீண்ட அமைதியான காலத்தின் வழியே புதிதாக அனுமதிக்கப்பட்ட இணைப்பைக் கடக்கவிடுங்கள், உயிர்ப்புப் போக்குவரத்தையும் பயன்பாட்டு முடிவையும் கவனியுங்கள். உங்களுக்குத் தேவையில்லாத பேலோடு உள்ளடக்கத்தைப் பிடிக்க வேண்டாம்; நேரக்கணக்கிகள் மற்றும் இணைப்பு நிலை கேள்விக்குப் பதிலளிக்கின்றன.

ss -tio dst 10.60.4.20
# after the quiet interval, same command
ls -l "$ORACLE_HOME/network/admin/sqlnet.ora"

அமர்வு இன்னும் மறைந்தால், காலக்கெடு நீங்கள் இன்னும் கேட்காத சாதனத்துக்குரியது, அல்லது கொள்கை முழுமையான வரம்பு. அது நீடித்தால், எந்த அடுக்கு மாறியது எனப் பதிவுசெய்யுங்கள், அடுத்த அமைதியான செயல்பாடு விசாரணையை மீண்டும் செய்யாதிருக்க.

இறுதியாக, இணைப்பு உண்மையில் வீழும்போது என்ன நடக்கிறது என்பதை முடிவுசெய்யுங்கள், ஏனெனில் உயிர்ப்புச் சோதனைகள் அதிர்வெண்ணைக் குறைக்கின்றன, சாத்தியத்தை ஒருபோதும் நீக்குவதில்லை. மீண்டும் அனுப்பும் முன் தரவுத்தளச் செயல்பாட்டின் பதிவுசெய்யப்பட்ட முடிவை உறுதிசெய்யுங்கள்: பதில் இழப்பது வேலை உறுதிசெய்யப்பட்டதா என்பதைப் பற்றி எதையும் நிரூபிக்கவில்லை. மடிக்கணினி மூடப்படுவதையோ சுரங்கப்பாதை மீண்டும் தொடங்குவதையோ தாண்டி நீடிக்க வேண்டிய எல்லாவற்றுக்கும், சேவையகத்துக்குச் சொந்தமான நீடித்த முடிவுடன் கூடிய வேலை வலுவான வடிவமைப்பு, keepalive ஒரு திட்டமிடி அல்ல.

தொடர்புடைய கட்டுரைகள்