আমি কীভাবে পিএইচপি 7.4 এ অপচেক প্রিললোডিং সক্ষম করতে পারি?


9

আমি পিএইচপি 7.4 ব্যবহার করে আমার প্রোডাকশন সার্ভারগুলিতে ওপচী প্রিলোডিং ( আরএফসি ) সক্ষম করতে চাই । আমি সিমফনি ব্যবহার করছি , তবে এটি সমস্ত পিএইচপি-র ক্ষেত্রে প্রযোজ্য।


1
নিশ্চিত না যে reddit.com/r/PHP/comments/e8pgzi/… এটি ব্যবহারের যে কোনও পরিকল্পনাতে প্রভাব ফেলবে।
নাইজেল রেন


1
এই নিবন্ধটি পরীক্ষা করুন । আপাতত যথেষ্ট সমালোচিত বলে মনে হ'ল বাগ নাইজেরেল পোস্ট করেছেন তাও পড়ুন।
জেটো

উত্তর:


4

সবার আগে আপনার যুক্ত করা উচিত:

opcache.preload=/path/to/project/preload.php

তোমার php.ini

তারপরে আপনার পিএইচপি স্ক্রিপ্টে আপনার opcache_compile_file($file);প্রতিটি ফাইল প্রিললোড করা উচিত।


4

ব্লগ পোস্ট অনুসারে এটি তুচ্ছ বলে মনে হচ্ছে। দৃশ্যত 4.4 সাল থেকে সিমফনি একটি প্রিললোড স্ক্রিপ্ট তৈরি করে যা এতে সেট করতে হবে php.ini:

opcache.preload=/path/to/project/var/cache/prod/App_KernelProdContainer.preload.php

আমি আমার স্থানীয় ডকার পরিবেশে কিছু পরীক্ষা করেছি এবং এভাবেই চলেছে:

ওপচী ছাড়াই পিএইচপি 7.3 (বর্তমান)

Requests per second:    8.75 [#/sec] (mean)
Time per request:       114.402 [ms] (mean)

ওপচছে ছাড়াই পিএইচপি 7.4

Requests per second:    11.44 [#/sec] (mean)
Time per request:       87.417 [ms] (mean)

প্রিলোড না করে ওপচাচি সহ পিএইচপি 7.4 (অ্যাপাচি + মোডেফপি)

Requests per second:    30.25 [#/sec] (mean)
Time per request:       33.053 [ms]

প্রিলোড না করে ওপচাচি সহ পিএইচপি 7.4 (এনগিনেক্স + পিএইচপি এফএম)

Requests per second:    40.00 [#/sec] (mean)

দুর্ভাগ্যক্রমে আমি প্রিলোডিং সক্ষম করতে সক্ষম হইনি :( আমি নিম্নলিখিত ত্রুটিগুলির মুখোমুখি হয়েছি (অ্যাপাচি + মোড এবং এনগিনেক্স + এফপিএম উভয় ক্ষেত্রে):

double free or corruption (!prev)
child pid 17 exit signal Aborted (6), possible coredump (…)

এই বৈশিষ্ট্যটি যদিও ডাব্লুআইপি-র মতো দেখাচ্ছে । আমি এই উত্তরটি পুনরায়করণ করতে চলেছি যখন আমি এই প্রিলোডিং জিনিসটি ব্যবহার করতে সক্ষম হয়েছি। সামগ্রিক আমি বেশ পিএইচপি থেকে অভিভূত + 30% কর্মক্ষমতা শুধু আপগ্রেড দ্বারা 7.3করতে 7.4

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.