क्या PHP 5.4 या PHP 5.5 के साथ एपीसी संगत है?




installation apc (10)

ज़ेंड ओपेकैच PHP 5.5 में शामिल है

21 मार्च 2013 को, PHP 5.5 बीटा 1 को "ज़ेंड ओपेकैच" समेत रिलीज़ किया गया था - यह दृढ़ता से दिखता है कि यह एपीसी आगे बढ़ने के लिए प्रतिस्थापन होगा क्योंकि इसे PHP कोर में शामिल किया गया है, और प्रत्येक नए के लिए इसे बनाए रखना होगा रिहाई।

मैं व्यक्तिगत रूप से उन लोगों को सलाह दूंगा जो आने वाले अंतर्निहित ऑपोड कैश के साथ अपने कोड का परीक्षण करने के लिए एपीसी पर ओपोड कैशिंग के लिए निर्भर हैं, और एक स्थिर अंतिम रिलीज सुनिश्चित करने के लिए सामने आए किसी भी मुद्दे को वापस खिलाएं।

मुझे नहीं पता कि एपीसी के भविष्य के लिए इसका क्या अर्थ है।

PHP 5.4+ के लिए एपीसी अभी भी बीटा के रूप में फंस गया है

इसका मतलब है कि डेवलपर्स इसे पूरी तरह से स्थिर नहीं मानते हैं। जबकि वर्तमान में एसवीएन रिलीज के साथ बहुत से लोगों को कोई समस्या नहीं आ रही है, फिर भी कुछ विन्यासों के तहत लोगों के किनारे के मामलों की भारी रिपोर्ट है, या भारी भार के तहत।

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

3.1.13 रिलीज के अनुसार, एसवीएन रिपोजिटरी के लिए प्रतिबद्ध कुछ हद तक धीमा हो गया है और बग सूची में हाल ही के कुछ जोड़े नहीं हैं। उस काम के बारे में सोचें जिसे आप करेंगे।

10 दिसंबर 2012 21:05 को, रasmस लेरडोर्फ़ ने लिखा:

एपीसी अब 5.4 के लिए है, जहां मुझे नहीं लगता कि 5.3 में हमारे पास कोई और बढ़िया मामला है। न तो सही है, लेकिन यह साइटों के बहुमत के लिए काफी करीब है।

सी / जीडीबी कौशल और कुछ खाली समय वाले किसी भी व्यक्ति को बग सूची पर चमकने का आग्रह किया जाता है और देखें कि क्या वे कुछ भी ठीक कर सकते हैं या इस मुक्त ओपन सोर्स उत्पाद को बेहतर बना सकते हैं जिसे हम सभी भरोसा करते हैं।

वैकल्पिक समाधान मौजूद हैं, विकिपीडिया PHP त्वरक की एक सूची प्रदान करता है।

13 फरवरी 2013 को, ज़ीव सुरस्की ने ज़ेंड ऑप्टिमाइज़र + स्रोत कोड की उपलब्धता की घोषणा की।

अगले प्रमुख संस्करण (5.5 के बाद संस्करण) में PHP कोर में ज़ेंड ऑप्टिमाइज़र + को एकीकृत करने के बारे में काफी लंबी चर्चा हुई है । लोग ज़ेंड ऑप्टिमाइज़र + के साथ खुद को परिचित करना चाहते हैं, यह मामला होना चाहिए।

एपीसी 3.1.14 का प्रयोग न करें

एपीसी 3.1.14 को कुछ गंभीर स्मृति मुद्दों के कारण पीईसीएल डाउनलोड से हटा दिया गया है, लेकिन अभी तक ट्रैक नहीं किया गया है।

यदि आप पहले ही 3.1.14 का उपयोग कर रहे हैं, तो आप 3.1.15 जारी होने तक डाउनग्रेड करना चाहेंगे। याद रखें, यह अभी भी बीटा है । यदि आप इसका उपयोग कर रहे हैं, तो आप इसे अपने जोखिम पर उपयोग कर रहे हैं।

2013-01-02 :
एपीसी 3.1.14 उपलब्ध है , अन्य बग की उचित संख्या को हल करने के अलावा, PHP 5.5 संगतता जोड़ना

