উইন্ডোজ পরিষেবাগুলির ব্যবহারিক ব্যবহারগুলি কী কী? [বন্ধ]


18

আমি উইন্ডোজ পরিষেবাগুলির সাথে কাজ করতে নতুন am যদিও আমি ভিএস 2010 এ উইন্ডোজ পরিষেবাদি তৈরি করতে শিখেছি আমি এমন কিছু ব্যবহারিক উপায় জানতে চাই যেখানে উইন্ডোজ পরিষেবাগুলি ব্যবহার করা যেতে পারে?

আমি উইন্ডোজ পরিষেবাদি কীভাবে তৈরি করতে হবে তার আরও টিউটোরিয়াল খুঁজতে কেবল বর্তমান প্রসঙ্গটি মাথায় রেখে গুগলিংয়ের চেষ্টা করেছি।

অনুগ্রহের অফার এডিট করুন:

সমস্ত উত্তর দুর্দান্ত তবে আমি উইন্ডোজ পরিষেবা এবং এর প্রভাব সম্পর্কে আরও ব্যবহারিক উদাহরণ খুঁজছিলাম ? এটি কেস স্টাডি দিয়ে কখন ব্যবহার করা উপযুক্ত তা বিকাশকারীদের জানতে সহায়তা করবে।


28
ব্যবহারিক উদাহরণ? এখনই আপনার উইন্ডোজ বাক্সে চলমান প্রতিটি পরিষেবা সম্পর্কে কীভাবে?
ইয়ানিস

3
বা আপনার * নিক্স বাক্স
জে

1
আমি সম্প্রচারিত রেডিও থেকে শাস্ত্রীয় সংগীত রেকর্ড করতে চাই। একটি প্রোগ্রাম সহ, আমাকে সকাল 2 টায় উঠে "রেকর্ড" বোতাম টিপতে হবে। একটি পরিষেবা দিয়ে, আমি ক্রিয়াকলাপটি আগে থেকে নির্ধারিত করতে পারি এবং শান্তিতে ঘুমাতে পারি। প্রোগ্রামগুলি হল টিভি - পরিষেবাগুলি ভিসিআর।
কিলিয়ান ফট

উত্তর:


42

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

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


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

8
না, এটা হবে না। সেই কাজটির জন্য এখনও সংযোগগুলি শোনার দরকার নেই। তফসিলযুক্ত কাজগুলি এই ধরণের সমস্যা সমাধানের সঠিক উপায়।
ওয়াইয়াট বার্নেট 12

2
আমি এনটিভার <6.0 তেও অনেক নির্ধারিত কাজ পরিচালনা করছিলাম। । ।
ওয়াট বার্নেট

1
@ পলিয়োনমিয়াল: নির্ধারিত কাজগুলি কোনও অ্যাকাউন্টের অধীনে চলতে পারে, কমপক্ষে NT5 + এর জন্য। অযৌক্তিকভাবে চলমান যে কোনও কিছুতে লগিং করা দরকার যাতে এটি ব্যর্থ হয়েছিল তা আপনি বুঝতে পারেন।
ওয়াট বার্নেট

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

9

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

এগুলি হ'ল উইন্ডোজ সমতুল্য (বেশিরভাগ ব্যবহারিক উপায়ে) ডেমসনের * নিক্সে।


5

সেবা

একটি প্রোগ্রাম, রুটিন বা প্রক্রিয়া যা অন্যান্য প্রোগ্রামগুলিকে সমর্থন করার জন্য একটি নির্দিষ্ট সিস্টেম ফাংশন সম্পাদন করে, বিশেষত একটি নিম্ন (হার্ডওয়্যারের নিকটে) পর্যায়ে। যখন কোনও নেটওয়ার্কের মাধ্যমে পরিষেবা সরবরাহ করা হয় তখন সেগুলি সক্রিয় ডিরেক্টরিতে প্রকাশিত হতে পারে, পরিষেবাকেন্দ্রিক প্রশাসন এবং ব্যবহারের সুবিধার্থে।

আমি কিছু ব্যবহারিক উপায় জানতে চাই যেখানে উইন্ডোজ পরিষেবাগুলি ব্যবহার করা যেতে পারে?

পরিষেবা সংজ্ঞা অনুসারে, উইন্ডো পরিষেবা এবং অন্যান্য ধরণের পরিষেবাগুলি প্রচুর কার্যকারিতা করে। এই প্রসঙ্গে অনুসন্ধান ইঞ্জিনগুলি আপনার বন্ধু

