টমকেট 8 নিক্ষেপ করা - org.apache.catalina.webres્રોંસ


111

আমি সবেমাত্র টমক্যাটটি 7.0.52 সংস্করণ থেকে 8.0.14 সংস্করণে আপগ্রেড করেছি।

আমি প্রচুর স্থির চিত্রের জন্য এটি পাচ্ছি:

org.apache.catalina.webresources.Cache.getResource [/base/1325/WA6144-150x112.jpg] এ রিসোর্সটি ক্যাশে যুক্ত করতে অক্ষম কারণ মেয়াদোত্তীর্ণ ক্যাশে প্রবেশদ্বারগুলি উচ্ছেদের পরে অপর্যাপ্ত ফাঁকা জায়গা উপলব্ধ ছিল - সর্বাধিক আকার বাড়ানোর কথা বিবেচনা করুন ক্যাশে

আমি কোনও নির্দিষ্ট সংস্থান সেটিংস নির্দিষ্ট করে নেই, এবং আমি এটি 7.0.52 এর জন্য পাইনি।

অনুমিতরূপে স্থির করা হয়েছিল এমন একটি বাগ রিপোর্টে আমি প্রারম্ভকালে এই ঘটনার উল্লেখ পেয়েছি। আমার জন্য এটি সূচনায় নয় নিয়মিত যখন সংস্থানটির অনুরোধ করা হয় তখনই ঘটছে।

অন্য কেউ এই সমস্যা আছে?

কমপক্ষে কেবল ক্যাশে অক্ষম করার চেষ্টা করছি, তবে ক্যাশেটি ব্যবহার না করার জন্য কীভাবে নির্দিষ্ট করা যায় তার একটি উদাহরণ আমি পাই না। টমক্যাট ভার্সন 8 এ বৈশিষ্ট্যগুলি প্রসঙ্গ থেকে চলে গেছে 8 কোনও উত্স যুক্ত করার চেষ্টা করেছে তবে কনফিগারেশনটি সঠিকভাবে পেতে পারে না।

<Resource name="file" 
    cachingAllowed="false"
    className="org.apache.catalina.webresources.FileResourceSet"
/>  

ধন্যবাদ।


কোন উত্তর নেই - আমার ধারণা এই সমস্যাটি নিয়ে আমি অবশ্যই একমাত্র ব্যক্তি be
iainmac999

2
সমাধানটি এখানে: সার্ভারফল্ট
দিমিত্রি

1
টমক্যাট ৮ প্রসঙ্গে অনুপস্থিত বৈশিষ্ট্য সম্পর্কে, মাইগ্রেশন গাইড (জোর দেওয়া খনি) এর একটি অংশ এখানে দেওয়া হয়েছে: " সংস্থানসমূহের রিফ্যাক্টরিংয়ের ফলে ডিফল্ট প্রসঙ্গটি বাস্তবায়ন (org.apache.catalina.core) থেকে বেশ কয়েকটি বৈশিষ্ট্য সরানো হয়েছে in .SandardContext)। নিম্নলিখিত অ্যাপ্লিকেশনগুলি এখন ওয়েব অ্যাপ্লিকেশন দ্বারা ব্যবহৃত সম্পদ প্রয়োগের মাধ্যমে কনফিগার করা যেতে পারে "। সম্পর্কিত মাইগ্রেশন গাইডগুলিতে আরও তথ্য ।
informatik01

@ iainmac999 2 বছর পরে কখনও কোনও সঠিক উত্তর নির্বাচন করেনি আমরা তাতে রাজি হতে পারি যে এটি উভয়ভাবেই কাজ করে?
ডেভিডজমক্লেলল্যান্ড

উত্তর:


161

আপনার $CATALINA_BASE/conf/context.xmlঅ্যাড ব্লকে আগে নীচে</Context>

<Resources cachingAllowed="true" cacheMaxSize="100000" />

আরও তথ্যের জন্য: http://tomcat.apache.org/tomcat-8.0-doc/config/resources.html


