2011-05-13 16 views
11

मुझे अपने वेब कंटेनर के रूप में Jetty का उपयोग करने के लिए उपयोग किया जाता है।जेटी की सफाई - 'अनावश्यक' चीजों को हटाकर

मैं अपने स्थापित सीढ़ियों पर क्या किया इसे से मूल राल गेंद और सफाई कुछ निर्देशिकाओं और फ़ाइलों मिलता है।

क्या मैं यहाँ जुटाने के लिए चाहते हैं, यह है:

क्या आप/उत्पादन पर उपयोग करने के लिए वातावरण का मंचन जेट्टी से दूर करने के लिए उपयोग किया जाता है?

क्या मैं डिफ़ॉल्ट घाट पैकेज पर परिवर्तित करें:

  • निकालें:
    • README.txt
    • pom.xml
    • जावाडोक/
    • उदाहरण/
    • /webapps/परीक्षण *
    • /संदर्भों/परीक्षण *
    • /परियोजना वेबसाइट
    • /resources/log4j.properties
  • बनाएं:
    • काम/

सवाल:

  • मैं किसी भी लाइसेंस सही तोड़ने नहीं कर रहा हूँ?
  • क्या मैं अपने सिस्टम (प्रदर्शन/स्थिरता) के लिए कोई कमी ला सकता हूं?
  • क्या कोई जेटी पर इससे अधिक अनुकूलित करता है?
  • टिप्पणियां?
  • प्रश्न?
  • टिप्स?

संबंधित पोस्ट:

उत्तर

0

अतीत में मैं जेट्टी नीचे एक बहुत ट्रिम करने के लिए सभी व्यवस्थाएं मैं का उपयोग नहीं करते बाहर काटने के द्वारा प्रयोग किया। यह मुझे सभी निर्भरता जारों को ट्रिम करने देता है। एक बार जब मैं इसे नंगे जरूरी चीजों तक ट्रिम कर देता हूं तो मैंने इसका इस्तेमाल बहुत छोटा था।फिर मैंने इसे एकजर के साथ दोबारा बनाया ताकि यह एक एकल फ़ाइल स्थानांतरण था जो निष्पादित करने के लिए तैयार है। यह एक लंबा समय रहा है क्योंकि मैंने किसी भी बड़े पैमाने पर आवेदन क्लस्टर प्रबंधित किए हैं, इसलिए संभवतः एक ही सिरे को पूरा करने के बेहतर तरीके हैं। क्लाउड कंप्यूटिंग दिमाग में आता है, लेकिन मैंने वहां बहुत कुछ नहीं किया है, लेकिन यही वह जगह है जहां मैं पहली बार देखता हूं अगर मुझे आज भी यही चुनौतियों का सामना करना पड़ रहा था।

प्लस बैंडविड्थ और डिस्क इन दिनों बहुत सस्ता हैं इसलिए मेरी राय में समय के साथ समस्याएं कम हो गई हैं।

+0

आपकी पोस्ट के लिए धन्यवाद, मैं इस पोस्ट पर अकेला महसूस कर रहा था! लेकिन मजाक करना बंद करो क्या आप अधिक जानकारी में याद कर सकते हैं कि आप जेटी पर ट्रिम करने के लिए क्या उपयोग करते हैं? चीयर्स! –

2

मैं कोई लाइसेंस सही नहीं तोड़ रहा हूं?

सही।

क्या मैं अपने सिस्टम (प्रदर्शन/स्थिरता) के लिए कोई कमी ला सकता हूं?

एकमात्र कमी यह है कि Log4J गुण फ़ाइल यह नियंत्रित करने के लिए उपयोगी है कि कितना (या कितना छोटा) लॉगिंग किया जाता है। लॉगिंग को अक्षम करने से पूरी तरह से छोटे लॉग फाइलों में डिस्क स्थान को सुरक्षित किया जाता है। (टीबी ड्राइव के साथ कोई समस्या नहीं होनी चाहिए।) यदि लॉगिंग गुण फ़ाइल नहीं मिल पाती है, तो ERROR स्तरों के बजाय, एप्लिकेशन DEBUG या INFO स्तरों पर डिफ़ॉल्ट हो सकता है। इसलिए, Log4J सभी अनुप्रयोगों को केवल महत्वपूर्ण जानकारी लॉग करने के लिए बताने में उपयोगी है।

अपर्याप्त उदाहरणों को समाप्त करना (परीक्षण सूट) कम सिस्टम जानकारी को उजागर करके सुरक्षा को मजबूत करता है। यह थोड़ी मेमोरी भी बचा सकता है क्योंकि टेस्ट वेबपैप्स मेमोरी में लोड नहीं हो सकते हैं।

क्या कोई जेटी पर इससे अधिक अनुकूलित करता है?

आप इस प्रकार webapps निर्देशिका साफ कर सकते हैं:

cd /opt/jetty 
rm -rf webapps 
mkdir -p webapps/root 
echo "<html><body></body></html>" > webapps/root/index.html 