अभी भी बीटा

2012-09-03 :
एपीसी 3.1.13 उपलब्ध है, कई segfaults फिक्सिंग

2012-08-16 :
एक एपीसी 3.1.12 टैग बनाया गया है, लेकिन अभी भी बीटा के रूप में चिह्नित है, यह एपीसी पीईसीएल पेज पर उपलब्ध है, साथ ही changelog
इस समय के आसपास तय bin_dump संबंधित बग के बहुत सारे।

2012-07-19 :
एक एपीसी 3.1.11 टैग बनाया गया है, लेकिन अभी भी बीटा के रूप में चिह्नित है, यह एपीसी पीईसीएल पृष्ठ पर उपलब्ध है, साथ ही changelog मैं प्रासंगिक मेलिंग सूचियों का पालन कर रहा हूं, और वे अभी भी सक्रिय रूप से एपीसी कीड़े को ठीक करने पर काम कर रहे हैं, हालांकि यह एक जटिल मॉड्यूल है और बहुत से लोग कार्य तक नहीं लगते हैं। फ़ाइलों को शामिल करते समय यह रिलीज खराब स्टेट = 0 बग को हल करता है।

2012-04-11 :
एक एपीसी 3.1.10 टैग आज बनाया गया था, और 3.1.10 की बीटा रिलीज एपीसी पीईसीएल पेज पर रखा गया था
changelog कहता है:

  • PHP 5.4 समर्थन जोड़ें (दिमित्री, अनातोली, पियरे)
  • फिक्स्ड बग # 22679: स्थिरांक के लिए apc_bin_dump को ठीक करें। सभी स्थिरांक को संभालने के लिए IS_CONSTANT_TYPE_MASK का उपयोग करें, जिसमें अयोग्य वाले (~ IS_CONSTANT_INDEX चेक के बजाय) शामिल हैं।
  • फिक्स्ड बग # 23822, apache पुनरारंभ पर PHP क्रैश

ऐसा लगता है कि एपीसी को PHP 5.4 रिलीज के साथ मेल नहीं किया गया है (मेरी इच्छा है कि वे मूल रूप से योजनाबद्ध रूप से PHP कोर में एपीसी शामिल करेंगे)।

मुझे वर्तमान एपीसी PHP 5.4+ के साथ काम करने के लिए कोई निश्चित उत्तर नहीं मिल रहा है। मैं PHP 5.4 के लिए उबंटू पैकेज ढूंढने में कामयाब रहा, लेकिन php-apc संकुल संस्थापित नहीं होंगे।


PHP 5.4.7 और एपीसी 3.1.13 (और 2012-09-19 के रूप में एपीसी एसवीएन ट्रंक के रूप में), हालांकि यह "संगत" है, यह भारी भार वाले सर्वर पर स्थिर नहीं है, खासकर अगर आप PHP- एफपीएम और $ ग्लोबल्स। अनसुलझा सीमा मामलों के बारे में एपीसी बात पर कुछ डेवलपर चर्चाएं।

मैं पूछे जाने के 6 महीने बाद इस सवाल का जवाब दे रहा हूं क्योंकि समस्या अभी भी प्रचलित है, और इस धागे का सामना करना मेरे जैसे उत्तर है, जिसने मुझे PHP 5.4 डब्ल्यू / एपीसी को छलांग लगाई और जला दिया। उम्मीद है कि यह लोगों को कुछ दर्द से बचने में मदद करेगा।


एपीसी का एक नया संस्करण है: 3.1.14 2 जनवरी से, जो कुछ बग हल करता है: http://pecl.php.net/package/APC

हालांकि, मैं अब तक किसी भी मुद्दे के बिना dotdeb भंडार से एपीसी 3.1.13 के साथ PHP 5.4.x चला रहा हूं, इसलिए मेरे लिए मैं कहूंगा कि यह स्थिर है। डॉटडेब ने मुझे यह भी बताया है कि वे PHP की अगली रिलीज में अद्यतन एपीसी शामिल करेंगे, जो 5.4.11 होने की उम्मीद है।