11
পৃথক পাঠকরা সেই ক্যাশেম্যাক্স সাইজের মানটি 100 মেগেরও কম কিছুতে সামঞ্জস্য করতে চান।
এরিক স্পিগেলবার্গ

এখনও পর্যন্ত ত্রুটি বার্তাটি আমার কনসোল লগগুলিতে প্লাবিত হয়েছিল। এখন এটি পরিষ্কার। ধন্যবাদ
আবুব্যাকার সিদ্দিক

152

টমক্যাট 7 থেকে 8 এ আপগ্রেড করার সময় আমার একই সমস্যা ছিল: ক্যাশে সম্পর্কে লগের সতর্কতার একটানা বড় বন্যা।

সংক্ষিপ্ত উত্তর

Contextএটির এক্সএমএল উপাদানের মধ্যে এটি যুক্ত করুন $CATALINA_BASE/conf/context.xml:

<!-- The default value is 10240 kbytes, even when not added to context.xml.
So increase it high enough, until the problem disappears, for example set it to 
a value 5 times as high: 51200. -->
<Resources cacheMaxSize="51200" />

সুতরাং ডিফল্টটি হ'ল 10240(10 এমবিট), তাই এটির চেয়েও বড় আকার নির্ধারণ করুন। সতর্কতাগুলি অদৃশ্য হয়ে যায় সেখানে সর্বোত্তম সেটিংসের জন্য সুর তুলনায়। মনে রাখবেন যে সতর্কতাগুলি উচ্চতর ট্র্যাফিক পরিস্থিতিতে ফিরে আসতে পারে।

১.১ কারণ (সংক্ষিপ্ত ব্যাখ্যা)

ক্যাশ এন্ট্রিগুলির কারণে টমক্যাট তার টার্গেট ক্যাশে আকারে পৌঁছাতে না পারার কারণে এই সমস্যাগুলির কারণ টিটিএলগুলির চেয়ে কম। সুতরাং টমকাটের পর্যাপ্ত ক্যাশে প্রবেশাধিকার ছিল না যা এটি শেষ হতে পারে, কারণ এগুলি খুব সতেজ ছিল, সুতরাং এটি পর্যাপ্ত ক্যাশে মুক্ত করতে পারে না এবং এইভাবে সতর্কতাগুলি আউটপুট করে।

টমক্যাট in তে সমস্যাটি উপস্থিত হয়নি কারণ টমক্যাট কেবল এই পরিস্থিতিতে সতর্কতা আউট করে না। (আপনাকে এবং আমাকে অবহিত না করে ক্যাচ সেটিংসের দুর্বল ব্যবহারের কারণ ঘটায়))

ক্যাশের আকার এবং টিটিএল এর তুলনায় স্বল্প সময়ের মধ্যে রিসোর্সের (সাধারণত স্থিতিশীল) প্রচুর পরিমাণে HTTP অনুরোধ পাওয়ার সময় সমস্যাটি দেখা দেয়। টমক্যাট চেষ্টা করে এমন প্রতিটি ওয়েব-রিসোর্সের জন্য আপনি যদি সতর্কতা বার্তা পাবেন তার চেয়ে আপনি যদি ক্যাশে তার সর্বাধিক (ডিফল্টরূপে 10 মিমি) তার মাপের 95% এরও বেশি আকারে পৌঁছে থাকেন (তাজা মানে ক্যাশে 5 সেকেন্ডের চেয়ে কম) ক্যাশে লোড করতে।

1.2 ptionচ্ছিক তথ্য

আপনার যদি পুনরায় চালু না করে চলমান সার্ভারে ক্যাশেম্যাক্স সাইজটি টিউন করতে হয় তবে জেএমএক্স ব্যবহার করুন।

দ্রুত <Resources cachingAllowed="false" />সমাধানটি হ'ল ক্যাশে সম্পূর্ণরূপে অক্ষম করা: তবে এটি সাবঅপটিমাল, সুতরাং আমি ঠিক যেমন বর্ণনা করেছি তেমন ক্যাশেম্যাক্স সাইজ বাড়িয়ে দিন।

