ওয়ার্ডপ্রেস স্কেল কত ভাল হয়?


34

নতুন ওয়ার্ডপ্রেস এবং এটির নতুন বৈশিষ্ট্যগুলির সাথে দেখে মনে হচ্ছে ওয়ার্ডপ্রেস একটি সাধারণ ব্লগ ইঞ্জিনের চেয়ে অনেক বেশি সক্ষম। তবে 10k -> 100k ব্যবহারকারীরা প্রতিদিন কীভাবে ওয়ার্ডপ্রেস স্কেল ব্যবহার করছেন?

সেই অনেক ব্যবহারকারীর সাথে এর একটি বড় অংশের একটি ভাল ক্যাশে কৌশল থাকা উচিত তবে ওয়ার্ডপ্রেস সাহায্যের জন্য কতটা উন্নত, এটি সহজ করে তোলে এবং আপনাকে আপনার প্রয়োজনীয় নিয়ন্ত্রণ দেয়। এফএক্স কোনও পৃষ্ঠার অংশ ক্যাশে রাখতে সক্ষম এবং কেবল ব্যবহারকারী কাস্টমাইজড অংশ, সাপোর্ট মাস্টার / স্লেভ ডিবি সেটআপ এবং এর মতো স্টাফ সরবরাহ করতে পারে?

উত্তর:


37

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

এটি বলেছিল যে কোনও শক্তির সাথে প্রায় কিছুই " স্কোরের বাইরে" স্কেল করে না ; আপনার স্কেল্যাবিলিটিটি বাড়ার সাথে সাথে আপনি কী করতে পারেন তা সবই এই সম্পর্কে ?

কম প্রান্তে "ট্রাফিক প্রচুর" আছে মহান ক্যাশে প্লাগিন এবং সস্তা CDNs সাথে একীকরণ আপনি একটি নো-আইটি বাজেট এবং কম হোস্টিং বাজেট একটি প্রশংসনীয় ভাল কাজ করতে পারেন। এখানে পর্যালোচনা করার জন্য আরও কিছু প্রশ্ন ও উত্তর:

পারফরম্যান্সের বাধাগুলি সনাক্ত করতে প্রোফাইলিংয়ের বিকল্প রয়েছে :

প্রতিবন্ধকতা শনাক্ত হয়ে গেলে আপনি ট্রান্সিয়েন্টস এপিআইয়ের মতো জিনিসগুলির সাথে স্থানীয়করণের অপ্টিমাইজেশন করতে পারেন । এই প্রশ্নোত্তর একটি উদাহরণ দেয় যা ট্রান্সিয়েন্টস এপিআই ব্যবহার করে অনুকূলিত করা যায় এবং কীভাবে দেখায়:

আপনি জিনিস সত্যিই চাই করুন বড় বন্দুক বৈঠাচালনা আউট আপনি নির্ধারণ করতে পারেন memcached , HyperDB , nginx এবং / অথবা গতি জিনিষ আপ (এটা আধুনিক সত্যিই উপায় মধ্যে বিবর্তিত হচ্ছে ওয়ার্ডপ্রেস বাইরে আশ্চর্যজনক কর্মক্ষমতা প্রসারণ পেতে বলে মনে হয়) এর আরো

এবং অবশেষে এখানে উদীয়মান ওয়ার্ডপ্রেস- কেন্দ্রিক ওয়েবহোস্টগুলি ডাব্লুপি ইঞ্জিন , জিপ্পিকিড এবং অন্যান্যগুলির মতো পারফরম্যান্সে বিশেষীকরণ করেছে:

সুতরাং সুসংবাদটি খুব সুন্দরভাবে সমস্ত স্কেল ; প্রযুক্তিগত জটিলতার সাথে নিখরচায় এবং নিখুঁতভাবে খুব কম প্রান্ত থেকে ট্র্যাফিকের উল্লেখযোগ্য পরিমাণ বেড়ে যাওয়ার সাথে সাথে ব্যয়ও বাড়বে। ওয়ার্ডপ্রেস দিয়ে ছোট শুরু করুন এবং দুর্দান্ত হবে। যদি আপনার ট্র্যাফিক বৃদ্ধি পায় এবং আপনি এটি যথাসম্ভব ভালভাবে নগদীকরণ করছেন তবে আপনি এটির প্রয়োজন হিসাবে স্কেল করতে খুব ব্যয় প্রভাব পাবেন।

কমপক্ষে আইএমও :)