উইন্ডোজ পরিষেবাদি সাধারণত ব্যবহৃত হয় যখন কোনও অ্যাপ্লিকেশন অবিচ্ছিন্নভাবে চালানো প্রয়োজন। ব্যবহারকারীর মিথস্ক্রিয়া ছাড়াই আপনার পটভূমিতে কোড চালানোর জন্য একটি উইন্ডোজ পরিষেবা তৈরি করা উচিত

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

উদাহরণস্বরূপ যদি তাদের প্রয়োজন হয়:

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

আমি নিম্নলিখিত কারণে একটি পরিষেবা ব্যবহার করব:

  • আপনার কোনও সেশন চলার দরকার নেই। এটি সুরক্ষার পক্ষে ভাল এবং সার্ভারে ওভারহেডও হ্রাস করে।
  • আপনি নিখরচায় নির্মিত ম্যানেজমেন্ট কমান্ডগুলির কিছু পান
    ও স্টার্ট
    ও স্টপ
    ও বিরতি দিন
    চালিয়ে যান

  • আপনি সার্ভার ইভেন্ট যেমন শাটডাউন পরিচালনা করতে পারেন।

এই পরিষেবাগুলি সম্পর্কে অতিরিক্ত তথ্যের সাথে লিঙ্কগুলি:

Asp.net - // TODONT এ: কেবলমাত্র একটি নির্ধারিত প্রক্রিয়া চালানোর জন্য একটি উইন্ডোজ পরিষেবা ব্যবহার করুন উইন্ডোজ পরিষেবাদির ব্যবহার
কী


উইন্ডোজ পরিষেবা সর্বাধিক সুবিধাগুলি দিয়ে কীভাবে চালান? উদাহরণস্বরূপ নির্ধারিত কাজগুলি হ'ল স্ট্যাকওভারফ্লো . com/a/11561410/206730 view আইএমএইচও, লার্নিং বক্ররেখা কমিয়ে আনার জন্য আরও ভাল নমুনাগুলি
হ'ল

4

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

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

যখন আমি কোনও ফোল্ডার বা ইমেল ইনবক্সের মতো কিছু পর্যবেক্ষণ করতে পারি তখন আমি সাধারণত পরিষেবাগুলি ব্যবহার করি।


3

