Postgres CLI இல் CTRL-C வினவல்களை ரத்து செய்யும் விதம் நம்பமுடியாத அளவிற்கு ஹேக்-ஒய் | Mewayz Blog Skip to main content
Hacker News

Postgres CLI இல் CTRL-C வினவல்களை ரத்து செய்யும் விதம் நம்பமுடியாத அளவிற்கு ஹேக்-ஒய்

கருத்துகள்

1 min read Via neon.com

Mewayz Team

Editorial Team

Hacker News
<உடல்>

தி லிங்கரிங் கோஸ்ட் ஆஃப் சைன்ட்: போஸ்ட்கிரெஸ் சிஎல்ஐ வினவல் ரத்து ஏன் ஹேக் போல் உணர்கிறது

டெவலப்பர்கள் மற்றும் தரவுத்தள நிர்வாகிகளுக்கு, PostgreSQL கட்டளை வரி இடைமுகம் (psql) நம்பகமான தினசரி இயக்கி. இது சக்தி வாய்ந்தது, துல்லியமானது மற்றும் எங்கும் நிறைந்தது. ஆயினும்கூட, அதன் மிக அடிப்படையான தொடர்புகளில் ஒன்று—உலகளாவிய CTRL-C குறுக்குவழியுடன் ரன்அவே வினவலை ரத்துசெய்தல்—ஆர்வத்துடன் இடமில்லாமல் இருக்கிறது. கட்டளை தற்போதைய செயல்பாட்டை நிறுத்தும் பல நவீன பயன்பாடுகளைப் போலல்லாமல், psql இல், CTRL-C உண்மையில் சர்வரில் உள்ள வினவலை ரத்து செய்யாது. அதற்குப் பதிலாக, இது முடிவுக்கான வாடிக்கையாளரின் காத்திருப்புயை ரத்துசெய்கிறது. இந்த நடத்தை ஒரு பிழை அல்ல; இது ஒரு வடிவமைப்பு கலைப்பொருளாகும், இது எங்கள் கருவிகளின் அடுக்கு, சில நேரங்களில் உடையக்கூடிய, கட்டிடக்கலையை வெளிப்படுத்துகிறது. Mewayz போன்ற மட்டு அமைப்புகளில் உருவாக்கப்படும் வணிகங்களுக்கு, இந்த அடிப்படை உண்மைகளைப் புரிந்துகொள்வது, வலுவான, பயனரை மையமாகக் கொண்ட செயல்பாட்டு அடுக்குகளை வடிவமைப்பதில் முக்கியமாகும்.

இரண்டு செயல்முறைகளின் கதை: கிளையண்ட் எதிராக சர்வர்

"ஹேக்-ஒய்" உணர்வின் மையமானது psql இன் கட்டமைப்பிலிருந்து உருவானது. நீங்கள் psql இல் ஒரு வினவலை இயக்கும்போது, ​​இரண்டு சுயாதீன செயல்முறைகள் செயல்படுகின்றன: உங்கள் உள்ளூர் கணினியில் psql கிளையன்ட் செயல்முறை மற்றும் தரவுத்தள ஹோஸ்டில் உள்ள போஸ்ட்கிரெஸ் சேவையக செயல்முறை. CTRL-C ஐ அழுத்தினால், குறிப்பாக psql கிளையன்ட் செயல்முறைக்கு ஒரு SIGINT (குறுக்கீடு சமிக்ஞை) அனுப்பப்படுகிறது. வாடிக்கையாளரின் உடனடி வேலை, காத்திருப்பதை நிறுத்திவிட்டு, அது செய்யும் ப்ராம்ட்க்குத் திரும்புவதாகும். இருப்பினும், இந்த கிளையன்ட் சைட் சிக்னலைப் பற்றிய உள்ளார்ந்த அறிவு சேவையகத்திற்கு இல்லை. அதன் கண்ணோட்டத்தில், வினவல் இன்னும் செல்லுபடியாகும், இயங்கும் செயல்பாடாகும். ரத்துசெய்தல் கோரிக்கையானது ஒரு தனி, புதிய அறிவுறுத்தலாகத் தெரிவிக்கப்பட வேண்டும்.

"psql இல் உள்ள CTRL-C என்பது 'நிறுத்து' பொத்தானை விட குறைவாக உள்ளது மற்றும் 'தயவுசெய்து எனது முந்தைய கோரிக்கையை புறக்கணிக்கவும்' அதிகமாக உள்ளது என்பதை கவனத்தில் கொள்ளவும்.