2. দীর্ঘ উত্তর

২.১ পটভূমির তথ্য

একটি ওয়েব সোর্স একটি ওয়েব অ্যাপ্লিকেশনের একটি ফাইল বা ডিরেক্টরি। পারফরম্যান্সের কারণে টমক্যাট ওয়েবসোর্সগুলি ক্যাশে করতে পারে। স্ট্যাটিক রিসোর্স ক্যাশে সর্বোচ্চ (মোট সমস্ত সম্পদ) ডিফল্ট 10240 KByte (10 mbyte) দ্বারা হয়। যখন ওয়েব রিসোর্সটি অনুরোধ করা হয় (উদাহরণস্বরূপ কোনও স্ট্যাটিক চিত্র লোড করার সময়) একটি ওয়েব রিসোর্স ক্যাশে লোড করা হয়, তখন একে ক্যাশে প্রবেশিকা বলা হয়। প্রতিটি ক্যাশে প্রবেশের একটি টিটিএল থাকে (বেঁচে থাকার সময়), সেই সময়েই ক্যাশে প্রবেশের সময় ক্যাশে থাকতে দেওয়া হয়। যখন টিটিএল মেয়াদ শেষ হবে, ক্যাশে এন্ট্রি ক্যাশে থেকে সরানোর যোগ্য। ক্যাশেটিটিএলটির ডিফল্ট মান 5000 মিলিসেকেন্ড (5 সেকেন্ড)।

ক্যাশিং সম্পর্কে আরও অনেক কিছু বলার আছে, তবে এটি সমস্যার ক্ষেত্রে অপ্রাসঙ্গিক।

২.২ কারণ

ক্যাশে শ্রেণীর নিম্নলিখিত কোডগুলি ক্যাশেিং নীতিটি বিশদভাবে দেখায়:

152   // সামগ্রীতে ক্যাশে হবে না তবে আমাদের এখনও 
153 লম্বা ডেল্টা = ক্যাশেএন্ট্রি মেটাটাটা আকারের প্রয়োজন । getSize ();
154 আকার। addAndGet (ডেল্টা);
156 যদি (আকার। পান ()> ম্যাক্স সাইজ) {
157 // গতির জন্য আনসর্ডার করা প্রক্রিয়া সংস্থানগুলি। ট্রেড ক্যাশে
158 // দক্ষতা (কম বয়সী এন্ট্রিগুলি পুরানো
159 এর আগে উচ্ছেদ করা যেতে পারে ) যেহেতু
160 এর জন্য এটি সমালোচনামূলক পথে চলেছে // অনুরোধ প্রসেসিং
161 দীর্ঘ টার্গেট সাইজ =
162 ম্যাক্স সাইজ * (100 - TARGET_FREE_PERCENT_GET) / 100;
163 দীর্ঘ newSize = উচ্ছেদ (
164 । TargetSize, resourceCache মান ()। পুনরুক্তিকারীর ());
165 যদি (নতুন সাইজ> সর্বোচ্চ আকার) {
166 // এই সংস্থানটির জন্য পর্যাপ্ত জায়গা তৈরি করতে অক্ষম
167 // এটি ক্যাশে থেকে সরান
168 অপসারণচেনা (পথ);
169 লগ। সতর্ক (ছাঃ। getString আছে ( "cache.addFail", পথ));
170 }
171 }

কোনও ওয়েব রিসোর্স লোড করার সময় কোডটি ক্যাশের নতুন আকারের গণনা করে। যদি গণনা করা আকার ডিফল্ট সর্বাধিক আকারের চেয়ে বড় হয় তবে এক বা একাধিক ক্যাশে প্রবেশিকা অপসারণ করতে হবে, অন্যথায় নতুন আকার সর্বাধিক ছাড়িয়ে যাবে। সুতরাং কোডটি একটি "টার্গেটসাইজ" গণনা করবে, যা ক্যাশে (সর্বোত্তম হিসাবে) অধীনে থাকতে চায় এমন আকার, যা সর্বোচ্চ 95% এর ডিফল্ট হয়। এই টার্গেট সাইজে পৌঁছানোর জন্য, প্রবেশগুলি ক্যাশে থেকে সরিয়ে / উচ্ছেদ করতে হবে। এটি নিম্নলিখিত কোড ব্যবহার করে করা হয়:

