Redis একটি শক্তিশালী এবং জনপ্রিয় ইন-মেমরি ডেটা স্টোর যা ওয়েব অ্যাপ্লিকেশনগুলিতে অস্থায়ী ডেটা সংরক্ষণ এবং প্রক্রিয়া করতে ব্যবহৃত হয়। Laravel, জনপ্রিয় পিএইচপি ফ্রেমওয়ার্কগুলির মধ্যে একটি, আপনি সহজেই ডেটা অপারেশনগুলি দক্ষতার সাথে পরিচালনা করতে ব্যবহার করতে পারেন Redis ।
নীচে কিছু সাধারণ ডেটা অপারেশন রয়েছে যার Redis সাথে Laravel:
ডেটা সংরক্ষণ করা হচ্ছে Redis
আপনি set
একটি মূল-মান জোড়া সংরক্ষণ করতে ফাংশন ব্যবহার করতে পারেন Redis:
use Illuminate\Support\Facades\Redis;
Redis::set('name', 'John Doe');
থেকে ডেটা পুনরুদ্ধার করা হচ্ছে Redis
আপনি কী এর উপর ভিত্তি করে get
একটি মান পুনরুদ্ধার করতে ফাংশনটি ব্যবহার করতে পারেন: Redis
use Illuminate\Support\Facades\Redis;
$name = Redis::get('name'); // Result: "John Doe"
থেকে ডেটা মুছে ফেলা হচ্ছে Redis
আপনি del
একটি কী এবং এর সংশ্লিষ্ট মান মুছে ফেলার জন্য ফাংশনটি ব্যবহার করতে পারেন Redis:
use Illuminate\Support\Facades\Redis;
Redis::del('name');
ডেটার অস্তিত্ব পরীক্ষা করা হচ্ছে Redis
আপনি exists
একটি কী বিদ্যমান কিনা তা পরীক্ষা করতে ফাংশন ব্যবহার করতে পারেন Redis:
use Illuminate\Support\Facades\Redis;
if(Redis::exists('name')) {
// Key exists in Redis
} else {
// Key does not exist in Redis
}
টাইম-টু-লাইভ(TTL) সহ ডেটা সংরক্ষণ করা
আপনি setex
একটি টাইম-টু-লাইভ(TTL) এর সাথে একটি মূল-মান জোড়া সংরক্ষণ করতে ফাংশনটি ব্যবহার করতে পারেন Redis:
use Illuminate\Support\Facades\Redis;
Redis::setex('token', 3600, 'abc123'); // Store the key 'token' with value 'abc123' for 1 hour
একটি তালিকা হিসাবে ডেটা সংরক্ষণ করা
Redis একটি তালিকা হিসাবে ডেটা সংরক্ষণ সমর্থন করে। আপনি lpush
, rpush
, lpop
, এর মত ফাংশন ব্যবহার করতে পারেন rpop
তালিকা থেকে উপাদান যোগ করতে এবং অপসারণ করতে:
use Illuminate\Support\Facades\Redis;
Redis::lpush('tasks', 'task1'); // Add 'task1' to the beginning of the list 'tasks'
Redis::rpush('tasks', 'task2'); // Add 'task2' to the end of the list 'tasks'
$task1 = Redis::lpop('tasks'); // Get the first element of the list 'tasks'
$task2 = Redis::rpop('tasks'); // Get the last element of the list 'tasks'
একটি সেট হিসাবে ডেটা সংরক্ষণ করা
Redis এছাড়াও একটি সেট হিসাবে ডেটা সংরক্ষণ সমর্থন করে। সেট থেকে উপাদান যোগ করতে, অপসারণ করতে এবং পুনরুদ্ধার করতে আপনি, , এর মত ফাংশন ব্যবহার করতে sadd
পারেন srem
: smembers
use Illuminate\Support\Facades\Redis;
Redis::sadd('users', 'user1'); // Add 'user1' to the set 'users'
Redis::sadd('users', 'user2'); // Add 'user2' to the set 'users'
Redis::srem('users', 'user2'); // Remove 'user2' from the set 'users'
$members = Redis::smembers('users'); // Get all elements from the set 'users'
হ্যাশ হিসাবে ডেটা সংরক্ষণ করা
Redis হ্যাশ হিসাবে ডেটা সংরক্ষণ করা সমর্থন করে, যেখানে প্রতিটি কী ক্ষেত্র এবং মানগুলির একটি সেটের সাথে যুক্ত থাকে। আপনি হ্যাশে ক্ষেত্র যোগ করতে, পুনরুদ্ধার করতে এবং অপসারণ করতে, hset
এর hget
মত ফাংশন ব্যবহার hdel
করতে পারেন: hgetall
use Illuminate\Support\Facades\Redis;
Redis::hset('user:1', 'name', 'John Doe'); // Add the field 'name' with value 'John Doe' to the hash 'user:1'
Redis::hset('user:1', 'email', '[email protected]'); // Add the field 'email' with value '[email protected]' to the hash 'user:1'
$name = Redis::hget('user:1', 'name'); // Get the value of the field 'name' in the hash 'user:1'
Redis::hdel('user:1', 'email'); // Remove the field 'email' from the hash 'user:1'
$fields = Redis::hgetall('user:1'); // Get all fields and values in the hash 'user:1'
পরিচালনার উপর ভিত্তি করে অপারেশন Transaction
Redis নিরাপদে এবং ধারাবাহিকভাবে ডেটা অপারেশন পরিচালনা করতে লেনদেন সমর্থন করে। আপনি একটি শুরু এবং শেষ করতে multi
এবং ফাংশনগুলি ব্যবহার করতে পারেন: exec
transaction
use Illuminate\Support\Facades\Redis;
Redis::multi(); // Begin the transaction
Redis::set('name', 'John Doe');
Redis::set('email', '[email protected]');
Redis::exec(); // End the transaction, operations will be executed atomically
উপসংহার ব্যবহার করে Redis আপনি Laravel দক্ষতার সাথে ডেটা অপারেশন পরিচালনা করতে এবং আপনার অ্যাপ্লিকেশনের কর্মক্ষমতা অপ্টিমাইজ করতে পারবেন। মৌলিক ডেটা ক্রিয়াকলাপ এবং এর উন্নত বৈশিষ্ট্যগুলি ব্যবহার করে Redis, আপনি কার্যকরভাবে ডেটা সঞ্চয় এবং প্রক্রিয়া করতে পারেন, অ্যাপ্লিকেশন কার্যকারিতা উন্নত করতে পারেন এবং ব্যবহারকারীর অভিজ্ঞতা বাড়াতে পারেন৷