মাইএসকিএল সার্ভার চালাতে পারে প্রতি সেকেন্ডে কতজন?


19

আমি একটি ব্যবসায়িক পরিকল্পনা লিখছি এবং আমার ওয়েবসাইটটি 500.000 অনন্য দর্শনার্থীর কাছ থেকে কখন পৌঁছানো হবে সে জন্য আমাকে ব্যয় অনুকরণ করতে হবে।

  • দর্শক: 500.000
  • পৃষ্ঠা ভিউ: 1,500,000
  • মাকড়সার পৃষ্ঠাগুলি: 500,000
  • মোট পৃষ্ঠাগুলি: 2,000,000

প্রতিটি পৃষ্ঠা 50 টি কোয়েরি করে +

  • প্রতিদিন অনুসন্ধান: 100 মিলিয়ন
  • প্রতি ঘন্টা: 4 মিলিয়ন
  • প্রতি মিনিট: 70,000
  • প্রতি সেকেন্ড: 1,200
  • শিখর: 3,000

এই গণনাটি করা আমার 3000 ক্যোয়ারী দ্বিতীয় প্রয়োজন ... কোন ধরণের সার্ভার এটি পরিচালনা করতে পারে?

সমস্যাটি হ'ল: আসলে আমার সাইটটি প্রতিদিন ২,০০০ টি পরিদর্শন করছে এবং + + 150/200 ক্যোয়ারী / সেকেন্ড রয়েছে ... এই বিন্দু থেকে শুরু করে আমি 50,000 ক্যোয়ারী / সেকেন্ড আশা করব।

ক্লাস্টার বা প্রতিরূপে আমার কতগুলি সার্ভারের প্রয়োজন তা এই কাজটি পরিচালনা করে?


5
8k + কি ধরণের সাইটটি একটি দর্শন জিজ্ঞাসা করে?
ইগনাসিও ওয়াজকেজ-আব্রামস

5
আপনার এখনই একটি সিস্টেম ডিজাইন পর্যালোচনা প্রয়োজন।
চপার 3

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

> 8k + কি ধরণের সাইটটি একটি দর্শনটি জিজ্ঞাসা করে? আমি 2000 টি অনন্য দর্শনার্থী পেয়েছি তবে প্রতিটি দর্শনার্থীর অনেক পৃষ্ঠা খোলে, আমার ভিতরে অনেক মাকড়সা রয়েছে। 2000 অনন্য ব্যবহারকারী 6000 অনন্য আইপিএস উত্পাদন করে যা 120.000 পৃষ্ঠাগুলি প্রতিদিন খোলায়। ধন্যবাদ

উত্তর:


22

আমি প্রতিদিন কয়েক মিলিয়ন পেজ হিট করে এমন একটি ওয়েবসাইট সহ একটি ই-বাণিজ্য সংস্থায় কাজ করতাম। আমাদের কাছে একটি সিঙ্গেল ডিএল পিই 1750 ছিল 2 টি সিঙ্গল কোর সিপিইউ এবং 2 জিবি র‌্যাম, ডাটাবেস আকার প্রায় x 4 জিবি. শিখর সময়ে এই সার্ভারটি প্রতি সেকেন্ডে 50k + কোয়েরি পরিচালনা করে।

এটি বলার পরে: ডাটাবেসটি সুসংগঠিত ছিল, সমস্ত কোয়েরিগুলি সূক্ষ্মভাবে সুর করা হয়েছিল (আমাদের সাপ্তাহিক সেশনগুলি স্লো ক্যোয়ারী লগগুলি বিশ্লেষণ করে কোয়েরি এবং সূচিপত্রগুলি ঠিক করা ছিল) এবং সার্ভার সেটআপটিও সূক্ষ্মভাবে সুরক্ষিত ছিল। ক্যাচিং অবশ্যই একটি ভাল ধারণা, তবে মাইএসকিউএল যেভাবেই হোক না কেন, আপনাকে কেবল পারফরম্যান্সটি বিশ্লেষণ করতে হবে এবং তারপরে আপনার মেমরিটি কীভাবে ব্যবহৃত হয় তা সূক্ষ্ম টিউন করতে হবে (ক্যোয়ারী ক্যাশে বনাম অন্যান্য বিকল্পগুলি)।

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


8

এগুলি সবই নির্ভর করে যে ক্যোয়ারীটি কতটা জটিল এবং সার্ভারগুলির কত স্মৃতি রয়েছে এবং ডিস্কগুলি কত গতিযুক্ত।

