Le nom complet de redis est REmote DIctionary Server Il s'agit d'un système de stockage clé-valeur hautes performances écrit par Salvatore Sanfilippo. Il est entièrement open source et gratuit et est conforme au protocole BSD. Redis présente les caractéristiques suivantes avec d'autres produits de mise en cache clé-valeur (tels que Memcache).
+ Redis prend en charge la persistance des données. Il peut enregistrer les données en mémoire sur le disque et les charger à nouveau pour les utiliser lors du redémarrage.
+ Redis prend non seulement en charge les données de type clé-valeur simples, mais fournit également le stockage de structures de données telles que liste, ensemble, zset et hachage.
+ Redis prend en charge la sauvegarde des données, c'est-à-dire la sauvegarde des données en mode maître-esclave.
Redis a des performances extrêmement élevées et des types de données riches. En même temps, toutes les opérations de Redis sont atomiques et il prend également en charge l'exécution atomique après la fusion de plusieurs opérations. De plus, Redis dispose de riches fonctionnalités d'extension, qui prennent en charge la publication/abonnement, les notifications, l'expiration des clés et d'autres fonctionnalités.
Ce qui est encore mieux avec Redis, c'est que son style de code est extrêmement épuré. L'intégralité du code source ne fait que 23 000 lignes, ce qui est très propice à la lecture et à l'appréciation ! Qu'est-ce que tu attends ? Commencer!
Comment obtenir le code source Redis ?
Redis est entièrement open source et son code source peut être obtenu directement sur le site officiel (la dernière version est actuellement la 3.2.5).
Acquisition Git :
Acquisition du code source git clone https://github.com/antirez/redis.git
fin Linux
cd ... // 这里打开你存放redis的文件夹 wget http://download.redis.io/releases/redis-3.2.5.tar.gz tar zxvf redis-3.2.5.tar.gz
À ce stade, entrez le dossier src dans le répertoire redis décompressé, où est stocké tout le code source de redis.
[root@VM_123_20_centos redis-3.2.5]# cd src/ [root@VM_123_20_centos src]# ls Makefile crc64.h mkreleasehdr.sh redis-cli.o sort.o Makefile.dep crc64.o multi.c redis-sentinel sparkline.c adlist.c db.c multi.o redis-server sparkline.h adlist.h db.o networking.c redis-trib.rb sparkline.o adlist.o debug.c networking.o redisassert.h syncio.c ae.c debug.o notify.c release.c syncio.o ae.h debugmacro.h notify.o release.h t_hash.c ae.o dict.c object.c release.o t_hash.o ae_epoll.c dict.h object.o replication.c t_list.c ae_evport.c dict.o pqsort.c replication.o t_list.o ae_kqueue.c endianconv.c pqsort.h rio.c t_set.c ae_select.c endianconv.h pqsort.o rio.h t_set.o anet.c endianconv.o pubsub.c rio.o t_string.c anet.h fmacros.h pubsub.o scripting.c t_string.o anet.o geo.c quicklist.c scripting.o t_zset.c aof.c geo.h quicklist.h sds.c t_zset.o aof.o geo.o quicklist.o sds.h testhelp.h asciilogo.h help.h rand.c sds.o util.c bio.c hyperloglog.c rand.h sdsalloc.h util.h bio.h hyperloglog.o rand.o sentinel.c util.o bio.o intset.c rdb.c sentinel.o valgrind.sup bitops.c intset.h rdb.h server.c version.h bitops.o intset.o rdb.o server.h ziplist.c blocked.c latency.c redis-benchmark server.o ziplist.h blocked.o latency.h redis-benchmark.c setproctitle.c ziplist.o cluster.c latency.o redis-benchmark.o setproctitle.o zipmap.c cluster.h lzf.h redis-check-aof sha1.c zipmap.h cluster.o lzfP.h redis-check-aof.c sha1.h zipmap.o config.c lzf_c.c redis-check-aof.o sha1.o zmalloc.c config.h lzf_c.o redis-check-rdb slowlog.c zmalloc.h config.o lzf_d.c redis-check-rdb.c slowlog.h zmalloc.o crc16.c lzf_d.o redis-check-rdb.o slowlog.o crc16.o memtest.c redis-cli solarisfixes.h crc64.c memtest.o redis-cli.c sort.c
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!