2010-05-25 10 views
7

मुझे आश्चर्य है कि किसी ने अपाचे के लिए .so एक्सटेंशन के रूप में संकलित PHP स्क्रिप्ट्स का उपयोग या पढ़ा है ... बात यह है कि मुझे लगता है कि मुझे इसके बारे में कहीं पढ़ना याद है लेकिन यह नहीं पता कि ऐसी कोई चीज़ मौजूद है या नहीं।संकलित PHP स्क्रिप्ट मौजूद हैं?

इस होनहार, लेकिन अधूरा और परित्यक्त दिखता है: http://phpcompiler.org/

इम रुचि क्योंकि मुझे लगता है कि यह प्रदर्शन में सुधार कर सकते हैं ... शायद किसी को एक ढांचे या अपाचे विस्तार है जो ऐसा करता है का कहना है हो सकता है।

धन्यवाद !!

उत्तर

9

वे मौजूद हैं। फेसबुक द्वारा PHP के लिए हिपहॉप कंपाइलर है।
मुझे नहीं पता कि यह अपाचे के साथ काम करता है, हालांकि।
आप एक बार देख ले सकते हैं: http://developers.facebook.com/blog/post/358
Github रिपॉजिटरी: http://github.com/facebook/hiphop-php

+0

महान लगता है, बीमार अभी देखें! – dabito

6

आप इस तरह से अपने PHP स्क्रिप्ट के प्रदर्शन में सुधार करना चाहते हैं, तो आप Zend Accelerator की तरह कुछ कोशिश करनी चाहिए। यह बाइटकोड को चारों ओर रखता है इसलिए इसे हर अनुरोध पर दोबारा नहीं बदला जाना चाहिए।

+0

मुझे लगता है कि बाइटकोड रनटाइम पर व्याख्या से बेहतर है। मैं संकलित करने के लिए देख रहा था, लेकिन यह लागू करने के लिए आसान लग रहा है। धन्यवाद! – dabito

+0

या एपीसी या ई एक्सेलेरेटर का उपयोग करें, और ज़ेंड के भाषा को व्यावसायीकरण के प्रयास का समर्थन नहीं करते हैं। इसके अलावा, वे एपीसी को PHP 6 में लागू करने की योजना बना रहे हैं (लेकिन इसे डिफ़ॉल्ट रूप से बंद कर दिया जाएगा)। – Daniel

+0

@ डैनियल +1 ज़ेंड की योजनाओं का विरोध करने पर +1 =] – dabito

6

इम रुचि क्योंकि मुझे लगता है कि यह प्रदर्शन

सुधार सकता है

यह एक बहुत ही भरी हुई सवाल है। हां, यदि आप प्रति घंटे एक लाख से अधिक हिट हैंडलिंग कर रहे हैं, तो PHP को संकलित करने में बहुत वास्तविक लाभ हैं (हिपहॉप के बारे में अन्य उत्तरों देखें)। लेकिन अगर आप वास्तव में पूछना चाहते हैं कि "मैं अपनी वेबसाइट के प्रदर्शन में सुधार कैसे करूं" तो शायद यह आखिरी जवाब है कि आपको किसी को भी देना चाहिए।

यदि आप उद्देश्य चाहते हैं कि आपकी साइट तेजी से बढ़ जाए, तो आपको सबसे पहले अनुरोध करने के लिए समय लेने के तरीकों को स्थापित करने की आवश्यकता है (अधिमानतः नेटवर्क और डेटाबेस समय को वेबसर्वर समय से पृथक करना), और पृष्ठ को कैप्चर करने के लिए

  • ब्राउज़र साइड संचय
  • सर्वर साइड कैशिंग
  • opcode कैशिंग
  • क्वेरी अनुकूलन
  • : बार बारी (समय यह एक पृष्ठ पर सभी सामग्री लोड होने में लगने यानी) तो जैसे सामान को देखो
  • HTTP संपीड़न
  • ओएस और नेटवर्क ट्यूनिंग

आदि

सी

+0

+1 बेंचमार्क !! –

+0

तो आप एक संकलित भाषा में स्विच करने की कोशिश करने से पहले यह सब करने का सुझाव देंगे? काफी उचित ... हालांकि, मुझे लगता है कि चूंकि आप अभी भी संकलित लैंग्स पर सभी पूर्ववर्ती तकनीकों को लागू कर सकते हैं, इसलिए कैटरिस परिबस संकलन अभी भी आपको बढ़त देगा। उत्तर के लिए बहुत बहुत धन्यवाद, मैं उन सभी चीजों को देखता हूं जिन्हें मैं सूची से नहीं जानता था। – dabito

संबंधित मुद्दे