যেমন একটি পূর্ণ প্রতিক্রিয়া জন্য থ্যাঙ্কস। আমি অবাক হই, ওয়ার্ডপ্রেস এপিআইগুলি কীভাবে কোনও পৃষ্ঠার অংশগুলি ক্যাশে করার জন্য কাজ করে - তাই আপনাকে কেবলমাত্র নির্দিষ্ট নির্দিষ্ট ব্যবহারকারী তৈরি করতে হবে এবং লগইন ব্যবহারকারীদের জন্য পুরো পৃষ্ঠাটি নয় বা উচ্চ ট্র্যাফিক সাইটের জন্য এজ সাইড অন্তর্ভুক্ত ব্যবহার করতে হবে।
googletorp

মাইক, আপনি একটি জন্তু! আমি এই সাইটে যেদিকেই যাই না কেন, আমি আপনার উত্তরগুলি দেখতে পাই এবং সেগুলি দুর্দান্ত!
dgw

@ গুগলটর্প : আপনি অবশ্যই এটি করতে পারবেন, এটি কেবল হাতে- কলমে কোড নেয়। আমি দেখতে চাই যে কোনও কাঠামোটিকে আরও সহজ করার জন্য তৈরি করা যেতে পারে তবে আমি বর্তমানে দৃ rob় এবং বৈশিষ্ট্য সমৃদ্ধ কাস্টম পোস্ট ক্ষেত্রগুলি বাস্তবায়নের চেষ্টা করার দিকে মনোনিবেশ করছি। খুব শীঘ্রই হতে পারে। :) @ ভয়েজারফ্যান ৫761১ : ধন্যবাদ :)
মাইকচিন্কেল

কিরগিয়ানিস / ক্লাউড- কমপুটিং / This এটি কথোপকথনে কিছু মেট্রিক আনতে পারে।
জিও

4
  1. ভাগ করা হোস্টিং থেকে খুব বেশি আশা করবেন না - আপনি যদি কোনও শেয়ার্ড হোস্টে থাকেন তবে আলস্যতার জন্য ওয়ার্ডপ্রেসকে দোষ দেবেন না। ভাগ করা হোস্টগুলি একটি সার্ভারে অ্যাকাউন্টের সংখ্যা ক্র্যাম করে। সুতরাং আপনি একটি 10 ​​ডলার / মাসের অ্যাকাউন্টটি অনুকূলিত করে সারা দিন ব্যয় করতে পারেন এবং এটি কোনও ব্যাপার নয়। বিপণনের জন্য বুজওয়ার্ডগুলিও নজর রাখুন - কারণ এটি "মেঘ" এর অর্থ এই নয় যে আপনি এক সার্ভার ভাগ করছেন না বা শত শত লোকের সাথে।

  2. আমি মনে করি না এই মুহুর্তে ক্যাশে প্লাগইনগুলি প্রয়োজনীয়। আপনি যদি ডাব্লুপি উত্স কোডটি দেখেন তবে ইতিমধ্যে মূলটিতে উন্নত ক্যাশে রয়েছে। ক্যাশে ক্যাশের ক্যাশে একটি ক্যাশে - নজর রাখুন, এটি প্রতিরক্ষামূলক হতে পারে।

  3. আপনাকে ধীর করে দেওয়ার মূল জিনিসটি হ'ল মাইএসকিউএল ক্যোরি এবং ওয়ার্ডপ্রেস-অফ-দ্য বাক্সটি আপনাকে এখানে সমস্যা দেয় না। তবে আমাকে আমার মন্তব্য প্রশ্নের "LIMIT" করতে হয়েছিল কারণ আমার কাছে 50,000+ মন্তব্য ছিল। (এটি কি এখনও স্থির?) এছাড়াও, আপনি যদি অ্যাটিক্যাল কিছু করেন (যেমন বিভাগের সংখ্যা?) এটিও সমস্যা হতে পারে।

  4. আমি এনগিনএক্সের সাথে একটি লিনোড 512 ব্যবহার করি এবং "শীর্ষ" পিএইচপি এবং এনজিএনএক্স তাদের অনুরোধের প্রতি সেকেন্ডের 1/100 তম চেয়ে কম কাজ করে দেখায়। প্রায় সমস্ত সিপিইউ সময় মাইএসকিউএল এর সাথে জড়িত। আপনি 20 ডলার লিনোড দিয়ে প্রতি মাসে 1 মিলিয়ন পৃষ্ঠাগুলি পরিবেশন করতে পারেন তবে আপনি একবার প্লাগইন এবং ফটোগুলি যুক্ত শুরু করলে আমার মনে হয় আপনার একটি "1 জিবি" লিনোড লাগবে। আমার দৃষ্টিকোণ থেকে এটি বেশ লিনিয়ার: পৃষ্ঠাগুলি যদি দ্বিগুণ হয় তবে আপনার লিনোডের আকার দ্বিগুণ করুন।

