Redis事务是可以一次性执行多条命令,本质上是一组命令的集合,一个事务中的所有命令都会序列化,然后按顺序地串行化执行,而不会被插入其他命令。
一、什么是redis事务?
可以一次性执行多条命令,本质上是一组命令的集合。一个事务中的所有命令都会序列化,然后按顺序地串行化执行,而不会被插入其他命令
二、Redis 事务可以做什么?
一个队列中,一些性,顺序性,排他性的执行一系列的命令
三、怎么使用 redis 命令?
1、事务相关的命令:
(1)DISCARD:取消事务,放弃执行事务块中的所有命令
(2)EXEC:执行事务块中的命令
(3)MULTI:标记一个事务的开始
(4)UNWATCH:取消WATCH命令对所有 key 的监视
(5)WATCH key [key...]:监视一个(或多个)key,如果在事务之前执行这个(或者这些)key被其他命令所改动,那么事务将会被打断。
2、事务报错问题:
(1)语句错误:会直接在添加队列的时候报错,如果出现这个错误,则整个事务都会回滚
(2)逻辑错误:例如给一个字符串 + 1,在执行的时候才会报错。这种错误则不会影响事务中的其他操作,只有本条会报错
3、watch 监控:
(1)乐观锁:
乐观锁(Optimistic Lock),是一个乐观的锁,每次去拿数的时候都认为别人不会对数据进行修改,所以不会上锁,但是在更新的时候会判断一下在此期间别人有没有去更新这个数据,可以使用“版本号”等机制,乐观所使用于多读的应用类型,这样可以提高吞吐量。
乐观所策略:提交版本必须大于当前记录的版本,才可以进行更新
(2)悲观锁
悲观锁(Pessimistic Lock)们就是一个很悲观的锁,每次去拿数据的时候会认为其它人会根据修改操作,导致覆盖等问题。所以每次在拿数据的时候都会上锁,这样如果别人想要拿数据,就会 block ,一直到修改完之后,解开锁菜可以使用,传统的关系醒数据库里边就用了很多这种锁的机制,比如行锁,表锁,读锁,写锁,这都是在做操作之前,先对表上锁。
悲观锁保证数据安全,但是会使性能下降
四、三特性
1、单独的隔离操作:
事务中的所有命令都会序列化、按顺序执行。事务执行过程中,不会被其他客户端发送来的命令请求打断。
2、没有隔离级别的概念:
队列中的命令没有提交之前不会实际的被执行,因为事务提交前任何指令都不会被实际执行,也就不存在“事务内的查询要看到是物理的更新,在事务外查询不能看到这个问题了”
3、不保证原子性:
redis 同一个事务中如果有一条命令执行失败,其后的命令仍然会被执行,没有回滚。
(除非加入队列的时候就出错,即类似 java 的编译时异常和执行时一异常,编译时会导致回滚,执行时异常不回滚)
推荐教程: 《Redis教程》
Atas ialah kandungan terperinci 什么是Redis事务. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Redisactsasbothadatastoreandaservice.1) asadatastore, itusesin-memorystorageforfastoperations, supportingvariousdataStructuresLikey-valueepairsandsortedsets.2) asaservice, itprovidesfunctionalitiesticePub/subdressageSpleSclePing

Berbanding dengan pangkalan data lain, REDIS mempunyai kelebihan unik berikut: 1) kelajuan yang sangat cepat, dan membaca dan menulis operasi biasanya pada tahap microsecond; 2) menyokong struktur dan operasi data yang kaya; 3) Senario penggunaan fleksibel seperti cache, kaunter dan menerbitkan langganan. Apabila memilih REDI atau pangkalan data lain, ia bergantung kepada keperluan dan senario khusus. Redis berfungsi dengan baik dalam aplikasi berprestasi tinggi dan rendah latency.

Redis memainkan peranan penting dalam penyimpanan dan pengurusan data, dan telah menjadi teras aplikasi moden melalui pelbagai struktur data dan mekanisme kegigihannya. 1) REDIS menyokong struktur data seperti rentetan, senarai, koleksi, koleksi yang diperintahkan dan jadual hash, dan sesuai untuk logik perniagaan cache dan kompleks. 2) Melalui dua kaedah ketekunan, RDB dan AOF, Redis memastikan penyimpanan yang boleh dipercayai dan pemulihan data yang cepat.

Redis adalah pangkalan data NoSQL yang sesuai untuk penyimpanan dan akses data berskala besar. 1.Redis adalah sistem penyimpanan struktur data memori sumber terbuka yang menyokong pelbagai struktur data. 2. Ia menyediakan kelajuan membaca dan menulis yang sangat cepat, sesuai untuk caching, pengurusan sesi, dan lain -lain. 3.DIS menyokong kegigihan dan memastikan keselamatan data melalui RDB dan AOF. 4. Contoh penggunaan termasuk operasi pasangan nilai utama dan fungsi deduplikasi koleksi lanjutan. 5. Kesilapan umum termasuk masalah sambungan, jenis data yang tidak sepadan dan limpahan memori, jadi anda perlu memberi perhatian kepada debugging. 6. Cadangan Pengoptimuman Prestasi termasuk memilih struktur data yang sesuai dan menubuhkan strategi penghapusan memori.

Aplikasi REDIS di dunia nyata termasuk: 1. Kepelbagaian Redis dan prestasi tinggi menjadikannya bersinar dalam senario ini.

Redis menonjol kerana kelajuan tinggi, fleksibiliti dan struktur data yang kaya. 1) Redis menyokong struktur data seperti rentetan, senarai, koleksi, hash dan koleksi yang diperintahkan. 2) Ia menyimpan data melalui ingatan dan menyokong RDB dan AOF kegigihan. 3) Bermula dari Redis 6.0, operasi I/O multi-threaded telah diperkenalkan, yang telah meningkatkan prestasi dalam senario konvensional yang tinggi.

RedisIsclassifiedasanosqldatabaseBecauseItuseSey-valuedatamodelinsteadofthetraditionalrelationaldatabasemodel.itoffersspeedandflexibility, makeitidealforreal-timeapplicationsandcaching, ButitmaybesuitiSuScenariscenariscenari

Redis meningkatkan prestasi aplikasi dan skalabiliti dengan data caching, melaksanakan penguncian dan ketekunan data yang diedarkan. 1) Data cache: Gunakan REDIS ke cache data yang sering diakses untuk meningkatkan kelajuan akses data. 2) Kunci yang diedarkan: Gunakan Redis untuk melaksanakan kunci yang diedarkan untuk memastikan keselamatan operasi dalam persekitaran yang diedarkan. 3) Kegigihan data: Memastikan keselamatan data melalui mekanisme RDB dan AOF untuk mencegah kehilangan data.


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

MantisBT
Mantis ialah alat pengesan kecacatan berasaskan web yang mudah digunakan yang direka untuk membantu dalam pengesanan kecacatan produk. Ia memerlukan PHP, MySQL dan pelayan web. Lihat perkhidmatan demo dan pengehosan kami.

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

ZendStudio 13.5.1 Mac
Persekitaran pembangunan bersepadu PHP yang berkuasa

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Muat turun versi mac editor Atom
Editor sumber terbuka yang paling popular
