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

Netty I/O ஒத்திசைவற்றது. writeAndFlush இலிருந்து திரும்புவது அந்தச் செயல்பாடு முடிந்துவிட்டது என்பதல்ல. எனவே வரிசையில் இன்னும் பைட்டுகள் உள்ள பதிலுக்கு இந்த வரிசை பாதுகாப்பானது அல்ல:

ctx.writeAndFlush(response);
ctx.close();

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

ctx.writeAndFlush(finalResponseMessage)
    .addListener(ChannelFutureListener.CLOSE);

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

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

பயனுள்ள ஒப்பீடு ஒவ்வொரு பாதையிலும் முழு பதில் நீளமும் எழுத்தின் முடிவும் ஆகும். ப்ராக்ஸி நேரத்தை போதுமான அளவு மாற்றி இருக்கும் வாழ்க்கைச் சுழற்சிப் பிழையை வெளிப்படுத்தலாம்; அதன் இருப்பு அதன் compressor அல்லது cache பைட்டுகளைத் தூக்கி எறிந்தது என்பதை நிரூபிக்கவில்லை.

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