মেমচেচড বনাম এপিসি কোনটি নির্বাচন করা উচিত? [বন্ধ]


161

আমি এই নিবন্ধটি পড়েছি: http://www.mysqlperformanceblog.com/2006/09/27/apc-or-memcached/ থেকে যখন ফিরে আসছি .. আমি সেরা ক্যাশে ইঞ্জিনটি পেতে চাই যাতে আমার অ্যাপ্লিকেশনটি দ্রুততর হয়। অবশ্যই আমি ওভার-ক্যাশে করতে চাই না তবে আমি কমপক্ষে সেখানে সেরা জিনিসটি বেছে নিতে চাই। সেই নিবন্ধে এটি বলেছে মেমক্যাচড ধীর এবং এপিসি দ্রুত তাই কেন সবাই মেমক্যাচ পছন্দ করছেন ?

http://framework.zend.com/manual/en/zend.cache.backends.html#zend.cache.backends.twolevels এখানে বলা হয়েছে "এপিসি, মেমকেচে ... এবং একটি মত একটি দ্রুত (তবে সীমিত) ব্যবহার করুন ফাইল, স্ক্লাইটের মতো "স্লো" ... "আপনি কি এপিকে দ্রুত এবং মেমক্যাসকে ধীর হিসাবে ব্যবহার করা ভাল ধারণা বলে মনে করেন?


14
বিটিডাব্লু: আপনার ব্যবহার না করা সত্ত্বেও আপনার এপিসি ব্যবহার করা উচিত apc_store। ওপকোড ক্যাশে একা পিএইচপি কয়েকগুণ দ্রুত করে তোলে।
কর্নেল

@ পার্নেল: আপনার মানে কী? আমার স্ক্রিপ্টগুলিতে কিছু ক্যাশে কোড যুক্ত না করা সত্ত্বেও এপিসি কি কেবলমাত্র ইনস্টলেশনের পরে পিএইচপি গতি বাড়ায়?
মার্কো ডেমাইও

5
@ মার্কো দেমাইও: আসলেই। এপিসি মূলত একটি পিএইচপি অপ্টিমাইজার (যতক্ষণ না এটি সক্ষম থাকে ততক্ষণ ডিফল্টরূপে অনুকূলিত হয়) এবং এর apc_store()উপরে কেবল একটি অতিরিক্ত বোনাস।
কর্নেল

3
2014-এ, আপনি যদি কেবলমাত্র 1 টি সার্ভারে ক্যাশে দেওয়ার জন্য এটি ব্যবহার করেন তবে এপিসি-তে যান।
ফ্লিয়ন

উত্তর:


268

মেমক্যাচড একটি বিতরণ করা ক্যাচিং সিস্টেম, যেখানে এপিসি অ-বিতরণ - এবং প্রধানত একটি অপকোড ক্যাশে।

যদি (এবং কেবলমাত্র) আপনার কাছে একটি ওয়েব অ্যাপ্লিকেশন রয়েছে যা বিভিন্ন ওয়েবসার্ভারে (লোডবালেন্সিং) বেঁচে থাকতে পারে, আপনাকে বিতরণকৃত ক্যাচিংয়ের জন্য মেমক্যাচ ব্যবহার করতে হবে। যদি তা না হয় তবে কেবল এপিসি এবং এর ক্যাশে আটকে থাকুন।

আপনার সর্বদা একটি অপকোড ক্যাশে ব্যবহার করা উচিত, যা এপিসি হয় (এছাড়াও এপিসি পিএইচপি 6 আইরিকের সাথে সংহত হয়ে যাবে, তবে কেন এখনই এটি ব্যবহার শুরু করবেন না)।

আপনি উভয় বিভিন্ন উদ্দেশ্যে ব্যবহার করতে পারবেন / করতে পারেন।


5
অত্যাশ্চর্য উত্তর +1। আমার প্রশ্ন এখন একটি opcodeক্যাশে কি ?
মার্কো ডেমাইও