যদি প্রশ্নগুলি খুব সাধারণ হয় বা খুব ভালভাবে সুরযুক্ত হয় তবে একক বৃহত ডাটাবেস সার্ভার এটি পরিচালনা করতে পারে। তবে যদি ক্যোয়ারীগুলি খুব জটিল হয় (বা সাধারণ তবে খারাপভাবে সুর করা হয়) তবে আপনার বেশ কয়েকটি সার্ভারের প্রয়োজন হবে।


বা কিছু মারাত্মক স্কিমা পরিবর্তন এবং পুনর্নির্মাণ করা হচ্ছে ...
ম্যাসিমো

3
আরও হার্ডওয়্যার যুক্ত করার তুলনায় টিউনিং সর্বদা পছন্দসই। সমস্যাটি সমাধান করা আরও কঠিন হয়ে ওঠার সাথে সাথে আরও হার্ডওয়ার যুক্ত করা সমস্যার সমাধান করে দেয়।
mrdenny

উত্তরের জন্য ধন্যবাদ, তাই আমি মনে করি যে redundance জন্য সমান্তরাল + 1 প্যাসিভ 2 টি সার্ভার ঠিক আছে, ঠিক আছে? আমি 32 গ্রাম রাম এবং দ্রুত ড্রাইভ সহ 2x কোয়াড কোর সার্ভারের কথা বলছি। আমি কি সঠিক? মনে রাখবেন যে আমার অভিনয় দরকার!

1
সবকিছু ভালভাবে সাজানো এবং সূচিকৃত, আমার প্রতি সপ্তাহে 1 বা 2 ধীরে ধীরে ক্যোরি রয়েছে (এবং ধীর-ক্যোরি-সময়টি মাত্র 2 সেকেন্ড) যাইহোক আমি একটি ব্যবসায়িক পরিকল্পনা লিখছি, এবং আমি কী ধরনের সার্ভার পুলটি করতে পারি তা জানতে চাই 12,000,000 পৃষ্ঠাগুলি 8000 ক্যোয়ারী / সেকেন্ডের সাথে প্রতিদিন উত্পন্ন উত্পাদক পরিচালনা করুন

এক সেকেন্ডে 8000 ক্যোয়ারী এতটা না। একটি একক 16 কোর সার্ভার সম্ভবত কৌশলটি করবে। RAM৪ জিগ র‍্যাম (বা কোনও বা একাধিকবার ডেটাবেস কত বড় এবং কতটুকু ডেটা ক্যাশে রাখতে হবে তার উপর নির্ভর করে) কৌশলটি করা উচিত। আমার ডিবি (এর এসকিউএল সার্ভার মঞ্জুর করা হয়েছে) রম সার্ভারের 16 কোর 64 গিগের 1 টিবি হ'ল 40-50k ব্যবহারকারীরা প্রতিদিন এটি প্রতি মিনিটে কয়েকবার (প্রতিটি) কয়েকবার পর্যন্ত আঘাত করে।
mrdenny

3

আপনি যে নির্দিষ্ট অনুসন্ধানগুলি চালাচ্ছেন, ডাটাবেস স্কিম এবং এর আকার সম্পর্কে কিছু না জেনে এটি সত্যই অনুমান করা যায় না।

একটি সরল একটি সূচীবদ্ধ কলাম নির্বাচন হয় বেশ অ-সূচীবদ্ধ বেশী উপর ভিত্তি করে যোগদান করে একটি দম্পতি থেকে একটি আলাদা জন্তু ... এবং অবশ্যই কিছু অনেক পরিবর্তন জড়িত টেবিল 1K রেকর্ড বা 1M ধারণ করে।

এছাড়াও:

  • আপনার বর্তমান হার্ডওয়্যার কনফিগারেশন কি?
  • বর্তমান সার্ভারের অধীনে আপনার সার্ভারটি এর কতটি শক্তি (সিপিইউ, র‌্যাম, ডিস্ক আই / ও) ব্যবহার করছে?

আসলে আমার সাথে 2 গিগাবাইট কোয়াড কোর সহ 8 জিবি র‌্যামের একটি সার্ভার রয়েছে। আমি সম্পূর্ণ র্যাম এবং 100% প্রসেসর ব্যবহার করছি (মনে হচ্ছে আমি 800% ব্যবহার করতে পারি, এখানে দেখুন:) সিপিইউ: img834.imageshack.us/img834/3483/downloadv.png র্যাম: img442.imageshack.us/i/ ডাউনলোড2 p.png ডিস্ক: img213.imageshack.us/i/download1x.png ধন্যবাদ

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

