হোল্ড চেপে ধরে রাখুন
পারফরম্যান্স এবং লাইসেন্সিংয়ের দিকগুলি আকর্ষণীয় হলেও তারা বিবেচনা করার জন্য কোনও কাজের চাপের একমাত্র দিক নয়।
প্রসেসরের পছন্দকে প্রভাবিত করতে পারে এমন একটি জিনিস হ'ল কর্মী থ্রেড।
শ্রমিকের থ্রেডস?
হ্যাঁ বন্ধু! এগুলি সেই জিনিস যা আপনার এসকিউএল সার্ভারটি আপনার ক্যুরিগুলি চালাতে এবং জিনিসগুলিকে আকারে রাখার জন্য প্রয়োজনীয় সমস্ত ব্যাকগ্রাউন্ড স্টাফ ব্যবহার করবে।
আপনি যখন কর্মীদের থ্রেডটি শেষ করে ফেলেন, তখন আপনি THREADPOOL অপেক্ষা করেন hit
THREADPOOL?
THREADPOOL। RESOURCE_SEMAPHORE এবং RESOURCE_SEMAPHORE_QUERY_COMPILE সহ আপনার সার্ভারে এটি আপনার কাছে থাকা সবচেয়ে অপেক্ষাকৃত অপেক্ষা । তবে সেগুলি মেমরির জন্য অপেক্ষা করে এবং এটি একটি সিপিইউ প্রশ্ন।
সুতরাং কেন এই wiggity wack ফিরে।
এসকিউএল সার্ভার এভাবেই কর্মীদের থ্রেডগুলি গণনা করে :
লক্ষ্য করুন যে কীভাবে দ্বিগুণ করার জন্য মূল গণনা সর্বাধিক কর্মী থ্রেডকে দ্বিগুণ করে না এবং আপনি 4 টি করের সাথে 1 টি সমান নম্বর পেয়েছেন? সমীকরণটি হ'ল:512 + ((logical CPUs - 4) * 16)
এটি লজ্জাজনক, কারণ যখন প্রাথমিক গণনাগুলি বাড়তে থাকে, তখন ঘড়ির গতি সাধারণত প্রজন্মের বা দু'জন পিছনে পিছনে থাকে।
ইন্টেল চিপসের সাম্প্রতিক যে কোনও রেখাটি দেখে নেওয়া একই ধরণের প্রবণতা দেখাবে।
আমার কয়টি থ্রেড দরকার তা আমি কীভাবে জানব?
এটি অনেকটা নির্ভর করবে:
- ব্যবহারকারীর সংখ্যা
- সমান্তরাল প্রশ্নের সংখ্যা
- ক্রমিক প্রশ্নের সংখ্যা
- ডাটাবেস এবং ডেটা সিঙ্ক্রোনাইজেশন (মিররিং, এজি, লগ শিপিংয়ের জন্য ব্যাকআপ)
- আপনি যদি ডিফল্টে MAXDOP এবং CTFP ছেড়ে যান
আপনি যদি আজ তাদের থেকে পালাচ্ছেন না, আপনি সম্ভবত ঠিক আছেন।
তবে তুমি কীভাবে জানলে তুমি?
এখানে ভাল প্রশ্ন রয়েছে, এবং দুর্দান্ত প্রশ্ন রয়েছে, এবং লেমে আপনাকে কিছু বলবে, এটি একটি দুর্দান্ত প্রশ্ন ।
THREADPOOL সংযোগ সমস্যা হিসাবে প্রকাশ করতে পারে এবং আপনি কোনও থ্রেড স্প্যান করতে সক্ষম না হওয়ায় ত্রুটি লগতে বার্তাগুলি দেখতে পাবেন ।
আপনি স্পাইব্লিটজ বা এসপি_ব্লিটজফ্রাস্টের মতো একটি নিখরচায় সরঞ্জাম ব্যবহার করে আপনার সার্ভারের অপেক্ষার পরিসংখ্যানগুলিও দেখতে পারেন (সম্পূর্ণ প্রকাশ, আমি এই প্রকল্পে অবদান রাখছি)।
EXEC sp_Blitz
EXEC sp_BlitzFirst @SinceStartup = 1
আমি কি সর্বোচ্চ কর্মীর থ্রেডগুলি বাড়িয়ে তুলতে পারি না?
এমডব্লিউটি বর্ধমান অপেক্ষার কারণ হতে পারে SOS_SCHEDULER_YIELD
।
এটি বিশ্বের শেষ নয়, বরং এটি শিক্ষকের ক্লাসে বাচ্চাদের চিৎকার করে বাচ্চাদের যোগ করার মতো ভাবেন।
হঠাৎ করে, প্রতিটি শিশুর দৃষ্টি আকর্ষণ করা শক্ত হয়ে উঠবে।
যখন কোনও প্রক্রিয়া তার 4 মিমি কোয়ান্টামকে ক্লান্ত করে তোলে , তখন সিপিইউতে যাওয়ার জন্য অপেক্ষা করার আগে আরও থ্রেড থাকবে।
পারফরম্যান্স একই সম্পর্কে মনে হতে পারে।
আমি কীভাবে কম কর্মী থ্রেড ব্যবহার করতে পারি?
আপনি একজন [বিশেষ্য] এর নিষ্ঠুর [বিশেষ্য], তারাই সহায়তার জন্য পরিবার সহ কর্মী! মর্টগেজ! ড্রিমস!
তবে ঠিক আছে, নীচের অংশটিকে সম্মান করতে হবে। তুমিই হচ্ছো বস.
শুরু করার সবচেয়ে সহজ জায়গা হ'ল ম্যাক্সডপ এবং কাস্ট থ্রোসোল্ড ফর প্যারালালিজমের মতো সেটিংস ডিফল্ট থেকে পরিবর্তন করা।
সেগুলি কীভাবে সেট করবেন সে সম্পর্কে আপনার যদি প্রশ্ন থাকে তবে এখানে শিরোনাম:
এর পরে, আপনার কাজটি আরও কঠোর হয়। এই সমস্ত থ্রেডটি কী ব্যবহার করছে তা আপনাকে খুঁজে বের করতে হবে। আপনি কখনও কখনও আপনার অপেক্ষার পরিসংখ্যান দেখে এটি করতে পারেন।
আরও সুনির্দিষ্টভাবে বলা যায় যে, যদি আপনি সমান্তরালতা ( CXPACKET
) এবং উচ্চ তালার উপর অপেক্ষা করে ( ) উচ্চমাত্রা পেয়ে থাকেন LCK_
তবে আপনি সমান্তরাল ক্যোয়ারিতে জড়িত দীর্ঘ ব্লকিং শৃঙ্খলে দৌড়াতে পারেন।
আপনি কি জানেন দুর্গন্ধ? এই সমস্ত সমান্তরাল অনুসন্ধানগুলি যখন তাদের লকগুলি পেতে অপেক্ষা করছে, তারা তাদের বরাদ্দ থ্রেডগুলি ফেরত দেয় না।
আপনি প্রায় শুনতে পাচ্ছেন যে চারটি মূল ভিএম আপনার প্রশাসক আপনাকে আশ্বাস দিয়েছিলেন যে কোনও কাজের চাপ বাতাসে হাঁপানোর জন্য যথেষ্ট ছিল, হু?
দুর্ভাগ্যক্রমে, এই স্টাফটি সমাধান করার জন্য আপনার যে ধরণের ক্যোয়ারী এবং সূচক টিউন করতে হবে তা প্রশ্নের ক্ষেত্রের বাইরে beyond
আশাকরি এটা সাহায্য করবে!