ফায়ারবেস ব্যবহার করলে ব্যবসায়ের যুক্তি কোথায় রাখবেন?


10

আমি একটি একক পৃষ্ঠার ওয়েব অ্যাপ্লিকেশন বিকাশ করতে যাচ্ছি যা একাধিক ব্যবহারকারীর ডকুমেন্টেশন সিস্টেমকে খুব সরল করে দেওয়া হয়েছে। সামনের প্রান্তটি সম্ভবত Angular2 ব্যবহার করবে।

প্রকল্পটির একটি সংক্ষিপ্ত সময়সীমা রয়েছে, তাই আমি "শর্টকাট" খুঁজছি, অর্থাত্ স্ক্র্যাচ থেকে সবকিছু বাস্তবায়ন করার পরিবর্তে বিভিন্ন তৈরি পরিষেবা ব্যবহার করি।

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

তবে এর অর্থ এইও হ'ল আমাকে ব্যবসায়ের যুক্তিটি সামনের প্রান্তে, Angular2 ওয়েব অ্যাপে রাখতে হবে, তাই না?

তাই আমি যদি ভবিষ্যতে কোনও দিন কোনও মোবাইল অ্যাপ্লিকেশনটি সামনের দিকে করতে চাই তবে আমাকে ব্যবসায়ের লজিক কোডটি নকল করতে হবে?

আমার ধারণা বিকল্পটি এমন একটি ব্যাকএন্ড তৈরি করা হবে যাতে ব্যবসায়ের যুক্তি রয়েছে এবং এটি ডেটা স্টোরেজ করার জন্য ফায়ারবেস ব্যবহার করে তবে এটি কিছুটা অদ্ভুত বলে মনে হয় (আমি কেবল নিজের ব্যান্ডএন্ডে কোনও ORM বা কিছু ব্যবহার করতে পারি না একই ফলাফলটি অর্জন করার জন্য) আরও অনেক কাজ?)

লোকেরা সাধারণত এই ধরণের অ্যাপ্লিকেশনগুলি কীভাবে গঠন করে, যদি তারা উদাহরণস্বরূপ ফায়ারবেস ব্যবহার করতে চান?


কোন ডাটাবেস / orm ইত্যাদি আপনি সবচেয়ে পরিচিত? সম্ভবত এটিই আপনাকে সেখানে দ্রুত পৌঁছে দেবে।
রবার্ট হার্ভে

এই প্রকল্পের জন্য আমি সম্ভবত এমন কিছু প্রযুক্তি ব্যবহার করব যা আমি আগে ব্যবহার করি নি, তাই কিছুটা
ম্যাগনাস ডব্লিউ

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

উত্তর:


2

প্রশ্ন: তবে এর অর্থ এই যে আমাকে ব্যবসায়ের যুক্তিটি সামনে-এন্ডে, Angular2 ওয়েব অ্যাপে রাখতে হবে, তাই না ?

হ্যাঁ. যদি এটি কোনও সার্ভার সমর্থন করে না, তবে কোথাও ব্যবসাটি কার্যকর করা উচিত।

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

সুতরাং, আপনি যেমন অনুমান করতে পারেন, ফায়ারবেস আমাদের ব্যবসায়ের নির্দিষ্ট ক্রিয়াকলাপ পরিচালনা এবং পরিচালনার জন্য ব্যাকএন্ড ডেডিকেটেড থেকে ছাড় দেয় না।

প্রশ্ন: সুতরাং ভবিষ্যতে যদি আমি কোনও দিন একটি মোবাইল অ্যাপ্লিকেশনটি ফ্রন্ট-এন্ড করতে চাই তবে আমাকে ব্যবসায়ের লজিক কোডটি নকল করতে হবে?

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

বিষয়টি তখন জাভাস্ক্রিপ্টের বিতরণ এবং সংস্করণে হোস্ট করার জন্য । একটি শব্দ সিডিএন

প্রশ্ন: আমার ধারণা বিকল্পটি এমন একটি ব্যাকএন্ড তৈরি করা হবে যাতে ব্যবসায়ের যুক্তি রয়েছে এবং এটি ডেটা স্টোরেজ করার জন্য ফায়ারবেস ব্যবহার করে তবে এটি কিছুটা অদ্ভুত বলে মনে হয় (একই ব্যয় করার জন্য আমি কেবল আমার ব্যান্ডএন্ডে কোনও ORM বা কিছু ব্যবহার করতে পারি না) আরও অনেক কাজ ছাড়া ফলাফল?)

কিছু বিবেচনা।

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

অন্যদিকে, আমাদের ব্যাক-এন্ড থাকা কোনও সাধারণ কারণে ডিউপলিংয়ের জন্য কার্যকর

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

প্রশ্ন: লোকেরা সাধারণত এই ধরণের অ্যাপ্লিকেশনগুলিকে কীভাবে গঠন করে, যদি তারা উদাহরণস্বরূপ ফায়ারবেস ব্যবহার করতে চান?

প্রকল্প থেকে প্রকল্পে এটি বিভিন্নভাবে পরিবর্তিত হয়। উদাহরণস্বরূপ, আমরা ফায়ারবেস + ব্যাক-এন্ড ব্যবহার করি।

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

  • ফায়ারবেস ক্লাউড বার্তা আমাদের প্রবাহিত / ডাউন স্ট্রিম পুশ বিজ্ঞপ্তি এবং বিষয় সরবরাহ করে। আমরা পাব / সাব ম্যাসেজ এক্সচেঞ্জের জন্য পরিষেবাটি ব্যবহার করি।

  • ফায়ারবেস বিশ্লেষণ বেশিরভাগ মেট্রিকের জন্য।

  • ব্যবসায়ের সাথে কঠোরভাবে সম্পর্কিত সমস্ত কিছুর জন্য ব্যাক-এন্ড


1

সংক্ষিপ্ত উত্তর: ব্যবসায়িক যুক্তি ব্যবহার করবেন না।

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

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


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

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

0

দেখতে /programming/54994228/how-to-minimise-firebase-function-latency

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

তারপরে, ক্লাউড ফাংশনগুলি ব্যবহার করুন যা ক্লাউড ফায়ারস্টোর ট্রিগার থেকে ডাকা হয়।

আপনি কোনও ফ্রন্ট-এন্ড অ্যাপ্লিকেশন থেকে কখনই ক্লাউড ফাংশন কল করবেন না।

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