sql >> Databáze >  >> NoSQL >> Redis

Redis je jednovláknové. Tak proč bych měl používat salát?

Protože trávíte čas nejen tím, že Redis provádí příkazy, ale také přenosem dat (odesílání příkazů, přijímání výsledků). V režimu jednoho vlákna při přenosu Redis nefunguje. Zatímco Redis funguje, nedochází k žádnému přenosu. Vícenásobná připojení nebo jedno zřetězené připojení vám pomohou nasytit šířku pásma i cykly CPU.

A luttece není jen o rychlosti. Pomáhá vám také lépe organizovat kód pomocí asynchronního a reaktivního rozhraní API.

Zpět k tématu výkonu, zde je jednoduchý benchmark, který vám pomůže obecně porozumět vlivu vláken a sdružování. Všimněte si, že zatímco sdružování je o něco pomalejší (strávíte nějaký čas operacemi s fondem), umožňuje vám izolovat akce (takže chyba neovlivní ostatní vlákna) a používat MULTI a blokovací příkazy.

Zde jsou mé výsledky (místní systém má 4 jádra, CPU vzdáleného systému je asi 2krát pomalejší):

Vlákna=1

benchmark (adresa) režim CNT skóre chybová jednotka UnitSlettuceThreads.Pooled Socket Thropt 25 35389,995 ± 1325.198 OPS/SLETTUCETHREADS.Pooloded Localhost Thrpt 25 3883.193 ítre. socket thrpt 25 39419,772 ± 1966,023 ops/sLettuceThreads.shared localhost thrpt 25 34293,245 ± 1737,349 ops/sLettuceThreads.shared remote thrpt 25 3919.2 op1 3919.2 ops.

Vlákna=2

benchmark (adresa) režim CNT skóre chybová jednotka jednotky unitleTtuceThreads.Pooled Socket Thrpt 25 56938.187 ± 2727,772 OP/SLETTUCETHETHREDS.POOLED Localhost Thrpt 253331.5.506.5.506. OPS/SLETTUCETHS. socket thrpt 25 81195,900 ± 1593,424 ops/sLettuceThreads.shared localhost thrpt 25 78404,688 ± 3878,044 ops/sLettuceThreads.shared remote thrpt 25 3992.0 ops2

Vlákna=4

benchmark (adresa) režim CNT skóre chybová jednotka UnitSlettuceThreads.Pooled Socket Thropt 25 87345.126 ± 8149.009 OPS/SLETTUCETHREADS.Pooled Localhost Thrtpt 25876 OP/SLETTETHETHS OPS/SLETTETHETHS/SLETTETHETHS/SLETTETHETHS. socket thrpt 25 169112,489 ± 3749,897 ops/sLettuceThreads.shared localhost thrpt 25 115464,778 ± 5099,728 ops/sLettuceThreads.shared 3 thrpt 25 25 7952. ops.

Zde můžete vidět, že výkon se velmi dobře mění s počtem vláken, takže hlávkový salát není zbytečný.




  1. Redis INCRBY s limity

  2. Jarní bota + redis

  3. Další zastávka – Vytvoření datového kanálu od Edge k Insight

  4. Výkon hromadného vkládání v MongoDB pro velké sbírky