215   ব্যক্তিগত  দীর্ঘ উচ্ছেদ ( দীর্ঘ targetSize, ইটারেটর < CachedResource > রাউটার) { 
217 দীর্ঘ এখন = সিস্টেম। কারেন্টটাইমমিলিস ();
219 দীর্ঘ নতুন আকার = আকার। get ();
221 যখন (newSize> targetSize && রাউটার। HasNext ()) {
222 CachedResource রিসোর্স = রাউটার। পরবর্তী ();
224 // টিটিএল
225 এর মধ্যে যা কিছু পরীক্ষা করা হয়েছে তার মেয়াদ শেষ করবেন না ( যদি এখন (সংস্থান। getNextCheck ()> এখন)) {
226 চালিয়ে যাওয়া ;
227 }
229 // ক্যাশে থেকে এন্ট্রি সরান
230 রিলিজচ্যান্ট্রি (রিসোর্স। GetWebappPath ());
232 নতুন আকার = আকার। get ();
233 }
235 ফেরত নতুন আকার;
236 }

সুতরাং যখন এর টিটিএলটির মেয়াদ শেষ হয়ে যায় এবং টার্গেট সাইজটি এখনও পৌঁছায় না তখন একটি ক্যাশে এন্ট্রি সরানো হয়।

ক্যাশে এন্ট্রিগুলি উচ্ছেদ করে ক্যাশে মুক্ত করার প্রয়াসের পরে কোডটি করবে:

165   যদি (নতুন সাইজ> সর্বোচ্চ আকার) { 
166 // এই সংস্থানটির জন্য পর্যাপ্ত জায়গা তৈরি করতে অক্ষম
167 // এটি ক্যাশে থেকে সরান
168 অপসারণচেনা (পথ);
169 লগ। সতর্ক (ছাঃ। getString আছে ( "cache.addFail", পথ));
170 }

সুতরাং ক্যাশে মুক্ত করার প্রয়াসের পরে যদি আকারটি এখনও সর্বোচ্চ ছাড়িয়ে যায়, এটি মুক্ত করতে অক্ষম হওয়ার বিষয়ে সতর্কতা বার্তাটি দেখায়:

cache.addFail=Unable to add the resource at [{0}] to the cache for web application [{1}] because there was insufficient free space available after evicting expired cache entries - consider increasing the maximum size of the cache

2.3 সমস্যা

সতর্কতা বার্তা হিসাবে তাই বলে, সমস্যা

মেয়াদোত্তীর্ণ ক্যাশে এন্ট্রিগুলি উচ্ছেদের পরে অপর্যাপ্ত মুক্ত স্থান উপলব্ধ - ক্যাশের সর্বাধিক আকার বাড়ানোর কথা বিবেচনা করুন

যদি আপনার ওয়েব অ্যাপ্লিকেশন অল্প সময়ের মধ্যে (5 সেকেন্ড) মধ্যে প্রচুর অনাবৃত ওয়েব রিসোর্সগুলি (প্রায় সর্বোচ্চ ক্যাশে, ডিফল্ট 10 মিমি) লোড করে, তবে আপনি সতর্কতাটি পাবেন।

বিভ্রান্তিকর অংশটি হ'ল টমক্যাট 7 সতর্কতাটি দেখায় নি। এটি কেবল এই টমকেট code কোড দ্বারা সৃষ্ট:

1606   // ক্যাশে নতুন এন্ট্রি যোগ করুন 
1607 সিঙ্ক্রোনাইজ (ক্যাশ) {
1608 // চেক ক্যাশে মাপ হয় এবং সরাতে উপাদান যদি খুব বড়
1609 যদি ((ক্যাশে। লুকআপ (নাম) == নাল ) && ক্যাশে। বরাদ্দ (entry.size) ) 10
1610 ক্যাশে। লোড (এন্ট্রি);
1611 }
1612 }