पुनः प्रारंभ जेट्टी।

+0

आपकी टिप्पणी के लिए धन्यवाद! मैं सोच रहा था कि इस पोस्ट में बहुत सारी टिप्पणियां हो सकती हैं! मैं जेटी को साफ करने के लिए प्रयोग किया जाता है! चीयर्स! –

1

जेट्टी (9.1.5) को साफ करने का एक तरीका यहां है।

tar -xzvf jetty-distribution-9.1.5.v20140505.tar.gz 
# can rename 'jetty-distribution-9.1.5.v20140505' to 'jetty-9.1.5' or similar 
cd jetty-distribution-9.1.5.v20140505 
rm -rf VERSION.txt license-eplv10-aslv20.html notice.html start.d/jsp.ini resources/log4j.properties demo-base/ 
find -name README.TXT | xargs rm -fv 

mv etc etc.bak    # keep a backup of etc/ and modules/, take whats necessary 
mv modules modules.bak 
mkdir etc modules work 
mv modules.bak/.donotdelete modules.bak/deploy.mod modules.bak/ext.mod modules.bak/http.mod \ 
    modules.bak/logging.mod modules.bak/resources.mod modules.bak/security.mod modules.bak/server.mod modules.bak/servlet* \ 
    modules.bak/webapp.mod modules/ 
mv $(grep -h --color=none "etc.*.xml" modules/* | sed 's/etc/etc\.bak/g') etc/ 
mv etc.bak/jetty-started.xml etc.bak/jetty.conf etc/  # required for bin/jetty.sh 
mv etc.bak/webdefault.xml etc/        # required for web applications 
                  # provides default deployment descriptor config for all apps 
# rm -rf modules.bak/ etc.bak/        # remove if not needed 

sed -i '/^#/d; /^\s*$/d' start.ini start.d/http.ini   # clean if needed 

vi start.ini start.d/http.ini        # check and modify if needed 
    start.ini: 'jetty.send.server.version=false', remove '--module=websocket' 
    http.ini: 'jetty.port=9999' 
vi modules/<whatever.mod>         # check and modify if needed 
vi etc/jetty.xml # to prevent Jetty from showing context related information 
    remove 
     <Item> 
      <New id="DefaultHandler" class="org.eclipse.jetty.server.handler.DefaultHandler"/> 
     </Item> 
vi etc/jetty-logging.xml # suffix date with '-', instead of prefixing with '_' 
    change 
     <Arg><Property name="jetty.logs" default="./logs"/>/yyyy_mm_dd.stderrout.log</Arg> 
     ... 
     <Get id="ServerLogName" name="datedFilename"/> 
    to 
     <Arg><Property name="jetty.logs" default="./logs"/>/stderrout.log.yyyy_mm_dd</Arg> 
     ... 
     <Arg type="java.lang.String">yyyy-MM-dd</Arg> 
     <Arg type="java.lang.String">HHmmssSSS</Arg> 
     <Get id="ServerLogName" name="datedFilename"/> 
vi etc/webdefault.xml # disable jsp support and modify other default settings 
    remove or comment out <servlet> and <servlet-mapping> of JSP Servlet 
    remove or comment out index.jsp from <welcome-file-list> 
    set dirAllowed to false in default servlet 
vi bin/jetty.sh # use $JETTY_BASE/logs instead of $JETTY_BASE as working directory 
    change 
     JETTY_RUN=$(findDirectory -w /var/run /usr/var/run $JETTY_BASE /tmp) 
     JETTY_STATE=$JETTY_BASE/${NAME}.state 
    to 
     JETTY_RUN=$(findDirectory -w /var/run /usr/var/run $JETTY_BASE/logs $JETTY_BASE /tmp) 
     JETTY_STATE=$JETTY_RUN/${NAME}.state 
vi bin/jetty.sh # use $JETTY_HOME/work as default TMPDIR 
    move following 
     TMPDIR=${TMPDIR:-/tmp} 
    below 'JETTY_HOME=$PWD' and change 
     TMPDIR=${TMPDIR:-"$JETTY_HOME"/work} 

और परिणामी संरचना।

jetty-distribution-9.1.5.v20140505 
├── bin 
│   └── jetty.sh 
├── etc 
│   ├── jetty-deploy.xml 
│   ├── jetty-http.xml 
│   ├── jetty-logging.xml 
│   ├── jetty-started.xml 
│   ├── jetty.conf 
│   ├── jetty.xml 
│   └── webdefault.xml 
├── lib 
│   └── <no change or keep only relevant> 
├── logs 
├── modules 
│   ├── deploy.mod 
│   ├── ext.mod 
│   ├── http.mod 
│   ├── logging.mod 
│   ├── resources.mod 
│   ├── security.mod 
│   ├── server.mod 
│   ├── servlet.mod 
│   ├── servlets.mod 
│   └── webapp.mod 
├── resources 
├── start.d 
│   └── http.ini 
├── start.ini 
├── start.jar 
├── webapps 
└── work 
संबंधित मुद्दे