බ්ලූබර්ඩ් කතුවරයා මෙහි.
V8 පොරොන්දු ලෙස ක්රියාත්මක කිරීම ලියා ඇත්තේ ජාවාස්ක්රිප්ට් වලින් නොවේ. සී. දේශීය කේතයට සම්පාදනය කිරීමට පෙර පරිශීලක ලිඛිත ජාවාස්ක්රිප්ට් හැකි නම් (සහ එය වටිනවා) ප්රශස්තිකරණය කර ඇත. ක්රියාවට නැංවීම පොරොන්දු වන්නේ සී හෝ ලිවීමෙන් බොහෝ සෙයින් ප්රයෝජන නොලබන දෙයක් වන අතර ඇත්ත වශයෙන්ම එය මන්දගාමී වනු ඇත්තේ ඔබ කරන්නේ ජාවාස්ක්රිප්ට් වස්තු සහ සන්නිවේදනය හැසිරවීම නිසාය.
V8 ක්රියාත්මක කිරීම හුදෙක් බ්ලූබර්ඩ් තරම් ප්රශස්ත නොවේ, එය අවස්ථා වලදී පොරොන්දු හසුරුවන්නන් සඳහා අරා වෙන් කරයි. සෑම පොරොන්දුවක්ම අරා කිහිපයක් වෙන් කළ යුතු විට මෙය විශාල මතකයක් අවශ්ය වේ (මිණුම් ලකුණ සමස්ත 80k පොරොන්දු නිර්මාණය කරයි, එමඟින් 160k භාවිතයට නොගත් අරා වෙන් කර ඇත). යථාර්ථය නම්, භාවිත අවස්ථා වලින් 99.99% ක්ම එක වරකට වඩා පොරොන්දුවක් නොදෙන අතර මෙම පොදු අවස්ථාව සඳහා ප්රශස්තිකරණය කිරීමෙන් විශාල මතක භාවිතය වැඩි දියුණු වේ.
V8 බ්ලූබර්ඩ් මෙන් ප්රශස්තිකරණයන් ක්රියාත්මක කළද, පිරිවිතරයන්ට එය තවමත් බාධාවක් වනු ඇත. new Promise
ES6 හි මූල පොරොන්දුවක් නිර්මාණය කිරීමට වෙනත් ක්රමයක් නොමැති බැවින් මිණුම් ලකුණ භාවිතා කළ යුතුය (බ්ලූබර්ඩ්හි ප්රති-රටාවක්). new Promise
පොරොන්දුවක් නිර්මාණය කිරීමේ අතිශය මන්දගාමී ක්රමයකි, පළමුව ක්රියාත්මක කරන්නාගේ ශ්රිතය වැසීමක් වෙන් කරයි, දෙවනුව එය වෙනම වසා දැමීම් 2 ක් තර්ක ලෙස සම්මත කරයි. එය පොරොන්දුවක් සඳහා වෙන් කිරීම් 3 ක් වෙන් කර ඇති නමුත් වසා දැමීම දැනටමත් ප්රශස්ත පොරොන්දුවකට වඩා මිල අධික වස්තුවකි.
බ්ලූබර්ඩ් භාවිතා promisify
කළ හැකි අතර එය බොහෝ ප්රශස්තිකරණයන් සක්රීය කරන අතර ඇමතුම් ආපසු ලබා ගැනීමේ ඒපීඅයි පරිභෝජනය කිරීමේ වඩාත් පහසු ක්රමයක් වන අතර එය සම්පූර්ණ මොඩියුලයන් එක පේළියක ( promisifyAll(require('redis'));
) පොරොන්දු පදනම් කරගත් මොඩියුල බවට පරිවර්තනය කිරීමට ඉඩ සලසයි .