ऐसा लगता है कि अभी तक कुछ मुद्दों को दूर किया जा सकता है। bugs और आप यह समझने में सक्षम होंगे कि आपकी विशेष समस्या का समाधान क्या है।

मैंने कुछ घंटों पहले इस तरह की एक त्रुटि से निपटाया, और यह पता चला कि एसवीएन ट्रंक से एपीसी का उपयोग करने का तरीका था। उम्मीद है की यह मदद करेगा!


खैर, मैं पिछले कुछ दिनों से कोशिश कर रहा हूं, और कोई रास्ता नहीं है कि मैं PHP 5.4 के साथ काम करने के लिए एक ओपोड कैचर प्राप्त कर सकता हूं। एक्सकैच संकलित नहीं होगा, और एपीसी कैश किए जाने पर कुछ कक्षाओं को पहचान नहीं पाएगा। मुझे लगता है कि साइमन इस बारे में बात कर रहा है।

मैंने सुना है कि ट्रंक में कुछ फिक्स थे, लेकिन मैंने नवीनतम ट्रंक स्रोतों को भी आजमाया, लेकिन वही त्रुटियां वापस आ रही हैं। मुझे लगता है कि एक ओपोड कैचर के बिना php (अभी कोई भी उपलब्ध नहीं है) उत्पादन योग्य नहीं है। आशा है कि एपीसी के लोग इस एएसपी को ठीक करेंगे।

अद्यतन करें!!!

एक्सकैच 2.0.0-आरसी 1 बाहर है और PHP 5.4 के साथ संगत है। का आनंद लें!


नहीं, एपीसी 1.3.9 (और इस पल के रूप में, यहां तक ​​कि एसवीएन ट्रंक) php 5.4.0 के साथ संगत नहीं है, मुझे पता है क्योंकि मैंने इसे काम करने के लिए बस घंटों बिताए हैं (विभिन्न svn / php का परीक्षण किया है। आईएनआई सेटिंग्स / कंपाइलर झंडे / आप इसे नाम दें)।

यह सिर्फ हास्यास्पद है, एपीसी सबसे लोकप्रिय PHP एक्सटेंशन में से एक है और आप 8 PHP 5.4 आरसी के माध्यम से जाने के हफ्तों के बाद उम्मीद करेंगे कि उनके पास एपीसी के साथ काम करने का समय होगा।

दयनीय।


मैं PHP संस्करण 5.5.19 के साथ एएमपीपीएस का उपयोग कर रहा हूँ। चूंकि कुछ समय अब ​​PHP 5.5 के रिलीज से - एपीसी को ज़ेंड ओपेकैच के साथ बदल दिया गया है जो PHP 5.5 और बाद में शामिल है। अब आपको "एपीसी" (वर्तमान में "ओपेकैच") सक्षम करने के लिए करना है, अपने php.ini को संपादित करना है। [XDebug] से पहले बहने वाली रेखाएं जोड़ें:

php.ini

...

[OPcache]

zend_extension=php_opcache.dll

opcache.enable=1
opcache.enable_cli=1
opcache.memory_consumption=512
opcache.interned_strings_buffer=24
opcache.max_accelerated_files=4000
opcache.revalidate_freq=3
opcache.fast_shutdown=1

...

कृपया ध्यान दें कि हमें दो उदाहरण होने की आवश्यकता है:

zend_extension =

[ओपेकैच] में से एक और [एक्सडीबग] अनुभाग में से एक। Xdebug को अक्सर आपके xampp / ampps / easyPHP सर्वर स्थापना में डिफ़ॉल्ट के रूप में प्रदान नहीं किया जाता है। आप खुद को ऐसी स्थिति में पा सकते हैं जहां आपको Xdebug एक्सटेंशन डाउनलोड करना होगा। आप इसे ऑनलाइन एप्लिकेशन का उपयोग करके आसानी से कर सकते हैं जो आपके PHP के लिए सही Xdebug को परिभाषित करता है। http://xdebug.org/wizard.php जाएं और उनके सरल निर्देशों का पालन करें। एक बार जब आप अपने PHP संस्करण के लिए Xdebug का सही संस्करण डाउनलोड कर लेंगे - [zDebug] अनुभाग में अपने zend_extension के लिंक को संपादित करें।