4
@ কার্সটেন যদি আপনার আলাদা আলাদা সার্ভার (মেঘের ভারী ভারসাম্যহীন পরিবেশের মতো) থাকে তবে যতক্ষণ না আপনার এগুলির জুড়ে রাষ্ট্র বজায় রাখা / ভাগ করে নেওয়া প্রয়োজন না হয়, এপিসি স্ট্রেট আপ মেমোরি ক্যাশে হিসাবে ভাল কাজ করবে - যদিও এটি প্রতিটিের মতো অনুকূল নয় মেঘের উদাহরণটি তাদের নিজস্ব ক্যাশে গরম করতে হবে ...
রায়

35
একটি opcodeক্যাশে এমনটি যা প্লেন পিএইচপি কোডটি মেশিন কোডে সংকলন করে ("অপকোড") এবং তারপরে এটি ভবিষ্যতের অনুরোধগুলির জন্য সংকলিত আকারে সংরক্ষণ করে (যতক্ষণ না এটি আসল পিএইচপি ফাইলটি পরিবর্তন না করে)। এর অর্থ এই যে পিএইচপিকে কিছুটা সময় সাশ্রয় করে প্রতিটি অনুরোধে এই সংকলন পদক্ষেপটি চালাতে হবে না। দ্রুত সাইট (অনেকের মধ্যে) নিশ্চিত করতে এটির অন্যতম উপায়।
সাইমন পূর্ব

2
এখানে একটি আকর্ষণীয় স্লাইডশো রয়েছে যা চিত্র এবং মাপদণ্ডের
সাইমন ইস্ট

1
এপিসির পরিবর্তে অ-বিতরণ ব্যবস্থায় মেম্যাচড ব্যবহার করা যেতে পারে? ভবিষ্যতে আপনার কাছে আরও বেশি মেশিন থাকলে কেবল একটি রাখা ভাল। ঠিক আছে? বা সেগুলি উভয়ই ব্যবহার করুন, একটি অপকোডের জন্য এবং অন্যটি এক্সটেনসিবল ক্যাশেিংয়ের জন্য?
আদিব অরওই

43

যদি আপনাকে বেশ কয়েকটি ওয়েব সার্ভার জুড়ে রাষ্ট্র সংরক্ষণের প্রয়োজন হয় তবে মেমক্যাচ করা হয়েছে (যদি আপনি ভারসাম্যপূর্ণ ভারসাম্যপূর্ণ হন এবং এটি গুরুত্বপূর্ণ যে ক্যাশে রয়েছে তা সমস্ত সার্ভারের জন্য একই)।

এপিসি যদি আপনার (বা প্রতিটি) সার্ভারে পড়ার (এবং লেখার) জন্য দ্রুত মেমোরিতে অ্যাক্সেসের প্রয়োজন হয়।

মনে রাখবেন এপিসি আপনার স্ক্রিপ্ট সম্পাদনের সময়টি সংকলন ও গতি বাড়িয়ে দিতে পারে। সুতরাং আপনি উদাহরণস্বরূপ, ক্যাশে সঞ্চয়ের জন্য ম্যাকচেড ব্যবহার করার সময় বর্ধিত কার্যকর সম্পাদনের জন্য এপিসি ব্যবহার করতে পারেন।


3
এপিসিও স্টোরেজ ক্যাশে করতে পারে .... বা?
মিঃ_অ্যাপ

7
২০১৪ আপডেট: পিএইচপি 5.5 এ জেন্ডি অপ্টিমাইজার প্লাসকে অন্তর্ভুক্ত করবে (যা কেবল ওপচেশের জন্য, তাই ব্যবহারকারী ক্যাশে নয়) এবং এটি পিএইচপি 5.4 এর বাইরে এপিসি বিকাশিত হবে না বলে মনে হয়? তবে এখন রয়েছে এপিসি pecl.php.net/package/APCu , যা কেবলমাত্র এপিসির ব্যবহারকারী ক্যাশে অংশ নিয়েছিল
ফ্লিয়ন

18

