আমার অ্যাপ্লিকেশন কনফিগারেশনটি আমার কোথায় রাখা উচিত?


17

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

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

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

প্রতিটি পদ্ধতির পক্ষে কি কি? ধারক দৃশ্যের জন্য কি কোনও "সর্বোত্তম" পদ্ধতি রয়েছে?


কোন ফাইলটি চয়ন করার জন্য নিজেকে পরিবেশের পরিবর্তনশীলের উপর ভিত্তি করে তৈরি করা পরিবেশের পরিবর্তনশীল ব্যবহারের সাথে সঙ্গতিপূর্ণ নয় তাই চিত্রটি পরিবর্তন হয় না বলে কী মনে করে? (মূল
অসুবিধে

উত্তর:


6

কে বলেছে যে বৈশিষ্ট্য ফাইল এবং পরিবেশের পরিবর্তনশীল যেখানে পারস্পরিক একচেটিয়া?

"আমি আমার অ্যাপ্লিকেশন কনফিগারেশনটি কোথায় সঞ্চয় করব?" এর মধ্যে পার্থক্য রয়েছে? এবং "আমার অ্যাপ্লিকেশন সূত্রটি এটি কনফিগারেশনটি কোথায় দেয় ?"

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

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

এর অর্থ আপনার দুটি স্থাপনার কাজের প্রবাহ থাকতে হবে -

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

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

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


0

 আমরা যেভাবে এটি করি তা হ'ল প্রতিটি চলমান অ্যাপ্লিকেশনের জন্য আমাদের কাছে 3 টুকরা (বা শিল্পকলা) রয়েছে।

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

কনফিগারেশন ফাইলটি পৃথক উত্স নিয়ন্ত্রণে থাকে। এটি গিট হিসাবে ব্যবহৃত হত, তবে আমরা এখন একটি http: //www.configapp.com- এ কনফিগার নামে একটি সস ব্যবহার করছি । কনফিগারেশনের মূল বৈশিষ্ট্য হ'ল পরিবেশ নির্দিষ্ট কনফিগারেশনের সহজ পরিচালনা। একটি নতুন সার্ভারে আমাদের অ্যাপ্লিকেশন চালানোর জন্য, আমরা সেই পরিবেশের জন্য ডকারের ধারক, অ্যাপ্লিকেশন আর্টফ্যাক্ট এবং কনফিগারেশন ফাইলটি টানছি। ধারকটিতে, আমরা যে ডিরেক্টরিটি অ্যাপ্লিকেশন এবং কনফিগারেশন ফাইল সঞ্চয় করে রেখেছি সেই কন্টেইনারটি চালনার অংশ হিসাবে mount আমাদের আবেদন একই। আমাদের ধারক / চিত্র একই। শুধুমাত্র কনফিগারেশন ফাইল আলাদা is

পরিবেশের ভেরিয়েবল বনাম কনফিগারেশন ফাইল সম্পর্কিত। দীর্ঘ সময়ের জন্য আমরা কনফিগারেশন ফাইলগুলি ব্যবহার করছিলাম। আমরা যখন PaaS / মেঘ ব্যবহার করি তখন আমরা পরিবেশের ভেরিয়েবল ব্যবহার করি। আপনার অতিরিক্ত কনফিগারেশন থাকলে এটি অতিরিক্ত কাজ ছিল তাই সঠিক কনফিগারেশন ফাইলটি নির্ধারণ করতে আমরা পরিবেশের ভেরিয়েবলগুলি ব্যবহার করে শেষ করেছি। আমাদের কাছে এমন একটি অ্যাপ্লিকেশন রয়েছে যা বৈশিষ্ট্যগুলিকে পরিবেশের ভেরিয়েবলগুলিতে পরিণত করেছিল, তবে এটি অটিক্যাল। যদি আমাদের কাছে কোনও সংস্থা কেন্দ্রীয়ীকৃত কনফিগারেশন সার্ভার অনুমোদিত হয় তবে আমরা তা ব্যবহার করি, অন্যথায় আমরা কনফিগারেশন ফাইলগুলির সরলতা পছন্দ করি।

সুতরাং সংক্ষিপ্তসার হিসাবে, আমরা app.jar, app.properties, openjdk ডকার টান। তারপরে আমরা অ্যাপ্লিকেশন এবং অ্যাপ.প্রপ্রেটিসের অবস্থানটি মাউন্ট করে ওপেনজেডকে ডকার চালাই run পরিবেশ সম্পর্কিত নির্দিষ্ট একমাত্র জিনিস হ'ল অ্যাপ্লিকেশন rop অ্যাপ্লিকেশনগুলি সহজেই পরিচালনা করতে, প্রপার্টি কী, পরিবেশ, গুচ্ছ / অঞ্চল উদাহরণগুলি বিবেচনা না করেই আমরা কনফিগার ব্যবহার করি।

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