...

[XDebug]
zend_extension = "C:\Program Files (x86)\Ampps\php\ext\php_xdebug-2.2.6-5.5-vc11.dll"
......

कृपया ध्यान दें! कि आपको अपनी php.ini फ़ाइल में XDebug से पहले OPcache अनुभाग जोड़ना होगा !!! यदि आप मेरे साथ सही तरीके से पालन करते हैं तो आपके पास अपनी php.ini फ़ाइल में zend_extension के दो उदाहरण हो सकते हैं (ओपेकैच में से एक और Xdebug अनुभाग में से एक)।

यह सिम्फनी 2 ढांचे के लिए पूरी तरह से काम करता है, और आपके PHP और Xdebug के लिए एपीसी स्थापित करने और सक्षम करने के लिए अनुशंसा संदेश को समाप्त करता है।

उन लोगों को संदेश जो सिम्फनी 2 चलाते हैं और "web / config.php" से चेतावनी संदेश हटाते हैं, लेकिन फिर भी कमांड लाइन "php app / check.php" से चलकर एक समस्या का सामना करते हैं। यदि ऐसा होता है, तो इसका मतलब है कि आपका कंसोल एक अलग php.ini फ़ाइल का उपयोग कर रहा है। अपने सिस्टम को पाथ वैरिएबल बदलें - इसे सही php निर्देशिका पर इंगित करें (जहां आपके पास आपकी php.exe फ़ाइल है और जिसका उपयोग आपके स्थानीय सर्वर द्वारा किया जाता है)।

यदि आपको गहन स्पष्टीकरण की आवश्यकता है तो मुझे नीचे दी गई टिप्पणी में बताएं। सादर।


मैंने पाया है कि आपको प्रत्येक पृष्ठ अनुरोध पर ओपोड कैश को साफ़ करने की आवश्यकता है अन्यथा कक्षाएं जो इंटरफेस को लागू करने में विफल होती हैं। यह नवीनतम svn ट्रंक, अपाचे 2.4.1, PHP 5.4.0 से संकलित किया गया था।


Php / ext निर्देशिका में php_opcache.dll नाम के तहत PHP 5.5 में Zend OPCache शामिल है इसे सक्रिय करने के लिए:

  • Php_opcahe.dll फ़ाइल को अपनी php.ini कॉन्फ़िगरेशन फ़ाइल में ज़ेंड एक्सटेंशन के रूप में जोड़ें।
  • प्रारूप zend_extension = path / to / php / ext / php_opcache.dll प्रारूप का प्रयोग करें।
  • अपने php.ini कॉन्फ़िगरेशन में xDebug zend_extension से पहले zend_extension रखें
  • अपनी php.ini कॉन्फ़िगरेशन फ़ाइल सहेजें और अपने सर्वर को पुनरारंभ करें।

एपीसी - अनुशंसित नहीं है
व्यक्तिगत रूप से मैंने PHP 5.4 या PHP 5.5 के साथ एपीसी का उपयोग नहीं किया है, लेकिन नवीनतम स्थिर एपीसी PHP 5.4 के साथ संगत नहीं है, नवीनतम बीटा एपीसी 5.4 के साथ उपयोग किया जा सकता है लेकिन यह लिखा गया है कि अभी भी एपीसी के साथ नकारात्मक समस्याएं हैं।

यदि आपके पास PHP 5.5 है
बस ज़ेंड ओपेकैच का उपयोग करें। यह बॉक्स से बाहर है, इसलिए समस्याएं न्यूनतम हैं।

यदि आपके पास PHP 5.4 है
मैं XCache की सलाह देते हैं। यह PHP 5.4 और 5.5 के साथ पूरी तरह से संगत है। सक्रिय रूप से विकसित अंतिम स्थिर संस्करण 3.5 महीने पहले जारी किया गया था (10 अक्टूबर 2013)। यदि आप fastcgi का उपयोग करते हैं तो भी यह प्रदर्शन में सुधार करता है।





apc