চিত্রগুলি সংরক্ষণের জন্য রবি অন রুবি কী?


9

আমি আইওএস- তে বিকাশ করি এবং আমি পিএইচপি ব্যাকএন্ড থেকে রবি অন রুজে স্যুইচ করছি । অদলবদল ফরম্যাট তাদেরকে JSON

'রেলগুলিতে চিত্রগুলি সংরক্ষণ করুন' এর জন্য একটি দ্রুত গুগল অনুসন্ধানে ডাটাবেসে ব্লব হিসাবে চিত্রের ডেটা সংরক্ষণের কথা বলার প্রায় প্রতিটি ফলাফল রয়েছে। আমার ভুল হতে পারে তবে আমি এই ধারণার মধ্যে রয়েছি যে একটি ডাটাবেসে চিত্রের ডেটা সংরক্ষণ করা সময় এবং স্থানের একটি বিশাল অপচয় (ফাইলের অবস্থানের লিঙ্ক সংরক্ষণের বিপরীতে ('/img/subcat/4656.png')) ।

পিএইচপি-তে, ডেটা গ্রহণ করা, একটি ফাইলের নাম তৈরি করা, সেই ফাইলটি ডিস্কে সংরক্ষণ করা এবং ডিস্কে চিত্রের অবস্থানের সাথে ডেটাবেস আপডেট করা খুব সুন্দর standard এটি কি রেলের অন রুবেলের জন্য একই, বা এমন কোনও বিল্ট-ইন অ্যাক্টিভেকর্ড চিত্রের কার্যকারিতা সম্পর্কে আমি অবগত নই?


1
আমি পেপারক্লিপে হোঁচট খেয়েছি , যা আমি যা চাই তার চেয়ে কাছেই বলে মনে হচ্ছে। কীভাবে অনুকূল গতিতে কয়েক হাজার চিত্র উপস্থাপন ও গ্রহণ করতে হবে সে সম্পর্কে অভিজ্ঞ রেল লোকের পরামর্শের প্রশংসা করবে Would
ব্যবহারকারী

1
আপনি কি জানেন যে চিত্রটি ঠিক ডিবিতে বা ডিস্কে ঠিক তত জায়গা নেবে? অন্ত্র অনুভূতি থেকে, আমি ডেটাবেজে রেল স্টোরগুলি বলতে পারি কারণ এটি ক্যাচিং পরিচালনা করার জন্য পিএইচপি যতটা অ্যাপাচে নির্ভর করে না। যদিও এটি সম্পূর্ণ ভুল হতে পারে।
ফ্লোরিয়ান মার্জাইন 21

2
হ্যাঁ, আমি মনে করি না যে স্টোরেজ অবস্থানের দ্বারা চিত্রের ডেটা হেরফের হবে। রেলগুলি ভিন্ন হতে পারে, তবে কিছু বিশ্বাসযোগ্য এসও সদস্যরা ডাটাবেসে ফাইল পাথের দিকে ঝুঁকছেন বলে মনে হচ্ছে। অধিকন্তু, আমি মনে করি এটি প্রচলিত জ্ঞান যে ডাটাবেসগুলি স্কেল করা শক্ত database সুতরাং ডাটাবেসে টন ইমেজ ডেটা সংরক্ষণ করা অবশ্যই কোনও সহজ করে তুলবে না।
ব্যবহারকারী

উত্তর:


4