যেহেতু আপনি আপনার প্রশ্নের ব্যবহারিক উদাহরণগুলির জন্য নোটটি যুক্ত করেছেন, তাই আমি আপনাকে এন্টারপ্রাইজ অ্যাপ্লিকেশনগুলির জন্য লিখেছি সেবার কয়েকটি উদাহরণ দেব (আপনি যদি এন্টারপ্রাইজ অ্যাপ্লিকেশন প্রোগ্রামার হন তবে আপনি এটি বলেন না তবে আমার ধারণাটি বেশিরভাগ সি # ভিএস 2010 প্রোগ্রামার হচ্ছেন) । আমি মনে করি আপনি মাইক্রোসফ্টের জন্য কাজ না করে এমন বিকাশকারীরা কী লিখতে পারে তার একটি ধারণা খুঁজছেন।

একটি হার্টবিট মনিটর পরিষেবা যা অন্য প্রোগ্রামগুলি এখনও চলছে কিনা তা পরীক্ষা করে (এটি সম্ভবত একটি নির্ধারিত টাস্ক হিসাবেও কাজ করতে পারে তবে এটি পরিষেবা হিসাবে কার্যকর হয়েছিল)।

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

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

সেই ক্লায়েন্ট / সার্ভার অ্যাপ্লিকেশনটির সার্ভার অংশটি পরিষেবা হিসাবে কার্যকর করা হয়েছিল যাতে এটি পুনরায় বুট করা শুরু করে etc. ইত্যাদি। আরও একটি প্রকল্প ছিল যা .exe সহ একই প্রোগ্রাম চালিয়েছিল যা পরিষেবা হিসাবে নয় , এটি আরও সহজ করার জন্য উন্নয়ন মেশিনে ডিবাগ।

আমি আশা করি এটি সাহায্য করবে. অন্যান্য উত্তরগুলি তবে আরও সাধারণ উত্তর, বিশেষত এই ধারণাটি যে নির্ধারিত কাজগুলি সম্ভবত বেশিরভাগ কারণে এখন লেখা এবং পরিচালনা করা সহজ।


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

2

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

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

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


+1 - কেবল পরিষ্কার করার জন্য, সার্ভারটিতে একটি উইন্ডোজ পরিষেবা হিসাবে পরিষেবাটি হোস্ট করা হয় এবং তারপরে ক্লায়েন্ট এসডিকে প্রতিক্রিয়া জানাতে ডেটা যোগাযোগ করার জন্য একটি পোর্টের মাধ্যমে সার্ভারে তথ্য প্রেরণ করে। আমার বোধগম্যতা কি সঠিক?
কার্তিক শ্রীনিবাসন

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

@ কার্তিক, যাইহোক, এটি টিসিপি / আইপি বা পাইপ হতে হবে না। আমি ইন্টারফেসে যোগাযোগ করার জন্য লোকেরা স্লট সহ সিগন্যাল ব্যবহার করতে দেখেছি। তবে নকশার প্যাটার্নটি একই রকম। আপনি কীভাবে যোগাযোগ করবেন তা প্রকল্পের স্থপতি পর্যন্ত।
জোনাথন হেনসন

আমি উদাহরণ উল্লেখ করছি।
কার্তিক শ্রীনিবাসন

2

প্রার্থী প্রোগ্রামগুলির উদাহরণ:

  • যে সমস্ত সিস্টেমগুলি অবশ্যই সংস্থান / অন্যান্য অ্যাপ্লিকেশনগুলি পর্যবেক্ষণ করে এবং প্রতিবেদনগুলি প্রেরণ করে (ব্যবহারকারীর ক্রিয়াকলাপ, বিশেষত ফাইল ট্র্যাফিক, অ্যাপ্লিকেশন দুর্ব্যবহারের বিজ্ঞপ্তি)

  • অন্যান্য স্থানীয় অ্যাপ্লিকেশনগুলিতে পরিষেবাগুলি সরবরাহ করে এমন সিস্টেমগুলি (অনুবাদ, ফাইল রূপান্তর, আন্তঃব্যবস্থা মেসেজিং)

  • অ্যান্টিভাইরাস সফটওয়্যার.

আমি মনে করি এগুলি হ'ল বড় উদাহরণ যা নির্ধারিত কাজগুলি ব্যবহার করে সহজেই করা যায় না।


উদাহরণগুলির জন্য +1। আপনি ফাইল ট্র্যাফিক সংক্ষিপ্ত করতে পারেন?
কার্তিক শ্রীনিবাসন

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

2

পরিষেবাগুলি ব্যবহারের আমার প্রিয় উদাহরণগুলি:

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

ডাটাবেস সার্ভারের জন্য +1। জিনিসগুলি জায়গায় পড়ছে। আমরা সকলে ডাটাবেসে সংযোগ স্থাপনের জন্য SqlCnnication বা OledbConnication ব্যবহার করি যা সার্ভারে থাকা পরিষেবার দ্বারা প্রকৃতপক্ষে প্রক্রিয়াজাত হয়।
কার্তিক শ্রীনীভাসন

2

এখানে আসল কোড (নীচে নীচে) সহ পরিষেবা ধারণার একটি নমুনা ব্যবহার রয়েছে।

এটি যা করে তা হ'ল একটি সার্ভিস বাস কনফিগার করা যা কোনও সারির বাইরে ব্যবহার করে এবং ওয়েব সার্ভার এবং ক্লায়েন্ট জিইউআই এর বার্তা শোনায়।

এটি বার্তাগুলি গ্রহণ করলে এটি ডোমেনের সতর্কতাকে কী যুক্তিযুক্ত তা করে, এটি ইভেন্টগুলিকে ডিস্কে সংরক্ষণ করে এবং বার্তা দালালকে এই ইভেন্টগুলি প্রকাশ করে।

বেশিরভাগ বৃহত্তর অ্যাপ্লিকেশনগুলি যা আলগাভাবে মিলিত হয় নীচের জিনিসটির মতো কিছু ধরণের "কর্মী" আর্কিটেকচার প্রয়োগ করে।

ডকুমেন্টলি প্রজেক্টটি একটি নমুনা প্রকল্প যা আমরা আপনার মতো লোকদের সাথে বিতরণকৃত আর্কিটেকচার শিখতে তৈরি করেছি। আপনি প্রকল্পে আমার কাছে সরাসরি প্রশ্ন জিজ্ঞাসা করতে পারেন, বা এটি কাঁটাচামচ করতে পারেন এবং শিখতে এবং তারপরে একটি টান অনুরোধ জমা দেওয়ার জন্য কিছু বৈশিষ্ট্য প্রয়োগ করতে (এবং কোডের মন্তব্যগুলি পান)।

https://github.com/haf/Docamently/blob/master/src/Docamently.Domain.Service/Program.cs :

using System.Threading;
using Castle.MicroKernel.Registration;
using Castle.Windsor;
using Documently.Infrastructure;
using Documently.Infrastructure.Installers;
using MassTransit;
using Topshelf;
using log4net;
using log4net.Config;

namespace Documently.Domain.Service
{
    class Program
    {
        private static readonly ILog _Logger = LogManager.GetLogger(typeof (Program));

        private IWindsorContainer _Container;
        private IServiceBus _Bus;

        public static void Main(string[] args)
        {
            Thread.CurrentThread.Name = "Domain Service Main Thread";
            HostFactory.Run(x =>
            {
                x.Service<Program>(s =>
                {
                    s.ConstructUsing(name => new Program());
                    s.WhenStarted(p => p.Start());
                    s.WhenStopped(p => p.Stop());
                });
                x.RunAsLocalSystem();

                x.SetDescription("Handles the domain logic for the Documently Application.");
                x.SetDisplayName("Documently Domain Service");
                x.SetServiceName("Documently.Domain.Service");
            });
        }

        private void Start()
        {
            XmlConfigurator.Configure();
            _Logger.Info("setting up domain service, installing components");

            _Container = new WindsorContainer()
                .Install(
                    new RavenDbServerInstaller(),
                    new CommandHandlerInstaller(),
                    new EventStoreInstaller(),
                    new BusInstaller(Keys.DomainServiceEndpoint)
                    );

            _Container.Register(Component.For<IWindsorContainer>().Instance(_Container));
            _Bus = _Container.Resolve<IServiceBus>();

            _Logger.Info("application configured, started running");
        }

        private void Stop()
        {
            _Logger.Info("shutting down Domain Service");
            _Container.Release(_Bus);
            _Container.Dispose();
        }
    }
}

উদাহরণের সাথে উদাহরণ দেওয়ার জন্য +1। আরও ভাল বোঝার জন্য আমি আপনার উদাহরণটি প্রয়োগ করার চেষ্টা করব।
কার্তিক শ্রীনিবাসন

2

কিছু সময় আগে আমার দলটি এখানে ব্রাজিলের একটি ব্যাংকে 3 টি উইন্ডোজ পরিষেবা নীচে দেওয়া হয়েছে:

  • সিস্টেমের মধ্যে ইন্টারফেস: আমাদের কাছে শেয়ার-বাজারে ব্যবসায়ের বুকিংয়ের জন্য দায়ী ফ্রন্ট-অফিস অ্যাপ্লিকেশন, এবং ব্যাক-অফিস অ্যাপ্লিকেশন ছিল, অ্যাকাউন্টের জন্য এবং ব্যবসায়ের ফি গণনার জন্য দায়ী। প্রাথমিকভাবে, আন্তঃব্যবস্থা যোগাযোগ সরাসরি এসকিউএল সার্ভারে করা হয়েছিল, তবে অনেকগুলি লকিং এবং ধরে রাখার সমস্যাগুলি সিস্টেমকে খারাপ পারফরম্যান্সে ভুগিয়েছে। সামনের এবং পিছনের উভয় ডাটাবেসগুলিতে সংযোগ স্থাপন এবং কোনও ধরণের ধারণাগুলি কৌশল ব্যবহার করে সঠিক পাঠ / লেখার জন্য একটি পরিষেবা কার্যকর করা হয়েছিল (এসকিউএল সার্ভারে প্রতিটি একক ট্রেড লেখার পরিবর্তে, আমরা ডেটাটি কিছুটা বাড়িয়ে রাখি, 1000 টি ট্রেড বলি, এবং একটি বাল্ক সন্নিবেশ করেছিলেন, যা আসল সমাধানের চেয়ে 40x দ্রুত এবং এতে অনেকগুলি জড়িত টেবিলকে দীর্ঘ সময়ের জন্য লক করে না)।

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

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

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

পরিষেবাগুলি চালনার জন্য ডেস্কটপ বা উইন্ডো পরিচালনা পরিষেবাও প্রয়োজন হয় না। তারা পটভূমিতে চলতে পারে (ভাল, তাদের অবশ্যই পটভূমিতে চলতে হবে )।

এবং, আপনি যদি আমার কিছু সহকর্মীদের মত হন যা ব্যবহারকারী ইন্টারফেস লিখতে পছন্দ করেন না, পরিষেবাগুলি দুর্দান্ত প্রযুক্তিগত চ্যালেঞ্জ, কারণ সাধারণত তাদের ব্যর্থ হওয়া উচিত নয়। সুতরাং একটি পরিষেবা লিখতে খুব মজা। :)


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

