sql >> データベース >  >> NoSQL >> Redis

Pythonでのredisとメモリからのベンチマーク取得(timeitを使用)

    ここで示した比較では、基本的に、Pythonが2番目のケースで新しい名前を値にバインドするのにかかる時間を測定しているだけです。したがって、これが別のプロセス(Redis)と通信するよりもはるかに高速であることは驚きではありません。私が驚いたのは、単にメモリに保持するためのオプションが存在する場合は、Redisから値を取得することを検討することだと思います。

    したがって、そもそもなぜこれにRedisを使用しているのかをより明確にする必要があります。常にインプロセスメモリよりも低速であり、そのためのベンチマークは必要ありません。 「なぜPythonリストと辞書を使用しないのか」と尋ねる必要がありますか?いくつかの有効な答えがあります。データが大きすぎてメモリに収まらない、しばらくすると値が消えるなどのキャッシュ固有の機能が必要な、またはIPCや永続性に使用したい。ここで答えがわかれば、実行したいベンチマークがわかります。そして、質問は「パフォーマンスの低下を最小限に抑えるために、上記の利点/機能をどのように取得するか」のようになります。 Redisだけが答えではないかもしれません。 shelfを検討してください 永続性のために、あるいは完全なリレーショナルデータベースやMongoなどのために。

    要するに、理由がわかったら、どのくらいの頻度で解決するのか。




    1. Mongodbをシリアル化するJSON

    2. ネストされた例外はredis.clients.jedis.exceptions.JedisConnectionExceptionです:プールからリソースを取得できませんでした

    3. 最近保存されたキーがLaravel経由で表示されないRedisCLI

    4. Mongoose / mongoDBクエリが結合します..しかし、私はSQLのバックグラウンドから来ています