ரத்துசெய்யும் நெறிமுறை: இரண்டாம் நிலை கோரிக்கை

அப்படியானால், வினவல் உண்மையில் எப்படி ரத்து செய்யப்படுகிறது? SIGINT ஐக் கையாண்ட பிறகு, நன்கு செயல்படும் psql கிளையன்ட் PostgreSQL இன் அதிகாரப்பூர்வ ரத்து நெறிமுறையைத் துவக்குகிறது. இது சேவையகத்திற்கு ஒரு புத்தம் புதிய இணைப்பைத் திறப்பது மற்றும் உங்கள் வினவலில் இயங்கும் குறிப்பிட்ட பின்தளச் செயல்முறையை அடையாளம் காணும் ஒரு ரகசிய விசையைக் கொண்ட சிறப்பு "ரத்து கோரிக்கை" செய்தியை அனுப்புவது ஆகியவை அடங்கும். இந்த கோரிக்கை குறைந்த முன்னுரிமையுடன் செயலாக்கப்பட்டது, மேலும் உடனடி வெற்றிக்கு உத்தரவாதம் இல்லை. இந்த பல-படி, தீ மற்றும் மறத்தல் செயல்முறை தான் நடத்தை மறைமுகமாக உணர்கிறது. இது நேரடி குறுக்கீடு அல்ல; இது ஒரு கண்ணியமான, ஒத்திசைவற்ற வேண்டுகோள்.

பயனர் அனுபவ இடைவெளி மற்றும் விளிம்பு வழக்குகள்

இந்த வடிவமைப்பு பயனர்களுக்கு பல உறுதியான உராய்வு புள்ளிகளுக்கு வழிவகுக்கிறது:

  • செயல்படாத தன்மை: நீங்கள் CTRL-C ஐ அழுத்தினால், உடனடியாக உங்கள் ப்ராம்ட்டை திரும்பப் பெறுங்கள், ஆனால் சர்வர் இன்னும் வேலை செய்வதால் கணினி சுமை அதிகமாக உள்ளது.
  • நிச்சயமற்ற விளைவு: ரத்துசெய்தல் கோரிக்கை சர்வரால் பெறப்பட்டதா அல்லது மதிக்கப்பட்டதா என்பதை உடனடி உறுதிப்படுத்தல் எதுவும் உங்களிடம் இல்லை.
  • இணைப்பு-சார்ந்த தோல்வி: சேவையகம் ஃபயர்வால் செய்யப்பட்டாலோ அல்லது ரத்துசெய்யும் கோரிக்கைக்கான புதிய இணைப்பு தோல்வியுற்றாலோ, அசல் வினவல் வீரர்கள் காலவரையின்றி இயங்கும்.
  • உளவியல் பொருத்தமின்மை: உலகளாவிய "abort" கட்டளையானது ஒரு ஒத்திசைவான கருச்சிதைவைச் செய்யாது, இது கணினி சூழலில் பிற இடங்களில் உருவாக்கப்பட்ட பயனர் எதிர்பார்ப்புகளை உடைக்கிறது.

Mwayz உடன் விழிப்புணர்வு அடித்தளங்களை உருவாக்குதல்

நவீன வணிக இயக்க முறைமைகள் அவற்றின் கட்டுப்பாடுகளை மதிக்கும் போது இந்த அடிப்படை சிக்கல்களை சுருக்க வேண்டும். ஒரு மட்டு வணிக OS ஆக செயல்படும் Mewayz போன்ற இயங்குதளமானது, நிர்வகிக்கப்பட்ட சேவை தொகுதிகளுக்குள் தரவுத்தள தொடர்புகளை இணைக்கும். உதாரணமாக, ஒரு Mewayz தரவு வினவல் தொகுதி ஒரு மூல SQL ப்ராம்ட்டை மட்டும் வெளிப்படுத்தாது; இது பயனர் நட்புக் கட்டுப்பாடுகளுடன்-உண்மையான, சரிபார்க்கக்கூடிய "நிறுத்து" பொத்தான், வினவல் நேரமுடிவுகள் மற்றும் சர்வரில் உண்மையாக என்ன இயங்குகிறது என்பதைக் காட்டும் நிகழ்நேர நிலை டாஷ்போர்டுகள் ஆகியவற்றைக் கொண்டு அதை மூடும். இது நெறிமுறை வினோதங்களைக் கையாள்வதிலிருந்து தெளிவான, செயல்படக்கூடிய வணிகச் செயல்பாடுகளை நிர்வகிப்பதற்கான அனுபவத்தை நகர்த்துகிறது. psql இன் CTRL-C இன் பாடம் என்னவென்றால், சிறந்த கருவிகள் சக்தி வாய்ந்த திறன்களை மட்டும் வெளிப்படுத்தாது; அவை உள்ளுணர்வு மற்றும் நம்பகமான இடைமுகங்களை வடிவமைக்கின்றன, கட்டடக்கலை மரபுகளை தடையற்ற பணிப்பாய்வுகளாக மாற்றுகின்றன. ஹேக்கைப் புரிந்துகொள்வது, சிறந்த ஒன்றை உருவாக்குவதற்கான வாய்ப்பை வெளிப்படுத்துகிறது.