সংযুক্ত:

231   যখন (toFree> 0) { 
232 যদি (প্রচেষ্টা == maxAllocateIterations) {
233 // আপ দাও, কোন পরিবর্তন বর্তমান ক্যাশে করা হয়
234 রিটার্ন মিথ্যা ;
235 }

টমক্যাট 7 সহজেই কোনও সতর্কতা আউটপুট দেয় না যখন এটি ক্যাশে মুক্ত করতে অক্ষম হয়, যেখানে টমক্যাট 8 একটি সতর্কতা আউটপুট দেয়।

সুতরাং যদি আপনি টমক্যাট ৮ টি টোম্যাট c হিসাবে একই ডিফল্ট ক্যাশে কনফিগারেশনের সাথে ব্যবহার করে থাকেন এবং আপনি টমক্যাট ৮-এ সতর্কতা পেয়েছেন, টমক্যাট of-এর আপনার (এবং আমার) ক্যাশিং সেটিংস সতর্কতা ছাড়াই খারাপ পারফর্ম করছে।

2.4 সমাধান

একাধিক সমাধান রয়েছে:

  1. ক্যাশে বাড়ান (প্রস্তাবিত)
  2. টিটিএল কম করুন (প্রস্তাবিত নয়)
  3. ক্যাশে লগ সতর্কতাগুলি দমন করুন (প্রস্তাবিত নয়)
  4. নিষ্ক্রিয় ক্যাশে

2.4.1। ক্যাশে বাড়ান (প্রস্তাবিত)

এখানে বর্ণিত হিসাবে: http://tomcat.apache.org/tomcat-8.0-doc/config/resources.html

যোগ করে <Resources cacheMaxSize="XXXXX" />মধ্যে Contextউপাদান $CATALINA_BASE/conf/context.xml, যেখানে "XXXXX" বর্ধিত ক্যাশের মাপ ঘোরা, kbytes উল্লেখিত। ডিফল্টটি 10240 (10 এমবিাইট), সুতরাং এটির চেয়ে একটি আকার আরও বেশি সেট করুন।

সর্বোত্তম সেটিংসের জন্য আপনাকে টিউন করতে হবে। নোট করুন যে আপনার যখন ট্র্যাফিক / রিসোর্স অনুরোধগুলির হঠাৎ বৃদ্ধি হবে তখন সমস্যাটি ফিরে আসতে পারে।

আপনি যখন নতুন ক্যাশে আকারের চেষ্টা করতে চান প্রতিবার সার্ভারটি পুনরায় চালু না করতে আপনি জেএমএক্স ব্যবহার করে পুনরায় আরম্ভ না করে এটিকে পরিবর্তন করতে পারবেন।

জেএমএক্স সক্ষম করতে , $CATALINA_BASE/conf/server.xmlএটি Serverউপাদানটির মধ্যে এটিকে যুক্ত করুন : <Listener className="org.apache.catalina.mbeans.JmxRemoteLifecycleListener" rmiRegistryPortPlatform="6767" rmiServerPortPlatform="6768" />এবং https://tomcat.apache.org/download-80.cgicatalina-jmx-remote.jar থেকে ডাউনলোড করুন এবং এতে রেখে দিন । তারপরে JMX এর সাথে সার্ভারের সাথে সংযোগ স্থাপন করতে jConsole (জাভা জেডিকে দিয়ে ডিফল্টরূপে প্রেরণ করা) ব্যবহার করুন এবং সার্ভার চলাকালীন ক্যাশের আকার বাড়ানোর জন্য সেটিংসের জন্য সেটিংসটি দেখুন। এই সেটিংসে পরিবর্তনগুলি অবিলম্বে প্রভাবিত হওয়া উচিত।$CATALINA_HOME/lib

2.4.2। টিটিএল কম করুন (প্রস্তাবিত নয়)

cacheTtl5000 মিলিসেকেন্ডের চেয়ে কম কিছু দিয়ে মানটি কমিয়ে আনুন এবং অনুকূল সেটিংসের জন্য টিউন করুন।

উদাহরণ স্বরূপ: <Resources cacheTtl="2000" />

এটি কার্যকরভাবে ব্যবহার না করে ভেড়াতে একটি ক্যাশে ভরাট করতে আসে।

2.4.3। ক্যাশে লগ সতর্কতাগুলি দমন করুন (প্রস্তাবিত নয়)

লগারের জন্য অক্ষম করতে লগিং কনফিগার করুন org.apache.catalina.webresources.Cache

টমক্যাটে লগ ইন সম্পর্কে আরও তথ্যের জন্য: http://tomcat.apache.org/tomcat-8.0-doc/logging.html

2.4.4। নিষ্ক্রিয় ক্যাশে

আপনি সেট করে ক্যাশে অক্ষম করতে পারেন cachingAllowedথেকে false<Resources cachingAllowed="false" />

যদিও আমি মনে করতে পারি টমক্যাট 8 এর একটি বিটা সংস্করণে, আমি ক্যাশে অক্ষম করতে জেএমএক্স ব্যবহার করছিলাম। (ঠিক কী কারণে তা নিশ্চিত নয় তবে সার্ভার.এক্সএমএল এর মাধ্যমে ক্যাশে অক্ষম করার ক্ষেত্রে সমস্যা হতে পারে))


