আমার কাছে একটি এএসপি.এনইটি ৪.০ অ্যাপ্লিকেশন রয়েছে যা আইআইএস .5.৫ এর উপরে একটি 64৪-বিট উইন্ডোজ সার্ভার ২০০৮ আর 2 এন্টারপ্রাইজ মেশিনে র্যাম, সিপিইউ, ডিস্ক ইত্যাদি রয়েছে with
প্রতিটি ওয়েব অনুরোধের সাথে, এএসপি.এনইটি অ্যাপ্লিকেশনটি ব্যাকএন্ড ওয়েব পরিষেবাদিতে (কাঁচা সকেটের মাধ্যমে) একটি সংযোগ তৈরি করে, যা একই মেশিনে চলছে।
সমস্যা: ব্যাকএন্ড ওয়েব পরিষেবাদিতে একযোগে সংযোগগুলির # টি সীমাবদ্ধ করে এমন কিছু উপস্থিত রয়েছে বলে মনে হচ্ছে। সন্দেহজনকভাবে, সমবর্তী সংযোগগুলির সংখ্যা 16 এ শীর্ষে রয়েছে।
আমি মাইক্রোসফ্টের এই মূল নিবন্ধটি পেয়েছি যা ব্যাখ্যা করে যে আইএসআইএসের সেটিংস কীভাবে অ্যাএসপি.নেট অ্যাপ্লিকেশনগুলিকে সংযুক্ত করতে হয় যা প্রচুর ওয়েব পরিষেবাদির অনুরোধ করে: http://support.microsoft.com/?id=821268#tocHeadRef
আমি নিবন্ধটির সুপারিশটিনোগুলি অনুসরণ করেছি, তবে এখনও ভাগ্য নেই। বিশেষত আকর্ষণীয় maxconnection
সেটিংস হ'ল সেটিংসটি, যা আমি এমনকি 999 এ ছুঁড়েছি।
কোন ধারনা কি আর সংযোগ রোধ করা যেতে পারে?
দ্রষ্টব্য: আমি যখন আইআইএসকে মিশ্রণটি থেকে কেটে ফেলেছি এবং ক্লায়েন্টদের সরাসরি ব্যাকএন্ড ওয়েব পরিষেবাদির সাথে সংযোগ স্থাপন করব, এটি আনন্দের সাথে আমার প্রয়োজনীয় যতগুলি সংযোগ খুলে যাবে, তাই আমি ইতিবাচক ব্যাকএন্ড বাধা নয়। এটি অবশ্যই আইআইএস / এএসপি.এনইটি-ল্যান্ডের কিছু হওয়া উচিত।
machine.config
আমি নিশ্চিত যে প্রযোজ্য বিভাগটি সেই অ্যাপ্লিকেশনটির দ্বারা পড়েছে (যাচাই করা হয়েছে appcmd.exe
):
<system.web>
<processModel autoConfig="false" maxWorkerThreads="100" maxIoThreads="100" minWorkerThreads="50" />
<httpRuntime minFreeThreads="176" minLocalRequestFreeThreads="152"/>
<httpHandlers />
<membership>
<providers>
<add name="AspNetSqlMembershipProvider"
type="System.Web.Security.SqlMembershipProvider, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
connectionStringName="LocalSqlServer"
enablePasswordRetrieval="false"
enablePasswordReset="true"
requiresQuestionAndAnswer="true"
applicationName="/"
requiresUniqueEmail="false"
passwordFormat="Hashed"
maxInvalidPasswordAttempts="5"
minRequiredPasswordLength="7"
minRequiredNonalphanumericCharacters="1"
passwordAttemptWindow="10"
passwordStrengthRegularExpression="" />
</providers>
</membership>
<profile>
<providers>
<add name="AspNetSqlProfileProvider" connectionStringName="LocalSqlServer" applicationName="/"
type="System.Web.Profile.SqlProfileProvider, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
</providers>
</profile>
<roleManager>
<providers>
<add name="AspNetSqlRoleProvider" connectionStringName="LocalSqlServer" applicationName="/"
type="System.Web.Security.SqlRoleProvider, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<add name="AspNetWindowsTokenRoleProvider" applicationName="/"
type="System.Web.Security.WindowsTokenRoleProvider, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
</providers>
</roleManager>
</system.web>
<system.net>
<connectionManagement>
<add address="*" maxconnection="999"/>
</connectionManagement>
</system.net>