অ্যান্ড্রয়েড অ্যাপ্লিকেশনটির জন্য একটি সম্পর্কিত ডেটাবেসে সরাসরি অ্যাক্সেসের পরিবর্তে ওয়েব পরিষেবাগুলি কেন ব্যবহার করবেন?


19

আমি কোনও দূরবর্তী স্থানে কেন্দ্রীয় ডাটাবেসে কীভাবে দক্ষ পদ্ধতিতে অ্যাক্সেস করতে পারি তা ওয়েবে অনুসন্ধান করেছি এবং একটি ডাটাবেসে সরাসরি অ্যাক্সেস (অর্থাত্ জেডিবিসি ইত্যাদি) ওয়েব পরিষেবাদি ব্যবহারের পরামর্শের সাথে সাক্ষাত করেছি that আমি এর কারণ এবং অন্য কোনও পরামর্শ অবাক করে দিয়েছি wonder ।

উত্তর:


25

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

  • কম সিপিইউ ব্যাটারি ব্যাটারির আয়ু বৃদ্ধি করে,
  • কম ব্যান্ডউইথ ব্যবহার করা মিটার প্ল্যান সহ ব্যবহারকারীদের জন্য মাসিক প্রদান কমিয়ে দেয়

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

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

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

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

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


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

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

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

1
@ ওয়াইটবার্নেট ঠিক আছে ... সঞ্চিত প্রক্রিয়া এবং এর মতো না করে আপনি কীভাবে কোনও ব্যবহারকারীকে তাদের ব্যবহারকারী-প্রোফাইল আপডেট করার অনুমতি দেবেন? ইউএসআরএস টেবিলে পড়ার / লেখার অনুমতি পড়ুন ... তাদের সারিগুলি মুছে ফেলা বা সম্পাদনা করা থেকে বিরত রাখতে চান যা তাদের নয় .. বা এমনকী সারিগুলিও নয় যা তাদের নয় reading আমি নিশ্চিত যে কোনও ডাটাবেস সার্ভারের সঞ্চিত পদ্ধতি বা এমন কিছু ব্যবহার না করে এই জাতীয় সূক্ষ্ম শস্য নেই
আর্লজ

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

13

এটি অ্যাপ এবং ডিবি-র মধ্যে বিমূর্ততার একটি স্তর রাখে uts এটি আপনাকে অনেক সুবিধা দেয় যেমন:

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

1
আরেকটি সুবিধা হ'ল এটি আপনাকে ক্লায়েন্ট-সাইড বা সার্ভার-সাইড (অথবা উভয়ই বিভিন্ন উদ্দেশ্যে আলাদা করে) ক্যাশে যুক্ত করতে দেয়।
টিএমএন

@ টিএমএন - ভাল পয়েন্ট!
সিস্টেম

ঠিক আছে তবে এই তথ্যগুলি যে কোনও ধরণের ওয়েব অ্যাপ্লিকেশনগুলির জন্যও বৈধ, তাইনা কি? কোনও স্তর (ওয়েব পরিষেবাদি) সন্নিবেশ করানো কি কোনও মোবাইল অ্যাপ্লিকেশনের প্রতিক্রিয়া সময় বাড়ায় যা প্রত্যাশিতভাবে দ্রুত প্রত্যাশিত?
হ্যাঁশাল

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

@ আইসিল্ডাল - পুনরায় পারফরম্যান্স: সত্যিই নয়, আপনার যদি 1 জন ব্যবহারকারী থাকেন তবে হ্যাঁ, ফলাফলটি ফেরত দেওয়ার ক্ষেত্রে আরও একটি বিলম্ব হবে, তবে আপনার যদি মিলিয়ন ব্যবহারকারী থাকে তবে ভিন্ন জিনিস এবং কোডটি 2 টি সার্ভারে বিভক্ত করাতে পারে সামগ্রিক কর্মক্ষমতা দ্রুত।
gbjbaanb

4

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

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

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