ক্যাশে বাড়বে? আমি সন্দেহ করি এটি কার্যকর হবে ... আমি এটি দেখেছি: প্রাইভেট লং ম্যাক্স সাইজ = 10 * 1024 * 1024; উত্সে grepcode.com/file/repo1.maven.org/maven2/org.apache.tomcat/…
হোয়াফান

টমকাট 8 কেন ক্যাশে সতর্কবার্তা বন্যার উত্তর পেয়েছে
পিএইচপি অ্যাভেঞ্জার

@ হোয়াফান 10 * 1024 * 1024 মোট সমস্ত ক্যাশের জন্য সর্বোচ্চ 10 মিমি। ওয়েব অ্যাপের ট্র্যাফিকের উপর নির্ভর করে কয়েক সেকেন্ডের মধ্যে এটি পৌঁছে যেতে পারে। এটি যথেষ্ট পরিমাণে বাড়ানো, কাজ করবে।
দেবব্যাক

@ পিএইচপিএভেঞ্জার টমক্যাট এই উপাসনাটিতে মোটেও সতর্ক করেনি, যেখানে টমক্যাট ৮ করেছে, তাই এটি একটি সতর্কতা বৈশিষ্ট্য হিসাবে দেখা যেতে পারে। সমস্যাটি হ'ল এটি একবারে সতর্ক করে না, প্রতিটি ক্যাশে সংস্থান অনুরোধে। নির্দিষ্ট পরিমাণ সময় বা ক্যাশে টার্গেট হিট হওয়ার পরে কেবল সতর্ক করার জন্য এটি একটি উন্নতি হবে।
দেবব্যাক

@ দেবাব্যাক ত্রুটিহীন উত্তর! একটি ক্লাসিক!
গৌরব

9

আপনার আরও স্থিতিশীল সংস্থান আছে যা ক্যাশে রয়েছে। আপনি নিম্নলিখিতগুলির মধ্যে একটি করতে পারেন:

  • ক্যাশের আকার বাড়ান
  • ক্যাশের জন্য টিটিএল হ্রাস করুন
  • ক্যাচিং অক্ষম করুন

আরও তথ্যের জন্য এই কনফিগারেশন বিকল্পগুলির জন্য ডকুমেন্টেশন দেখুন ।