দাবি অস্বীকার: আমি লিনোডের জন্য কাজ করি না।


আপডেট (~ 2 বছর পরে) যেহেতু আপনি পিএইচপি দিয়ে কোনও পৃষ্ঠার অংশগুলি ক্যাশে করতে চান, তাই এখানে একটি সহজ সমাধান যা আমি আশ্চর্যজনকভাবে দ্রুত ব্যবহার করি। আমি প্রতি সেকেন্ডের 1/100 তম মধ্যে পৃষ্ঠাতে পৃথক পৃথক অংশ / অংশগুলি ক্যাশে করছি। রামডিস্কের মতো মনে হয় এটি আরও দ্রুত তৈরি করতে পারে তবে এটি আমার প্রয়োজনের জন্য যথেষ্ট দ্রুত:

$cache_file = "./cache/portion-1". $since; // maybe round() this $since timestamp
$cache_life = 1000; // seconds to keep this cached
$filemtime = filemtime($cache_file);  // returns FALSE if file does not exist
if (!$filemtime or (time() - $filemtime >= $cache_life)) {

    // heavy lifting starts
    $output = 'Heavy!';
    // heavy lifting ends

    if (!file_put_contents($cache_file,$output,LOCK_EX)) { echo 'error'; } // save the cache    
    echo $output;

} else { 

    // load from cache
    $output = file_get_contents($cache_file); 
    echo $output;        
} 

0

চূড়ান্তভাবে 3 টি জিনিস রয়েছে যা স্ক্রিনে ওয়ার্ডপ্রেসকে ধীর করে দেয় এবং এগুলিতে এগুলি সিদ্ধ হয়:

  • হোস্টিং স্ট্যাক - আপনার সর্বশেষতম সফ্টওয়্যার সহ একটি ভাল হোস্ট দরকার - পিএইচপি 7, এনগিনেক্স, বার্নিশ, রেডিস, ফেলফল 2 এবং পারকোনডিডি সব ভাল পছন্দ
  • কোনও টেবিল স্ক্যান নয় - অনেক প্লাগইন অপেশাদার কোডারদের দ্বারা লিখিত রয়েছে যারা টেবিল স্ক্যান কী তা জানেন না। টেবিল স্ক্যানগুলি এড়ানোর জন্য দুটি জিনিস প্রয়োজন - একটি ব্যবহারযোগ্য সূচক এবং এমন একটি ক্যোয়ারী যাতে এমনভাবে লেখা হয় যে এটি সূচকটি ব্যবহার করতে পারে
  • পিএইচপি লুপগুলির মধ্যে কোনও বা কয়েকটি এসকিউএল কোয়েরি নেই - কিছু প্লাগইন কোড স্পষ্টতই ক্ষুদ্র সাইটগুলিতে পরীক্ষা করা হয়েছে এবং এক কারণে বা অন্য কোনও কারণে আপনার ডাটাবেসের প্রতিটি পণ্য লুপ করবে এবং প্রতিটি পণ্য / পোস্টের জন্য একটি নতুন এসকিউএল কল করবে। আপনি আদর্শভাবে প্রতি পৃষ্ঠায় 100 টিরও কম এসকিউএল ক্যোয়ারী চান - এটি প্রচুর মত শোনাচ্ছে তবে এটি সত্যই নয় এবং <100 দিয়ে আপনি প্রায় 200 মিমি বিচ্ছিন্ন একটি টিটিএফবি পাবেন।

উপরের জায়গায় একবার রাখার পরে আপনি ক্যাচিং যুক্ত করতে পারেন - যেমন বার্নিশ, সিডিএন, পৃষ্ঠা ক্যাচিং ইত্যাদি

আপনার যদি স্কেল বাড়ানোর দরকার হয় তবে আপনি ডাটাবেসের জন্য পারকোনডিবি এক্সট্রাডিবি এবং ফাইলগুলির জন্য অ্যালিসন ব্যবহার করে একটি ক্লাস্টার তৈরি করতে পারেন। এইভাবে, আপনার ডাব্লুপি-অ্যাডমিন এবং ক্রোন রানার হিসাবে আপনার 1 টি নোড থাকতে পারে এবং লোড ব্যালান্সারের পিছনে ওয়েব ট্রাফিক সরবরাহকারী অন্যান্য নোড থাকতে পারে।

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