当前位置:网站首页>Redis démarrer le tutoriel complet: Pipeline
Redis démarrer le tutoriel complet: Pipeline
2022-07-04 22:52:00 【Gu Ge Academy】
3.3.1 PipelineConcept
RedisL'exécution d'une commande par le client est divisée en quatre processus::
1)Envoyer une commande
2)File d'attente des commandes
3)Exécution des commandes
4)Retour aux résultats
Parmi eux1)+4)AppeléRound Trip Time(RTT,Temps aller - retour).
RedisCommande d'opération par lots fournie(Par exemplemget、msetAttendez.),Économiser efficacementRTT.Mais...
La plupart des commandes ne supportent pas les opérations par lots,Par exemple, pour exécuternUne foishgetallLes ordres,Non.
mhgetallL'ordre existe.,Consommation requisenUne foisRTT.RedisLes clients et les serveurs de peuvent être déployés dans
Sur la même machine.Par exemple, le client est à Pékin,RedisLe serveur est à Shanghai,La distance linéaire entre les deux endroits est d'environ
1300Km,Alors1Une foisRTTTemps=1300×2/(300000×2/3)=13MS(La lumière dans le vide
La vitesse de transmission est de3010 000 km,Supposons que la fibre optique soit la vitesse de la lumière2/3),Donc le client1Secondes
L'intérieur ne peut être exécuté que80Ordre de gauche à droite,Ceci etRedisLa caractéristique de débit élevé et simultané de
Allez..
Pipeline(Pipeline)Le mécanisme peut améliorer ces problèmes,Il peut rassembler un groupe deRedisOrdre d'entrer
Assemblage en ligne,Une foisRTTTransmission àRedis,Encore un groupe deRedisLes résultats de l'exécution des commandes sont séquentiels
Retour au client,Fig.3-5Pour non utiliséPipelineMise en œuvrenCommandes,Tout le processus exigenUne fois
RTT.

Fig.3-6Pour utilisationPipelineMise en œuvrenOrdre secondaire,Tout le processus exige1Une foisRTT.
PipelineCe n'est pas une nouvelle technologie ou un nouveau mécanisme,Beaucoup de techniques ont été utilisées.EtRTT
Il peut y avoir des différences dans différents environnements de réseau,Par exemple, la salle des machines et la même machine seront plus rapides, Cross - Computer Room Cross - area
Ça va être lent..RedisLe temps d'exécution réel de la commande est généralement au niveau microseconde,C'est pour ça qu'il y aRedisSexe
Le goulot d'étranglement est le réseau. .
redis-cliDe--pipe L'option est en fait d'utiliser PipelineMécanismes, Par exemple, les actions suivantes: set
hello worldEtincr counter Assemblage de deux commandes :
echo -en '*3\r\n$3\r\nSET\r\n$5\r\nhello\r\n$5\r\nworld\r\n*2\r\n$4\r\nincr\r\
n$7\r\ncounter\r\n' | redis-cli --pipe
Mais la plupart des développeurs ont tendance à utiliser Pipeline,Actuellement grande
SectionRedis Prise en charge des clients Pipeline,No4 Chapitre nous allons vous montrer comment JavaDeRedisInvité
MénagesJedisUtiliserPipelineFonction.
3.3.2 Essais de performance
Tableau3-1 Dans différents environnements de réseau PipelineEtPipelineMise en œuvre10000Une foissetFonctionnement
Effets de, Deux conclusions peuvent être tirées: :
·PipelineL'exécution est généralement plus rapide que l'exécution article par article.
·Plus le délai réseau du client et du serveur est long,PipelinePlus l'effet est évident.

Les chiffres spécifiques peuvent varier selon l'environnement d'essai. ,Ce testPipeline À chaque fois.
Avec100Commandes.

