প্রকল্প সম্পর্কে
SEKIRO একটি বহু-ভাষা, বিতরণকৃত, নেটওয়ার্ক টপোলজি-স্বাধীন পরিষেবা প্রকাশ প্ল্যাটফর্ম। ডেভেলপাররা নিজ নিজ প্রোগ্রামিং ভাষায় হ্যান্ডলার লেখেন এবং সেই ক্ষমতাগুলি একটি কেন্দ্রীয় API মার্কেটপ্লেসে প্রকাশ করেন; ব্যবসায়িক সিস্টেমগুলি তখন RPC (রিমোট প্রসিডিউর কল)-এর মাধ্যমে দূরবর্তী নোড ক্ষমতা ব্যবহার করে।
অবস্থান
প্রকল্পটি নিজেকে একটি RPC ফ্রেমওয়ার্ক হিসেবে বর্ণনা করে, তবে এটি প্রচলিত নয়। সাধারণ ব্যাকএন্ড RPC ফ্রেমওয়ার্ক (Dubbo, Spring Cloud, gRPC) জটিল ব্যবসায়িক মডিউল ভেঙে ডেটা সেন্টারের মধ্যে ক্লাস্টারে একক-মেশিন বাধা স্কেল করে। SEKIRO পরিবর্তে সীমাবদ্ধ প্রসঙ্গ পরিবেশ থেকে ক্ষমতা প্রকাশের উপর দৃষ্টি নিবদ্ধ করে, যেখানে একটি পরিষেবা প্রদানকারী এমন জায়গায় চলে যা স্বাভাবিক অভ্যন্তরীণ পরিষেবা হিসেবে পুনরায় স্থাপন করা অসুবিধাজনক, তবুও ব্যবসার সেই ক্ষমতা ব্যবহার করার প্রয়োজন হয়।
README-তে দেওয়া উদাহরণ পরিস্থিতি:
- ক্লায়েন্ট প্রোগ্রামের ভিতরে চলমান এনক্রিপশন অ্যালগরিদম যেখানে রিভার্স ইঞ্জিনিয়ারিং অসম্পূর্ণ; SEKIRO-এর মাধ্যমে কোড ইনজেক্ট করে অ্যালগরিদমটি API হিসেবে প্রকাশ করা যায়।
- সীমাবদ্ধ ডেটা যা শুধুমাত্র প্রতিষ্ঠানের ইন্ট্রানেটের ভিতরে ব্যবহার করা যেতে পারে (উদাহরণস্বরূপ, সোর্স IP দ্বারা পরীক্ষিত), অন্যদিকে বাহ্যিক পরিষেবাগুলিরও এটি কল করার প্রয়োজন।
- অ্যাপ বা টার্মিনাল প্রোগ্রাম যাদের ভোক্তা-মুখী ক্ষমতা রয়েছে, যা B-end ব্যবসা পুনরায় ব্যবহার করতে চায়, প্যারামিটারগুলি অ্যাপে প্রক্সি হিসেবে ফরোয়ার্ড করে (ক্রলার শিল্পে RPC ক্রলিং হিসাবে বর্ণিত)।
- পরিষেবা ক্ষমতা সুরক্ষা, যেখানে একটি প্রদানকারী চায় অন্যরা একটি ক্ষমতা ব্যবহার করুক, কিন্তু কোড বা IP ঠিকানার মতো মেশিনের বিবরণ ফাঁস না করেই।
- জটিল কম্পিউটিং পরিবেশ যা সহজে বাহ্যিক পরিষেবায় স্থাপন করা যায় না, একটি উপলব্ধ পরিবেশে API হিসেবে হোস্ট করে রপ্তানি করা হয়।
মূল কর্মপ্রবাহ
1. একটি কেন্দ্রীয় সার্ভার (SEKIRO কেন্দ্রীয় পরিষেবা) স্থাপন করা হয় যাতে ভোক্তা এবং প্রদানকারী উভয়ই সংযোগ করতে পারে।
2. একাধিক ভাষায় ক্লায়েন্ট রয়েছে (Java, JavaScript, Python এবং অন্যান্য), যা কেন্দ্রীয় সার্ভারের সাথে যোগাযোগ এবং API মোড়ক বাস্তবায়ন করে।
3. ব্যবহারকারীরা SEKIRO ক্লায়েন্ট API ব্যবহার করে নিজ নিজ ভাষায় হ্যান্ডলার লেখেন যাতে প্যারামিটার গ্রহণ করে প্রকৃত স্থানীয় ক্ষমতায় কল ফরোয়ার্ড করা যায়।
4. বাহ্যিক ব্যবহারকারীরা কেন্দ্রীয় পরিষেবা API কল করেন, যা সংশ্লিষ্ট ক্লায়েন্ট হ্যান্ডলারে ফরোয়ার্ড করে এবং মূল লিংকের মাধ্যমে ফলাফল ফেরত দেয়।
বিল্ড এবং রান
- Java এবং Maven ইনস্টল করুন।
- Linux/Mac-এ `build_demo_server.sh` স্ক্রিপ্ট চালিয়ে `target/sekiro-open-demo.zip` তৈরি করুন।
- `bin/sekiro.sh` বা `bin/sekiro.bat` চালান।
- স্থানীয়ভাবে স্থাপন করলে ডকুমেন্টেশন `http://127.0.0.1:5612/sekiro-doc`-এ পাওয়া যায়।
সম্পদ
- ডকুমেন্টেশন: http://sekiro.iinti.cn/sekiro-doc/
- বিভিন্ন ভাষার নমুনা কোড: https://github.com/yint-tech/sekiro-samples
- ইনস্টলেশন প্যাকেজ ডাউনলোড: https://oss.iinti.cn/sekiro/sekiro-open
- কুইকস্টার্ট: https://sekiro.iinti.cn/sekiro-doc/01_manual/1.quickstart.html
README-তে প্রমাণীকরণ, API ব্যবস্থাপনা, বিতরণকৃত ক্লাস্টারিং, লোড ব্যালেন্সিং এবং ক্রস-ল্যাঙ্গুয়েজ কার্যকারিতা প্রদানকারী একটি বাণিজ্যিক পরিষেবাও উল্লেখ করা হয়েছে।
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.