উবুন্টু 9.04 এর অধীনে টমক্যাট 6 এর জন্য জাভা হ্যাপ বিকল্প (যেমন-এক্সএমএক্স) কোথায় সেট করবেন?


36

আমি উবুন্টু 9.04 থেকে টমক্যাট 6 প্যাকেজটি ব্যবহার করে টমক্যাট চালাচ্ছি, যা জেএসভিসি ব্যবহার করে টমক্যাট থেকে ডেমোন তৈরি করে। -Xmxটমক্যাটের মতো জাভা হ্যাপ বিকল্পগুলি সেট করার সঠিক উপায়টি আমি জানতে চাই । আমি কনফিগারেশনটি যেখানেই সবচেয়ে স্টাইলিস্টিকভাবে সঠিক, এবং যেখানেই উবুন্টু প্যাকেজ আপডেটের মাধ্যমে ওভাররাইট করা সম্ভব হবে সেখানে রাখতে চাই।

আমি এখন যে বিকল্পগুলি দেখছি তা:

  • এগুলিকে কোথাও হার্ড-কোড করুন /etc/init.d/tomcat6
  • এগুলিকে কোথাও হার্ড-কোড করুন /usr/share/tomcat6/bin/catalina.sh
  • /usr/share/tomcat6/bin/startup.shকাঙ্ক্ষিত পতাকাগুলি রাখতে সিএটিএলএএনএইপিটিএস সেট করতে একটি লাইন তৈরি করুন এবং তারপরে পরিবেশের পরিবর্তনশীল হিসাবে ক্যাটালিন_ওপিটিএস রফতানি করুন। (এটি দেখে মনে হচ্ছে এটি উঠবে catalina.sh।)

টমক্যাট স্টার্টআপ স্ক্রিপ্টে জাভা'র হিপস্পেস বাড়ানোয় সর্বশেষ বিকল্পটি সেরাটির মতো শোনাচ্ছে এবং এটি (কেন তা ব্যাখ্যা না করে) সমর্থন করে । তবে আমি দ্বিতীয় মতামত পেতে চেয়েছিলাম। এর চেয়ে ভাল উপায় আর নেই তা কেউ নিশ্চিত করতে চান?

উত্তর:


37

কমপক্ষে উবুন্টু 10.04, /etc/init.d/tomcat6 উত্স / ইত্যাদি / ডিফল্ট / টমক্যাট 6 এ উপস্থিত থাকলে। আমি এখানে আমার ওভাররাইডগুলি রেখেছি এবং আমি বিশ্বাস করি যে এই জাতীয় পরিবর্তনগুলি করার জন্য এটি সাধারণত "অনুমোদিত" way


7
জন্য / etc / ডিফল্ট / tomcat6 সঠিক স্থান
অমলা

/etcসম্ভব হলে +1 কনফিগারেশন সর্বদা করা উচিত ।
মার্কাস ডাউনিং

2
CentOS- এ, আমি যে অবস্থানটি পেয়েছি সেটি ছিল /etc/tomcat6/tomcat6.conf
খাইলো

1
CentOS 6.4 /etc/tomcat6/tomcat6.confএ একটি বড় ফাইল এবং আমি আমার ব্যক্তিগত কাস্টমাইজেশনগুলি সেখানে রাখতে চাইনি, তাই আমি $CATALINA_HOME/bin/setenv.shএটিকে তৈরি করেছিলাম এবং এটি তৈরি করেছি /usr/sbin/tomcat6। আশা করি এটি সেন্টোস ব্যবহারকারীদের সহায়তা করবে (হ্যাঁ, আমি জানি মূল প্রশ্নটি উবুন্টুর জন্য ছিল)।
ডাফজে

@ খ্যালো হ্যাঁ, এটি বের করার জন্য আমাকে কিছুটা সময় নিয়েছে CentOS এ মনে হয় /etc/init.d/tomcat6 কল করছে / usr / sbin / tomcat6 যা catalina.sh কল করছে না তবে কেবল টমক্যাট বুটস্ট্র্যাপ শ্রেণিকে সরাসরি কল করে (উবুন্টু /etc/init.d/tomcat6 এর বিপরীতে যে কল করছে ক্যাটালিনা.শ)
ইরান মেডান

16

আপনি যদি আপনার ইনস্টলেশনটির বিন ডিরেক্টরিটি দেখেন তবে আপনি catalina.sh বা .bat স্ক্রিপ্টগুলি দেখতে পাবেন। আপনি যদি এগুলি দেখতে পান তবে তারা দেখতে পাবে যে তারা পরিবেশের ভেরিয়েবল সেট করতে যথাক্রমে একটি setenv.sh বা setenv.bat স্ক্রিপ্ট চালায়। প্রাসঙ্গিক পরিবেশের পরিবর্তনশীলগুলি catalina.sh/bat এর শীর্ষে থাকা মন্তব্যে বর্ণিত হয়েছে। এগুলি ব্যবহারের জন্য, উদাহরণস্বরূপ, একটি ফাইল $ ক্যাটালিনহোম / বিন / setenv.sh বিষয়বস্তু সহ