💡 DID YOU KNOW?

Mewayz replaces 8+ business tools in one platform

CRM · Invoicing · HR · Projects · Booking · eCommerce · POS · Analytics. Free forever plan available.

Start Free →

அடிக்கடி கேட்கப்படும் கேள்விகள்

தி லிங்கரிங் கோஸ்ட் ஆஃப் சைன்ட்: போஸ்ட்கிரெஸ் சிஎல்ஐ வினவல் ரத்து ஏன் ஹேக் போல் உணர்கிறது

டெவலப்பர்கள் மற்றும் தரவுத்தள நிர்வாகிகளுக்கு, PostgreSQL கட்டளை வரி இடைமுகம் (psql) நம்பகமான தினசரி இயக்கி. இது சக்தி வாய்ந்தது, துல்லியமானது மற்றும் எங்கும் நிறைந்தது. ஆயினும்கூட, அதன் மிக அடிப்படையான தொடர்புகளில் ஒன்று—உலகளாவிய CTRL-C குறுக்குவழியுடன் ரன்அவே வினவலை ரத்துசெய்தல்—ஆர்வத்துடன் இடமில்லாமல் இருக்கிறது. கட்டளை தற்போதைய செயல்பாட்டை நிறுத்தும் பல நவீன பயன்பாடுகளைப் போலல்லாமல், psql இல், CTRL-C உண்மையில் சர்வரில் உள்ள வினவலை ரத்து செய்யாது. அதற்கு பதிலாக, இது கிளையண்ட் முடிவுக்கான காத்திருப்பை ரத்து செய்கிறது, இது தரவுத்தள சேவையகத்தில் வினவலை விட்டுச்செல்லும். இந்த நடத்தை ஒரு பிழை அல்ல; இது ஒரு வடிவமைப்பு கலைப்பொருளாகும், இது எங்கள் கருவிகளின் அடுக்கு, சில நேரங்களில் உடையக்கூடிய, கட்டிடக்கலையை வெளிப்படுத்துகிறது. Mewayz போன்ற மட்டு அமைப்புகளில் உருவாக்கப்படும் வணிகங்களுக்கு, இந்த அடிப்படை உண்மைகளைப் புரிந்துகொள்வது, வலுவான, பயனர்களை மையமாகக் கொண்ட செயல்பாட்டு அடுக்குகளை வடிவமைப்பதில் முக்கியமாகும்.

இரண்டு செயல்முறைகளின் கதை: கிளையண்ட் எதிராக சர்வர்

"ஹேக்-ஒய்" உணர்வின் மையமானது psql இன் கட்டமைப்பிலிருந்து உருவானது. நீங்கள் psql இல் ஒரு வினவலை இயக்கும்போது, ​​இரண்டு சுயாதீன செயல்முறைகள் செயல்படுகின்றன: உங்கள் உள்ளூர் கணினியில் psql கிளையன்ட் செயல்முறை மற்றும் தரவுத்தள ஹோஸ்டில் உள்ள போஸ்ட்கிரெஸ் சேவையக செயல்முறை. CTRL-C ஐ அழுத்துவது குறிப்பாக psql கிளையன்ட் செயல்முறைக்கு ஒரு SIGINT (குறுக்கீடு சமிக்ஞை) அனுப்புகிறது. வாடிக்கையாளரின் உடனடி வேலை, காத்திருப்பதை நிறுத்திவிட்டு, அது செய்யும் ப்ராம்ட்க்குத் திரும்புவதாகும். இருப்பினும், இந்த கிளையன்ட் சைட் சிக்னலைப் பற்றிய உள்ளார்ந்த அறிவு சேவையகத்திற்கு இல்லை. அதன் கண்ணோட்டத்தில், வினவல் இன்னும் செல்லுபடியாகும், இயங்கும் செயல்பாடாகும். ரத்துசெய்தல் கோரிக்கையானது ஒரு தனி, புதிய அறிவுறுத்தலாகத் தெரிவிக்கப்பட வேண்டும்.

