একটি রেস্ট এপিআই সার্ভারের জন্য স্কেল ফ্রেমওয়ার্ক? [বন্ধ]


105

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

আমার কাছে নিম্নলিখিত বিকল্পগুলি রয়েছে:

  • স্ক্র্যাচ থেকে রেস্ট এপিআই সার্ভারটি তৈরি করুন
  • স্কালট্রার মতো একটি ক্ষুদ্র স্কালাল ওয়েব ফ্রেমওয়ার্ক ব্যবহার করুন
  • লিফট ব্যবহার করুন

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

আপনি কি সুপারিশ করতেন?

উত্তর:


87

কোনও নির্দিষ্ট ক্রমে:


1
ধন্যবাদ! আমি একেকেএ যাচাই করব, কারণ এটি খুব হালকা এবং স্কেলযোগ্য বলে মনে হচ্ছে
ফেজজা

1
এনবি আমি আশা করি যে কেউ স্কালায় রেস্টফুলি.কেলাম.কম.ব্রিকে সংহত বা পোর্ট করার আশেপাশে পেয়েছে । একটি বিকল্প এখন রেস্টফুলিকে জেআরবির স্কালার সম্মুখভাগ হিসাবে ব্যবহার করছে।
অলিউজ

3
+1, আমি উচ্চ-পারফরম্যান্সের এপিআই সার্ভারকে পাওয়ার জন্য কাজ করতে আক্কা ব্যবহার করি। আকার সাথে জ্যাকস-আরএস ব্যবহার করার ক্ষয়ক্ষতিটি হ'ল জ্যাকস-আরএস এক টন জাভা আইডিয়োসিসিরেসিগুলি নিয়ে আসে যা খাঁটি-স্কালা প্রকল্পে খুব পরিষ্কারভাবে ফিট করে না। তবুও, আক্কা পুরো চুক্তিটিকে উপযুক্ত করে তোলে।
সর্বোচ্চ এ।

2
আক্কা একটি ভাল পছন্দ। আপনি JSON পরিবেশন করা হয়, লিফট JSON দেখুন। আপনি মিশ্রিত করতে পারেন এবং ম্যাচ করতে পারেন, কোনও সমস্যা নেই।
andyczerwonka

1
পছন্দ করুন 2.0 এবং প্লে-মিনি! 2.0 ঘটেছে
অলিউজ


15

কটাক্ষপাত Xitrum (আমি সংশ্লিষ্ট লেখক নই), সবকিছু আপনি তালিকাভুক্ত প্রদান করে। এটির ডকটি বেশ বিস্তৃত। README থেকে:

জিত্রামাম নেট এবং হ্যাজলকাস্টের শীর্ষে একটি অ্যাসিঙ্ক এবং ক্লাস্টারযুক্ত স্কালা ওয়েব কাঠামো এবং ওয়েব সার্ভার:

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

7

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


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

1
পুরানো সংস্করণগুলি কদর্য থ্রেডলোকাল (যে থ্রেড থামানো এবং পুনরায় চালু করা সমর্থনযোগ্য নয়) নির্ভর করে কারণ স্কেলিবিলিটি পেতে আপনাকে জ্যাকস-আরএস ২.০ (যা বর্তমানে বিটা) ব্যবহার করতে হবে।
অ্যাডাম জেন্ট

4

কটাক্ষপাত ফিঞ্চ , নির্মাণের জন্য a Scala combinator গ্রন্থাগার ঠকান HTTP- র সেবা। ফিঞ্চ আপনাকে পূর্বনির্ধারিত বেসিক ব্লকের সংখ্যার মধ্যে জটিল এইচটিটিপি এন্ডপয়েন্টগুলি তৈরি করতে দেয়। একইভাবে সংযোজককে পার্সার করার জন্য, ফিঞ্চ সমাপ্তিগুলি পুনরায় ব্যবহার করা, রচনা করা, পরীক্ষা করা এবং সম্পর্কিত কারণগুলি সহজ।


3

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


ধন্যবাদ! আপনি মনে করেন না যে মেমক্যাচ প্রয়োজনীয়? এটি অবশ্যই নির্ভর করে, তবে আমাদের বেশ কয়েকটি ক্যোয়ারী রয়েছে যা নিয়মিতভাবে করা খুব সম্ভবত, সুতরাং এটিই আমরা জয়ের সময় এবং ডাটাবেসে কম লোড।
ফেজজা

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

2

দৃশ্যে কিছুটা দেরি হলেও আমি অবশ্যই REST এপিআই তৈরির জন্য বোলার কাঠামোটি ব্যবহার করার পরামর্শ দেব । এটি ছোট, পয়েন্ট এবং স্বয়ংক্রিয় কেস শ্রেণীর রূপান্তর সমর্থন!

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