export JAVA_OPTS="-server -Xmx512m"

উইন্ডোজের জন্য আপনার প্রয়োজন হবে, setenv.bat এ, এর মতো কিছু

set JAVA_OPTS=-server -Xmx768m

এই 7. মূল answear মাধ্যমে হুল বিড়াল 5.5 থেকে সত্য https://stackoverflow.com/questions/286007/how-to-tune-tomcat-5-5-jvm-memory-settings-without-using-the-configuration-progra


1
/ ইত্যাদি / ডিফল্ট / অন্তর্ভুক্ত ব্যতীত সিস্টেমগুলির জন্য ভাল কাজ করে, যেমন, ফ্রিবিএসডি।
ভাদ্পিপ

7

/Etc/tomcat6/tomcat6.conf এর জন্য দেখুন যা JAVA_OPTS পছন্দ করে এবং আপনার অসুবিধা হওয়ার জন্য অপেক্ষা করছে (তবে কেবল আপনার যদি এটি থাকে তবে আমি উবুন্টু নয় সেন্টোস ব্যবহার করছি)।

# System-wide configuration file for tomcat6 services
# This will be sourced by tomcat6 and any secondary service
# Values will be overridden by service-specific configuration
# files in /etc/sysconfig
#
# Use this one to change default values for all services
# Change the service specific ones to affect only one service
# (see, for instance, /etc/sysconfig/tomcat6)
#
...
#JAVA_OPTS="-Xminf0.1 -Xmaxf0.3"

4
এটি টমক্যাটের CentOS / yum / RPM সংস্করণের জন্য সঠিক বলে মনে হচ্ছে। উবুন্টু / এপটি-গেইজ প্যাকেজের জন্য setenv.sh হ'ল এএফআইকে যাওয়ার সঠিক উপায়
ইরান মেডান

হ্যাঁ, কেসিডি সঠিক, সেন্টোস টমক্যাট 6 কনফ জন্য ভাল কাজ করে। কমান্ডের সাহায্যে ps aux | গ্রেপ টমক্যাট এটি সেট করা মানগুলির সাথে পরামিতিটি দেখায়।
মানিকানন্দন অরুণাচালাম

2

আমি এখন পর্যন্ত সর্বাধিক মার্জিত উপায় খুঁজে পেয়েছি /etc/init.d/tomcat6 সম্পাদনা করা এবং এটি ফাইলের শীর্ষে যুক্ত করা:

# local config settings
JAVA_OPTS="-Xms5000m -Xmx13000m

আমার প্রশ্নে আমি উল্লিখিত অন্যান্য বিকল্পগুলি কাজ করছে বলে মনে হচ্ছে না। স্ক্রিপ্টটি অধ্যয়ন করার পরে এবং আরও কিছু পরীক্ষা-নিরীক্ষার পরে আমি সন্দেহ করি যে /usr/share/tomcat6/bin/catalina.sh এবং /usr/share/tomcat6/bin/startup.sh টমকাট 6 উবুন্টু প্যাকেজের সাহায্যে টমক্যাট সূচনায় কোনও ভূমিকা পালন করে। পরিবর্তে; /etc/init.d/tomcat6 সম্পূর্ণরূপে catalina.sh/startup.sh দ্বারা সম্পন্ন হতে পারে এমন কোনও কাজকে পুরোপুরি প্রতিস্থাপন করে।

কিছু ভবিষ্যতের প্যাকেজ আপডেটে এই কনফিগার বিকল্পগুলি হারাতে আমি এখনও কিছুটা উদ্বিগ্ন, তবে আমার ধারণা যদি এটি ঘটে তবে সেগুলি পুনরুদ্ধার করা বেশ সহজ হবে।


আপনি টমকাট যেভাবে ব্যবহার করতে চান তা ব্যবহারকারীর জন্য .bashrc এ (রফতানি) সেট করা যায়? [দয়া করে হরিড ব্যাকরণটি ক্ষমা করুন] এটি টমক্যাট প্যাকেজ ইত্যাদির আপডেটগুলি থেকে বাঁচতে পারে etc. ইত্যাদি I'm আরও দেখুন howtogeek.com/howto/linux/installing-tomcat-6-on-ubuntu
ডেভিড জে লিসজেউস্কি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.