অতীতে যা করেছি তা হ'ল দ্রুত সরবরাহের জন্য অ্যামাজন এস 3 এবং ক্লাউডফ্রন্ট সিডিএন সহ পেপারক্লিপ ব্যবহার করুন । পেপারক্লিপ খুব সুন্দরভাবে বক্সের বাইরে এস 3 স্টোরেজ সমর্থন করে: এস 3 স্টোরেজ কনফিগারেশন বিকল্পগুলির জন্য তাদের ডকুমেন্টেশন দেখুন ।

  1. আপনার এস 3 বাল্টিতে চিত্রের অনুরোধগুলি এবং আপনার রুবেলকে রেলস অ্যাপ্লিকেশনটিতে স্থিতিশীল সম্পদের জন্য অন্যান্য অনুরোধগুলি ফরোয়ার্ড করার জন্য ক্লাউডফ্রন্ট বিতরণ সেট আপ করুন (বিকল্প হিসাবে, আপনি সেগুলি এস 3 তেও আপলোড করতে পারেন, তবে এটি এই প্রশ্নের আওতার বাইরে)।
  2. সময় CNAME একটি ডোমেইন আপনার CloudFront বন্টন বিন্দু (যেমন assets.example.com হিসাবে) নিয়ন্ত্রণ করে।
  3. পেপারক্লিপ কনফিগারেশনে সেট করুন s3_host_alias: assets.example.com। এটি আপনার ক্লাউডফ্রন্ট বিতরণ হোস্টটি ব্যবহারের জন্য সংরক্ষিত চিত্রের উত্সগুলিতে উত্পন্ন URL গুলি তৈরি করবে ।
  4. আপনার রুবি অন রেল কনফিগারেশনে, আপনি এটি করতে পারেন config.action_controller.asset_host = http://assets.example.com। রেলগুলির সম্পদ ইউআরএলগুলিতে রুবি তারপরে ক্যাচিং / দ্রুত বিতরণের জন্য আপনার ক্লাউডফ্রন্ট বিতরণটিও ব্যবহার করবে।

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

(একটি সম্ভাব্য উন্নত পদক্ষেপ যা আপনার ক্ষেত্রে প্রয়োজনীয় বা দরকারী নাও হতে পারে, আপনি আপনার ক্লাউডফ্রন্ট বিতরণের জন্য একাধিক সিএনএমও সেট আপ করতে পারেন, যেমন assets0.example.comএবং assets1.example.comউভয় পেপারক্লিপ s3_host_aliasএবং action_controller.asset_hostএরপরে ল্যাম্বডাস নিতে পারেন যা আপনাকে নির্বিচারে অনুমতি দেবে (এর উপর ভিত্তি করে সম্পদ) ইউআরএলগুলি তৈরি করে যা বিভিন্ন হোস্ট ব্যবহার করে, আরও সমান্তরালতার জন্য যদি আপনি একই পৃষ্ঠায় সেগুলির একটি গুচ্ছ ডাউনলোড করেন তবে ব্রাউজারগুলি একই হোস্টে সর্বাধিক যুগপত সংযোগ সীমাবদ্ধ করবে))


3

আমি বিভিন্ন রত্ন চেষ্টা করেছি, কিন্তু এখন আমি ব্যবহার করছি FineUploader একসঙ্গে সঙ্গে পেপারক্লিপ

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

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


2
বাহ্যিক প্যাকেজটির কাজটি করার জন্য এটি কেবল একটি সুপারিশ; ওপি সুপারিশের জন্য নয়, চিত্রগুলি সংরক্ষণের জন্য সাধারণত রুবেল অন রেইল ডেভেলস কী করে তা জিজ্ঞাসা করছিল। এটি কীভাবে একটি প্যাকেজ এটি করে তার উদাহরণ হতে পারে, এটি সত্যই প্রশ্নের উত্তর দেয় না।
মার্টিজন পিটারস

সত্য। আমরা সাধারণত যা করি তা হ'ল স্ক্র্যাচ থেকে স্টাফ পুনঃনির্মাণের পরিবর্তে স্থিতিশীল বাইরের কনফিগারযোগ্য সমাধানের সন্ধান করা। পেপারক্লিপ দিয়ে আমি ছবিগুলি সঞ্চয় করি এবং স্টেটম্যাচিনের সাহায্যে আমি চিত্রগুলিতে রূপান্তর করি এবং ফাইলের উপর ভিত্তি করে এগুলি একটি বিভাগে রাখি। আমার কাছে ওপি-র একই প্রশ্ন ছিল এবং এটি ছিল আমার সেরা কাজের সমাধান, এ কারণেই আমি এটি ভাগ করছি ..
জেরোইননুপস
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.