এডাব্লুএস ল্যাম্বদা ফাংশনগুলি কীভাবে সম্পাদন করবেন?


14

AWS ল্যাম্বদা ব্যয় কোনও ফাংশন চলার সময় এবং মেমরির পদক্ষেপের উপর কিছুটা নির্ভর করে। দ্রুত সমাপ্ত হওয়া এবং কম স্মৃতি গ্রহণ করা এমন ক্রিয়াকলাপগুলি রাখা প্রচুর অর্থ সাশ্রয় করতে পারে। বিশেষত যখন এই জাতীয় ফাংশন প্রায়শই সম্পাদিত হয় uted

কীভাবে কোনও নোড.জেএস ল্যাম্বডা ফাংশনটি গতি এবং ছোট মেমরির পদক্ষেপের জন্য সুরক্ষার জন্য সুরক্ষিত করা যায়?

ল্যাম্বদার আরও কিছু দিক রয়েছে যা উন্নতি করতে সুবিধাজনক?

উত্তর:


6

Dawny33 প্রতিক্রিয়া ভাল, কিন্তু আমি বিকাশ প্রক্রিয়া আগে শুরু হবে।

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

তবুও, আমি বলব যে আপনি যে অপ্টিমাইজেশন উদ্দেশ্যে করছেন এই পারফরম্যান্স টেস্টিংটি সরাসরি বিকাশকারীর মেশিন থেকে শুরু করা উচিত। বা কমপক্ষে, মেঘের দিকে ধাক্কা দেওয়ার আগে কিছু স্থানীয় পরিবেশ থেকে।

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

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

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

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

এই মুহুর্তে এটিও লক্ষণীয় যে আমি এডাব্লুএস ল্যাম্বদা সম্পর্কিত কোনও নির্দিষ্ট উল্লেখ করিনি mentioned এটি কারণ আপনার অপ্টিমাইজেশানগুলি সম্ভবত এডাব্লুএস ল্যাম্বদা নির্দিষ্ট নয় (সর্বোপরি সার্ভারহলে আপনার সার্ভার / পরিবেশ সম্পর্কে উদ্বিগ্ন হওয়া উচিত নয়)।

নিশ্চিত করুন যে আপনার কোডটি কেবলমাত্র কাজ করে না, তবে এটি আপনার প্রত্যাশা অনুযায়ী কাজ করে। অপ্টিমাইজ করবেন না, তবে সিপিইউ এবং মেমরির ব্যবহারের উপর সমালোচনা রাখবেন। যখন আপনি এটি বাছাই করবেন তখন 2MB অ্যারেটি 10MB তে বাড়তে হবে? সম্ভবত না.

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


হ্যাঁ, এটি গুরুত্বপূর্ণ, তবে কীভাবে এটি করা যায়? কিছু সরঞ্জাম আছে, অনুশীলন, একটি বিকাশকারী ঠিক কি করতে পারে? আমি এই উত্তরে উল্লিখিত
ইভজেনি

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

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

ভাল যুক্তি. আমি আমার উত্তর আবার উন্নত করেছি।
আলেকজান্দ্রে

5

আমি এটির পুরোপুরি উত্তর দিতে সক্ষম না হতে পারি তবে ল্যাম্বডা সহ আমার সীমিত অভিজ্ঞতা থেকে আমার মতামত এখানে দেওয়া হয়েছে:

  1. গতি-পারফরম্যান্স: ল্যাম্বডা ফাংশনের একক রানের সময়কাল লাম্বদার monitoringট্যাবের ড্যাশবোর্ডে উপস্থিত থাকবে যা দেখতে এরকম কিছু দেখাচ্ছে:

এখানে চিত্র বর্ণনা লিখুন

সুতরাং থ্রোটল / ত্রুটি / অনুরোধের সংখ্যা করুন।

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

5

পরীক্ষা করে দেখুন IOpipe প্রোফাইলার ল্যামডা আমন্ত্রণ থেকে পূর্ণ V8 প্রোফাইলার ডাম্প জন্য। আপনি সিপিইউ সময়টি কোথায় ব্যয় করেছেন এবং কীভাবে আপনার ফাংশনগুলির জন্য মেমরি ব্যবহার করা হচ্ছে তা দেখার জন্য আপনি Chrome ডিভলটুলগুলিতে লোড করতে পারেন।

এখানে চিত্র বর্ণনা লিখুন

দাবি অস্বীকার: আমি আইওপাইপের পক্ষে কাজ করি


0

সিপিইউ এবং মেমরি প্রোফাইল পেতে স্ট্যাক ইমম্প্যাক্ট এজেন্ট ব্যবহার করুন । ব্লগ পোস্টে আরও বিশদ: এডাব্লুএস ল্যাম্বদা সিপিইউ এবং মেমরি প্রোফাইলিং (নোড.জেএস) । যেহেতু ল্যাম্বদা নোড.জেএস প্রক্রিয়া অনুরোধগুলির মধ্যে হিমশীতল, অন্য বেশিরভাগ সরঞ্জাম সম্ভবত বাক্সের বাইরে কাজ করবে না।

এখানে চিত্র বর্ণনা লিখুন

দাবি অস্বীকার: আমি স্ট্যাকআইম্প্যাক্টের জন্য কাজ করি


যদিও এটি সম্পর্কিত এবং সম্ভাব্য একটি বৈধ সমাধান বলে মনে হচ্ছে, কীভাবে এটি প্রশ্নটির সমাধানে সহায়তা করতে পারে তার উপর কিছুটা প্রসারিত হওয়া কেবলমাত্র একটি লিঙ্কের অনুভূতি এড়াতে পারে যেখানে লিঙ্কটি পচে যদি এটি কীভাবে সহায়তা করতে পারে সে সম্পর্কে প্রথম ধারণা পেতে খুব বেশি কিছু নেই।
তেনসিবাই
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.