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 ، آپ ڈیٹا کو مؤثر طریقے سے ذخیرہ اور اس پر کارروائی کر سکتے ہیں، ایپلیکیشن کی کارکردگی کو بہتر بنا سکتے ہیں، اور صارف کے تجربے کو بڑھا سکتے ہیں۔