1
মন্তব্যের জন্য ধন্যবাদ. আমি ব্যতিক্রমটির অর্থ বুঝতে পারি এবং অবশ্যই আপনি যে ডকুমেন্টেশনগুলিতে লিঙ্ক করেছেন সেটি আমি পড়েছি, তবে কেন কনফিগারেশনের কোনও পরিবর্তন ছাড়াই এটি 7 থেকে 8 এ পরিবর্তিত হবে তা আমি বুঝতে পারি না। এটি হ'ল, কেন কোনও পরিবর্তনের উল্লেখ ছাড়াই ডিফল্ট ফাইল সিস্টেম রিসোর্স হ্যান্ডলারটি 8 থেকে 7 এ আলাদা হবে এবং এটি একটি সন্দেহজনক সন্দেহজনক যে একটি স্টার্ট আপ বাগ রিপোর্ট করা হয়েছিল এবং সম্ভবত এটি সংশোধন করা হয়েছিল।
iainmac999

1
সম্ভবত আপনি যদি মাইগ্রেশন গাইডটি পড়ে থাকেন - বিশেষত tomcat.apache.org/migration-8.html# ওয়েব_অ্যাপ্লিকেশন_সোর্স - জিনিসগুলি আরও পরিষ্কার হবে।
মার্ক থমাস

ডকুমেন্টেশনটি যদি আরও কিছু করে তবে এটি সাহায্য করবে) কী কী সংস্থানগুলি এই ক্যাশে প্রবেশ করে এবং কেন (সে সম্পর্কে প্রচুর ভুল বোঝাবুঝি ঘটে!) এবং খ) বিভিন্ন সেটিংসের কী কী প্রভাব ফেলতে পারে (উদাহরণস্বরূপ প্রতিটি ওয়েবআপের ক্যাশে সেটিংস অন্ধভাবে তৈরি করা) বেশ বড় একটি টন মেমরি খেতে পারে) এবং কীভাবে এটি সঠিকভাবে টিউন করবেন। অ্যাপ্লিকেশন নিজেই ব্যবহার করে স্থির সম্পদ বনাম ব্যবহারকারীর স্থির ফাইল এবং ব্যবহারকারী এজেন্টদের দ্বারা অনুরোধ করা স্ট্যাটিক ফাইলগুলির মধ্যে এবং কেবল অ্যাপ্লিকেশন দ্বারা সরবরাহ করার মধ্যে কোড এবং কনফিগারেশনের মধ্যে পার্থক্য থাকলে এটিও সহায়তা করবে।
ভোলার্ক

4

এই অর্থে এটি কোনও সমাধান নয় যে এটি লগগুলিতে বার্তাটি প্রদর্শিত হওয়ার শর্তটি সমাধান করে না, তবে নিম্নলিখিতটি সংযোজন করে বার্তাটি দমন করা যেতে পারে conf/logging.properties:

org.apache.catalina.webresources.Cache.level = SEVERE

এটি "সংস্থান সংস্থান করতে অক্ষম" লগগুলি ফিল্টার করে, যা সতর্কতার স্তরে রয়েছে।

আমার দৃষ্টিতে একটি WARNINGঅগত্যা কোনও ত্রুটি নয় যেটির সমাধান করা প্রয়োজন, তবে ইচ্ছা করলে উপেক্ষা করা যেতে পারে।


8
হা হা। এটি সমস্যার সমাধান করে না। এটি কেবল এটি দেখায় না। ডব্লিউটিএফ!
T3rm1

এটি অত্যধিক লগিংয়ের সমস্যাটি সমাধান করে যা এটি নিজেই একটি উল্লেখযোগ্য সমস্যা হতে পারে। এটি পূর্ববর্তী টোমক্যাট সংস্করণগুলির আচরণে ফিরে আসে, যেখানে জিনিসগুলি অনেকের পক্ষে যথেষ্ট ভাল কাজ করে, তাই সেই অর্থে সমস্যাটি "সমাধান করে"। এটি আসলে টমকাট ক্যাশে টিউন করার সমস্যাটির সমাধান করে না, যা দেবাব্যাকের উত্তরটি খুব সুন্দরভাবে কভার করেছে।
ভোলার্ক
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.