ரத்துசெய்யும் நெறிமுறை: இரண்டாம் நிலை கோரிக்கை

அப்படியானால், வினவல் உண்மையில் எப்படி ரத்து செய்யப்படுகிறது? SIGINT ஐக் கையாண்ட பிறகு, நன்கு செயல்படும் psql கிளையன்ட் PostgreSQL இன் அதிகாரப்பூர்வ ரத்து நெறிமுறையைத் துவக்குகிறது. இது சர்வரில் புத்தம் புதிய இணைப்பைத் திறந்து, உங்கள் வினவலை இயக்கும் குறிப்பிட்ட பின்தளச் செயல்முறையை அடையாளம் காணும் ரகசிய விசையைக் கொண்ட சிறப்பு "ரத்து கோரிக்கை" செய்தியை அனுப்புவதை உள்ளடக்குகிறது. இந்த கோரிக்கை குறைந்த முன்னுரிமையுடன் செயலாக்கப்பட்டது, மேலும் உடனடி வெற்றிக்கு உத்தரவாதம் இல்லை. இந்த பல-படி, தீ மற்றும் மறத்தல் செயல்முறை தான் நடத்தை மறைமுகமாக உணர்கிறது. இது நேரடி குறுக்கீடு அல்ல; இது ஒரு கண்ணியமான, ஒத்திசைவற்ற வேண்டுகோள்.

பயனர் அனுபவ இடைவெளி மற்றும் விளிம்பு வழக்குகள்

இந்த வடிவமைப்பு பயனர்களுக்கு பல உறுதியான உராய்வு புள்ளிகளுக்கு வழிவகுக்கிறது:

Mwayz உடன் விழிப்புணர்வு அடித்தளங்களை உருவாக்குதல்

நவீன வணிக இயக்க முறைமைகள் அவற்றின் கட்டுப்பாடுகளை மதிக்கும் போது இந்த அடிப்படை சிக்கல்களை சுருக்க வேண்டும். Mewayz போன்ற ஒரு தளம், ஒரு மட்டு வணிக OS ஆக செயல்படுகிறது, நிர்வகிக்கப்பட்ட சேவை தொகுதிகளுக்குள் தரவுத்தள தொடர்புகளை இணைக்கும். உதாரணமாக, ஒரு Mewayz தரவு வினவல் தொகுதி ஒரு மூல SQL ப்ராம்ட்டை மட்டும் வெளிப்படுத்தாது; இது பயனர் நட்புக் கட்டுப்பாடுகளுடன்-உண்மையான, சரிபார்க்கக்கூடிய "நிறுத்து" பொத்தான், வினவல் நேரமுடிவுகள் மற்றும் சர்வரில் உண்மையாக என்ன இயங்குகிறது என்பதைக் காட்டும் நிகழ்நேர நிலை டாஷ்போர்டுகள் ஆகியவற்றைக் கொண்டு அதை மூடும். இது நெறிமுறை வினோதங்களைக் கையாள்வதிலிருந்து தெளிவான, செயல்படக்கூடிய வணிகச் செயல்பாடுகளை நிர்வகிப்பதற்கான அனுபவத்தை நகர்த்துகிறது. psql இன் CTRL-C இன் பாடம் என்னவென்றால், சிறந்த கருவிகள் சக்தி வாய்ந்த திறன்களை மட்டும் வெளிப்படுத்தாது; அவை உள்ளுணர்வு மற்றும் நம்பகமான இடைமுகங்களை வடிவமைக்கின்றன, கட்டடக்கலை மரபுகளை தடையற்ற பணிப்பாய்வுகளாக மாற்றுகின்றன. ஹேக்கைப் புரிந்துகொள்வது, சிறந்த ஒன்றை உருவாக்குவதற்கான வாய்ப்பை வெளிப்படுத்துகிறது.

உங்கள் வணிகக் கருவிகள் அனைத்தும் ஒரே இடத்தில்

பல பயன்பாடுகளை ஏமாற்றுவதை நிறுத்துங்கள். Mewayz 208 கருவிகளை ஒரு மாதத்திற்கு $49க்கு ஒருங்கிணைக்கிறது - சரக்கு முதல் HR வரை, முன்பதிவு வரை பகுப்பாய்வு வரை. தொடங்குவதற்கு கிரெடிட் கார்டு தேவையில்லை.

இலவசம் →za> முயற்சிக்கவும்