আমি সমস্ত সিপিইউ কোর ব্যবহার করার তথ্য কীভাবে খুঁজে পাব? আমি প্রদীপ ব্যবহার করছি ...

প্রথমত, আপনার পরীক্ষা করা উচিত যে আপনি সেগুলি ব্যবহার করছেন না কারণ তাদের কোনও প্রয়োজন নেই (= কম লোড), কারণ আপনার ক্রিয়াকলাপগুলি সঠিকভাবে সমান্তরাল করা যায় না, বা আপনার মাইএসকিউএল এবং / বা অ্যাপাচি কনফিগার করা হয়নি বলে তাদের ব্যাবহার করুন. এবং, যেহেতু এই দুটি প্রোগ্রাম সাধারণত ডিফল্টরূপে মাল্টিথ্রেড হয়, তাই আমি আপনার সার্ভার লোড এবং আপনার এসকিউএল ক্যোয়ারীগুলি একবার দেখে নিই ...
ম্যাসিমো

3

ইগনাসিও যেমন মন্তব্য করেছেন, আপনি ক্যাশে চলে যেতে চাইতে পারেন। সেন্টিমিটারে বা সম্ভবত স্ট্যাকের সামনেও। প্রতিটি (প্রতিটি!) পৃষ্ঠার জন্য 50+ ক্যোয়ারী সত্যই অনেক কিছু।


হ্যাঁ এটি একটি জটিল ওয়েবসাইট, এটি একটি সম্প্রদায়, আমি কিছুই ক্যাশে করতে পারি না, প্রতি সেকেন্ডে এটি পরিবর্তন হয়। আমি পৃষ্ঠাগুলি ক্যাশে করার চেষ্টা করেছি, তবে ক্যাশে হিট্রেট প্রায় 0 ছিল, যেহেতু আমি যখনই কোনও পৃষ্ঠা ক্যাশে করি তখন তা আর কখনও পড়তে পারে না, বা এটি আবার খোলার আগে এটি পরিবর্তন হতে পারে। ধন্যবাদ

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

0

আপনার মন্তব্যের দ্বারা বিচার করে, বৃহত্তম ফ্যাক্টরটি হ'ল আপনার ডেটা সেট আকার বা কমপক্ষে "হট" ডেটা সেটের আকার। 16-কোর সার্ভারে 3,000qps বা 8,000qps এমনকি এ পর্যন্ত কোনও সমস্যা নয় যতক্ষণ না কোয়েরিটি পূরণের জন্য সার্ভারটিকে খুব কমই ডিস্কে যেতে হয়। অ্যাক্টিভ ডেটা সেট একবার ক্যাশ করার জন্য ইনোডিবি ব্যবহার করছে মেমরির পরিমাণ ছাড়িয়ে গেলে, আপনার পারফরম্যান্স দ্রুত ছাড়বে।


0

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


0

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

আমি একটি সিপিইউ ৩.GB75 গিগাবাইট মেমরি, 100 গিগাবাইট এসএসডি, জিসিপি ক্লাউড মাইএসকিএল সার্ভার উদাহরণ ব্যবহার করেছি এবং পেয়ে যাব:

  • 1 ক্লায়েন্ট, এক বর্গ স্কয়ার এক সারি পড়ুন: 799 স্কোয়েল / সেকেন্ড।
  • 50 ক্লায়েন্ট, এক বর্গ স্কলার এক সারি পড়ুন: 6403 বর্গ / সেকেন্ড।
  • 50 ক্লায়েন্ট, এক বর্গ ਵਰਗ এক সারি লিখুন: 4341 সারি লিখিত, কিপিএস। 4341 বর্গ / সেকেন্ড।
  • 1 ক্লায়েন্ট, প্রতি বর্গক্ষেত্র 30k সারি লিখুন: 92109 লিখিত সারি / গুলি।

কিউপিএস পরীক্ষার ফলাফল লিখুন (2018-11) জিসিপি মাইএসকিএল 2cpu 7.5 গিগাবাইট মেমরি 150 গিগাবাইট এসএসডি সিরিয়ালাইজেশন 10 টি থ্রেড লিখুন, 30k সারি প্রতি বর্গক্ষেত্র লিখুন, 7.0566 গিগাবাইট টেবিল, ডেটা কীটির দৈর্ঘ্য 45 বাইট এবং মান দৈর্ঘ্য 9 বাইট, 154KB লিখিত সারি পান প্রতি সেকেন্ডে, সিপু 97.1% জিপিপি কনসোলে QP 1406 / s লিখুন।
ব্রোঞ্জের লোক
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.