0

যদি আপনি একটি উইন্ডোজ ডেস্কটপ অ্যাপ্লিকেশন ডিজাইন করেন যা মানক ব্যবহারকারী হিসাবে চালানো প্রয়োজন তবে কখনও কখনও এমন কোনও কার্য সম্পাদন করা প্রয়োজন যার জন্য প্রশাসনিক অধিকার প্রয়োজন আপনি একটি পরিষেবা ব্যবহার করতে পারেন।

আপনার ইনস্টলারটি প্রয়োজনীয় অনুমতি নিয়ে পরিষেবাটি ইনস্টল করে, আপনার ডেস্কটপ অ্যাপ্লিকেশনটি যখন প্রশাসকের অধিকার সহ কোনও কার্য সম্পাদন করার প্রয়োজন হয় তখন সেবার জন্য ডাকে to

এই পদ্ধতির সুরক্ষা জড়িত রয়েছে যা এই উত্তরের ক্ষেত্রের বাইরে।


আমি যদি সঠিকভাবে বুঝতে পারি, উইন্ডোজ পরিষেবাগুলি প্রশাসকের অনুমতি ব্যতীত কল করা যায় না?
কার্তিক শ্রীনীভাসন

2
না, অ্যাডমিনের অনুমতি ব্যতীত উইন্ডোজ পরিষেবাদি ইনস্টল বা শুরু করা যাবে না। কিন্তু কোনো ব্যবহারকারী যদি সার্ভিস (মনে সকেট নাম পাইপ, ইত্যাদি ..) শুনছে তাদের সাথে যোগাযোগ করতে পারে
অন্ধকার

