草庐IT

High-Performance

全部标签

performance - PostgreSQL 的写入速度为何比 SQLite 快得多?

我做了一个简单的整数更新性能测试。SQLite每秒仅进行15次更新,而PostgreSQL每秒进行1500次更新。SQLite大小写的数字似乎是normal.FAQSQLite站点中的解释好像这是旋转磁盘的基本限制。Actually,SQLitewilleasilydo50,000ormoreINSERTstatementspersecondonanaveragedesktopcomputer.Butitwillonlydoafewdozentransactionspersecond.Transactionspeedislimitedbytherotationalspeedofyour

performance - Redis Twitter Clone 有N+1 Get?

我正在查看Twitter克隆@http://redis.io/topics/twitter-clone并注意到代码中有一个类似N+1的“get”:foreach($postsas$p){如果(showPost($p))$c++;如果($c==$count)中断;}函数showPost($id){$r=redisLink();$postdata=$r->get("post:$id");...我知道在处理Redis时,所有关系数据库的熟悉程度都必须放在家里,但无论如何,上面的代码似乎都不是最理想的。有什么方法可以改进这段代码,还是我的理解不正确?提前致谢! 最佳

performance - memcached 和 Redis 等工具的主要用例是什么?

我的主要兴趣在于这些工具可用于对现有的基于RDBS的事务性应用程序进行性能调整的用例。是否有涉及这些工具的常见设计模式的良好来源?经过一些研究,我发现以下示例用例适用于Redis,在SQL数据存储上实现起来更困难(肯定更慢):Feed或类似尾部的逻辑(最后一篇文章出现在顶部)感谢Redis的列表管理功能:LPUSHpost::comments//postscommentLRANGEpost::comments09//instantlygetslast10comments标签管理利用Redis的集合管理功能(和集合交互)可以轻松实现标签系统高并发大容量服务评分板Redis可以在O(log

performance - localhost Redis Db 的往返成本是多少?可以忽略吗?

我计划在Windows上使用Redis。服务器将包括RedisDb和IIS。延迟是否可以忽略? 最佳答案 RedisClientrc=newRedisClient("localhost");Stopwatchsw=Stopwatch.StartNew();for(inti=0;i64位Windows7i-52500K@3.9GHz100000Ping5.2秒。我认为服务器的以太网卡的分数会更好。 关于performance-localhostRedisDb的往返成本是多少?可以忽略吗?,

performance - 使用 hmget 的 Redis 性能

我想通过在我的应用程序中使用hmget从redis中获取多个值,一次获取大约1000+个值。但我担心它会导致一些性能问题。有人试过这个吗? 最佳答案 应该真的不是问题,因为它是O(N),其中N是请求的字段数。所以在你的情况下是O(1000+),没有网络往返,当然所有都在RAM中。如果你担心它可能太多了(但我对此表示怀疑,如果你真的需要测试它)或者你的数据会增长到意想不到的大小(这确实是一件令人害怕的事情),你应该考虑运行更小的查询具有固定大小的哈希,例如获取字段值1000x1000,直到您全部读取它们。这只是为了不达到redis任务

performance - RediSearch,创建单个索引好还是多个索引好?

正在使用RediSearch构建索引在一个Multi-Tenancy应用程序中:150,000名租户每个租户平均有3,500位客户每个客户有10个字段将被添加到索引中所有字段都是TextFields。问题是,在这种情况下,什么是最佳实践(性能、内存/存储、灵active)?我应该创建一个带有tenant_code字段的customer_index来帮助识别哪些数据属于哪个租户,还是应该创建一个特定于租户的索引?根据我目前的经验和理解,特定于租户的索引意味着许多索引,但其中的数据较少,而且它还能让我灵活地为特定租户删除和重新创建索引?在Python中,代码如下:单一客户索引client=

performance - 跟进 [Segmenting Redis By Database] 的 Q

这是一个后续问题SegmentingRedisByDatabase.我最初问的是一个redis实例内不同数据库的rediskeys操作的时间复杂度。我问的原因是因为我试图在有x多段键的地方实现一个缓存,每个键都可能有y实际数据实例,导致xy总键数。不过,我想支持主键的通配符搜索,似乎在redis中唯一实现的键的通配符查询是keys命令,使用它气馁。在我看来,将x键放在一个单独的数据库中似乎是一个不错的折衷方案,在该数据库中,较少数量的键将进行keys操作表现令人满意。谁能提出更好的选择?谢谢。 最佳答案 我仍然认为使用KEYS确实无

Erlang 和 Redis : read performance

我在尝试从Redis排序集中读取1M记录时突然遇到性能问题。我使用了ZSCAN,光标和批量大小为5K。代码是在托管Redis的同一台机器上使用ErlangR14执行的。接收5K元素批处理需要将近1秒。不幸的是,我在这台机器上编译ErlangR16失败了,但我认为这没有关系。相比之下,带有node_redis(hiredis解析器)的Node.js代码在2秒内完成1M。Python和PHP的结果相同。也许我做错了什么?提前致谢。这是我的Erlang代码:-module(redis_bench).-export([run/0]).-define(COUNT,5000).run()->{_,

php - 如何使用 Homebrew 软件或 pecl 在 macos high sierra 上的 php 7.0 上安装 php-redis?

尝试在我的highsierraapache上为php7.0安装redis扩展。brewinstallphp-redis-不起作用。brewinstallphp@7.0-redis-不起作用。brewinstallphp70-redis-不起作用。googlegooglegoogle-Homebrew是错误的方法,他们说使用pecl。peclsearchredis显示:redis4.0.2(stable)4.0.2用于与Redis接口(interface)的PHP扩展所以pecl安装redispecl/redis已经安装好,和releasedversion4.0.2一样安装失败嗯。这是正

performance - 平衡 Redis 查询和进程内内存?

我是一名软件开发人员,但想成为服务器可扩展性领域的新架构师。在多个服务使用同一数据集的情况下,旨在扩展冗余和负载平衡。问题是:在一个理想主义的系统中,服务是否应该尝试优化它们的内部处理以减少对远程服务器缓存的查询量,从而以牺牲一些本地内存和代码库为代价来获得更好的性能和更少的带宽,或者是每次任何事务需要对数据进行处理时,最好都将远程缓存作为单个事务点进行查询吗?当我在网上阅读有关Redis甚至一般数据库用法的信息时,后者似乎是常见的选择。扩展应用程序的每个节点都没有内存,并且在每个事务中直接读取和写入远程缓存。但是作为开发者,请问这不是极大的资源浪费吗?无论您是在电子芯片级别、线程间、