এপিসির প্রধান অগ্রগতি হ'ল অপকোড ক্যাশে। যেহেতু পিএইচপি 5.5 এর মূল সাথে সংযুক্ত ওপিসি এবং পিএইচপি 5.4 এর জন্য এপিসি এখনও বিটা হিসাবে চিহ্নিত হয়েছে, এটি আনুষ্ঠানিক ঘোষণা নয়, তবে অদূর ভবিষ্যতে এপিসির উন্নয়ন বাদ দেওয়া হবে।

সুতরাং আমি আপনাকে মেমক্যাচড চয়ন করার পরামর্শ দিচ্ছি would


5
আমি এটি চিন্তা করতে ওয়েবে ঘন্টা সময় ব্যয় করেছি এবং আমারও একই উপসংহার রয়েছে।
নিকোলাস জোজল

9

আমি উভয়কে গতির জন্য এবং অন্যটি আমার সমস্ত সার্ভার সিঙ্ক করতে ব্যবহার করি use আপনি যদি মেমকেচ ব্যবহার করেন তবে দয়া করে উন্মুক্ত পোর্টগুলি মনে রাখবেন যা আপনাকে iptables দিয়ে ব্লক করতে হবে।


6

ওহে থমাসাচাফ, আমি আশা করি এটি আপনার জন্য দেরী নয় তবে দয়া করে মনে রাখবেন যে এপিসির "ব্যবহারকারী-ক্যাশে" সম্পর্কিত কিছু সমস্যা রয়েছে। একটি দীর্ঘ গল্প সংক্ষিপ্ত করার জন্য, আপনি যখন ক্যাশে প্রবেশের সময়সীমা নির্ধারণ করেন বা আপনার অ্যাপাচি যদি অভ্যন্তরীণ এপিসি কোডের (ক্রমশঃ উদাহরণস্বরূপ) অভ্যন্তরে ক্রাশ হয়ে যায়, তবে আপনি কিছু সমস্যায় ভুগতে পারেন।

এখানে সমস্যাটি সম্পর্কে আমার একটি এন্ট্রি রয়েছে: http://nirlevy.blogspot.com/2009/06/apc-futexwait-lockdown-make-your-apache.html , এবং আপনারও http: //t3.dotgnu পড়তে হবে । তথ্য / ব্লগ / পিএইচপি / ব্যবহারকারী-ক্যাশে-টাইমবম্ব এইচটিএমএল (আমার মনে হয় এমন একটি এপিসি বিকাশকারী থেকে)


22
আমি এটিকে হোঁচট খেয়েছি এবং আপডেট করতে চেয়েছিলাম যে এটি এখনই সম্বোধিত হয়েছে বলে মনে হয় (যেমনটি হওয়া উচিত, 2 বছর পরে!)। এখানে একটি বন্ধ বাগ রিপোর্ট রয়েছে, উদাহরণস্বরূপ: bugs.debian.org/cgi-bin/bugreport.cgi?bug=572529
শেন এইচ

1

আমি কেবলমাত্র এপিসি ব্যবহার করি যেহেতু এপিসি একটি কোড ক্যাশে এবং মেমক্যাসের মতো কাজ করে! 2 এর পরিবর্তে 1 টি কনফিগার ফাইল।

এবং উভয় ক্যাশে নিরীক্ষণের জন্য কেবল 1 স্থান .....


1

এটি আপনি যা করছেন তার উপর নির্ভর করে তবে আমার ড্রুপাল ওয়েবসাইটগুলি ভিপিএসে চলার জন্য আমি দেখতে পাই যে এপিসি দুর্দান্ত কাজ করে! আপনি যদি সেন্টোস 6 চালিয়ে যাচ্ছেন তবে এটি ইনস্টল করার জন্য এত মৃত সহজ ইয়ম আপডেট হিসাবে উপলব্ধ এবং ডিফল্ট হিসাবে কোনও কনফিগার যুক্তিসঙ্গত নয়। না কোনও মস্তিষ্কের ইমো।

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