1
অবশ্যই একটি স্ট্যান্ডার্ড ব্যবহারকারী উইন্ডোজ পরিষেবাতে কল করতে এবং কল করতে পারেন। পরিষেবাটি অবশ্যই একজন প্রশাসক ব্যবহারকারীর দ্বারা ইনস্টল করা উচিত।
টেক্সাসে জিম

0

প্রোগ্রামারদের জন্য পরিষেবাটি ব্যবহারের প্রাথমিক কারণ হ'ল:

  • এই প্রোগ্রামটির পুনরায় বুটের পরে উইন্ডোজ মেশিনে স্বয়ংক্রিয়ভাবে শুরু হওয়া দরকার।

আপনি যে কোনও কিছু লিখেছেন যা উপরের অনুসারে মেনে চলতে হবে উইন্ডোজ পরিষেবা হিসাবে চালিত run


0

সর্বাধিক ব্যবহারকারীর দৃষ্টিকোণ থেকে, আমি সবচেয়ে দরকারী পরিষেবাটি লিখেছি:
* ব্যবহারকারী RAW প্রিন্ট-ড্রাইভারের সাথে ডট-ম্যাট্রিক্স প্রিন্টারে UGLY চালান প্রিন্ট করেছে।
* ব্যবহারকারী লোগো, মসৃণ-লাইনের গ্রাফিক্স সহ একটি প্রাইটি চালান চেয়েছিলেন।
* উত্তরাধিকার কোডটিতে অ্যাক্সেস নেই।

পরিষেবাটি হ'ল:
* মুদ্রণ কাজের জন্য (একাধিক) মুদ্রক ফোল্ডারগুলি নিরীক্ষণ করুন।
* চালানের পিডিএফ তৈরি করুন।
* পিডিএফ একটি দুর্দান্ত ফাঁকা ইনভয়েস চিত্র "আন্ডারলাই" করবে
* কাঁচা পাঠ্যটি ওভারলে করবে
* ফোল্ডারটি ব্যবহৃত হচ্ছে এর উপর ভিত্তি করে মেটা ডেটা সন্ধান করুন (IE: প্রিন্টার ব্যবহৃত হচ্ছে)

তারপরে মেটাডেটাটি হবে:
* পিডিএফ তৈরি করুন
* এবং / অথবা পিডিএফ প্রিন্ট করুন
* এবং / অথবা একটি চূড়ান্ত গন্তব্য ফোল্ডারে পিডিএফ ফাইল করুন
* এবং / অথবা পিডিএফ মুছুন
* এবং / অথবা গ্রাহকের কাছে পিডিএফ ইনভয়েস ইমেল করুন

এই ক্ষেত্রে এটি ভুত স্ক্রিপ্ট, পিএলসি এবং পিডিএফ ইঞ্জিনগুলি পরিচালনা করে। এটি বছরের পর বছর ধরে খুব পরিষ্কারভাবে চলছে। লগ ফাইল অন্তর্ভুক্ত !!!

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