3.3.3 Commande de lot Native etPipelineComparer
Peut être utiliséPipeline Simuler l'effet de l'opération par lots , Mais il faut veiller à ce qu'il soit compatible avec l'original.
Différences dans la génération de commandes par lots , Les points suivants sont inclus: :
·La commande Native Batch est atomique,PipelineNon atomique.
·La commande Native Batch est une commande qui correspond à plusieurskey,PipelinePrise en charge de plusieurs commandes.
·La commande Native Batch estRedisLe serveur prend en charge la mise en œuvre de,EtPipelineBesoin d'un serveur et d'un client
Mise en œuvre commune de l'extrémité.
3.3.4 Meilleures pratiques
PipelineBien que bon à utiliser,Mais à chaque foisPipelineLe nombre de commandes assemblées ne peut être illimité,Non
Ensuite, Assemblez - le une foisPipelineTrop de données,D'une part, cela augmente le temps d'attente des clients,De l'autre côté
Les faces peuvent causer une certaine congestion du réseau,Peut contenir un grand nombre de commandes à la foisPipelineDivisé en plusieurs
Plus petitPipelinePour finir.
PipelineUn seulRedisExemple,Mais même dans la distributionRedisDans la scène,Oui.
En tant que moyen important d'optimisation des opérations par lots, Pour plus de détails, voir la Section 11Chapitre.
边栏推荐
- Attack and defense world misc advanced zone 2017_ Dating_ in_ Singapore
- Sword finger offer 68 - I. nearest common ancestor of binary search tree
- How can enterprises cross the digital divide? In cloud native 2.0
- 【OpenGL】笔记二十九、抗锯齿(MSAA)
- The sandbox has reached a cooperation with digital Hollywood to accelerate the economic development of creators through human resource development
- 常用技术指标之一文读懂BOLL布林线指标
- 9 - class
- 攻防世界 MISC 进阶区 can_has_stdio?
- [machine learning] handwritten digit recognition
- 质量体系建设之路的分分合合
猜你喜欢

The Sandbox 和数字好莱坞达成合作,通过人力资源开发加速创作者经济的发展

攻防世界 MISC 進階區 Erik-Baleog-and-Olaf

Attack and defense world misc advanced area Hong

Google Earth engine (GEE) - tasks upgrade enables run all to download all images in task types with one click

Redis的持久化机制

2022-07-04: what is the output of the following go language code? A:true; B:false; C: Compilation error. package main import “fmt“ func main() { fmt.Pri

10 schemes to ensure interface data security

LOGO特訓營 第一節 鑒別Logo與Logo設計思路

Lost in the lock world of MySQL

攻防世界 misc 进阶区 2017_Dating_in_Singapore
随机推荐
测试必会:BUG的分类及推进解决
Sobel filter
[Lua] Int64 support
POM in idea XML dependency cannot be imported
Co create a collaborative ecosystem of software and hardware: the "Joint submission" of graphcore IPU and Baidu PaddlePaddle appeared in mlperf
LOGO特訓營 第一節 鑒別Logo與Logo設計思路
Redis入门完整教程:Redis Shell
Redis入门完整教程:键管理
Persistence mechanism of redis
攻防世界 MISC 进阶区 can_has_stdio?
Advanced area of attack and defense world misc 3-11
新版判断PC和手机端代码,手机端跳转手机端,PC跳转PC端最新有效代码
Naacl-22 | introduce the setting of migration learning on the prompt based text generation task
Practice and principle of PostgreSQL join
Logo Camp d'entraînement section 3 techniques créatives initiales
In Linux, I call odspcmd to query the database information. How to output silently is to only output values. Don't do this
The table is backed up in ODPs. Why check m in the metabase_ Table, the logical sizes of the two tables are inconsistent, but the number of
It is said that software testing is very simple, but why are there so many dissuasions?
The new version judges the code of PC and mobile terminal, the mobile terminal jumps to the mobile terminal, and the PC jumps to the latest valid code of PC terminal
NFT insider 64: e-commerce giant eBay submitted an NFT related trademark application, and KPMG will invest $30million in Web3 and metauniverse