草庐IT

PostgreSQL-psql

全部标签

postgresql - 应该如何更新 CRUD 应用程序中的 Redis 缓存?

我正在制作一个CRUD应用程序,它使用PostgreSQL作为主要存储并使用Redis作为缓存。对于应用程序的这一部分,API从Redis缓存中提取所有数据。这对于从Redis读取来说效果很好,但现在我希望在创建/更新/删除期间提交给数据库的更改立即反射(reflect)在Redis缓存中。我不确定该怎么做,或者这是否是最好的方法。有人可以举例说明如何实现这一点吗? 最佳答案 首先,这在很大程度上是不必要的。设计良好的PostgreSQL数据库速度很快,无需任意缓存每个查询。您有某些缓慢且无法优化的查询,如您所知,您可以在应用程序级

postgresql - Gitlab从7.11升级到8.0后无法启动postgresql、redis和sidekiq

我从Gitlab7.11更新到8.0。由于根分区空间不足,我通过卸载了Gitlab7sudogitlab-ctluninstall并通过安装8sudoapt-getinstallgitlab-ce我还有一些其他问题,我在网上找到了解决方案,并最终设法让8启动并运行。我已经确认数据仍然存在。问题是我无法通过gitlab-ctl启动postgresql、redis和sidekiq服务:administrator@development:/var/opt/gitlab$sudogitlab-ctlrestartok:run:gitlab-git-http-server:(pid15873)1

postgresql - Gitlab从7.11升级到8.0后无法启动postgresql、redis和sidekiq

我从Gitlab7.11更新到8.0。由于根分区空间不足,我通过卸载了Gitlab7sudogitlab-ctluninstall并通过安装8sudoapt-getinstallgitlab-ce我还有一些其他问题,我在网上找到了解决方案,并最终设法让8启动并运行。我已经确认数据仍然存在。问题是我无法通过gitlab-ctl启动postgresql、redis和sidekiq服务:administrator@development:/var/opt/gitlab$sudogitlab-ctlrestartok:run:gitlab-git-http-server:(pid15873)1

python - 将数据从 redis 哈希转储到 postgresql 表的更快方法

我正在进行批量数据处理,为了速度起见,我首先将数据存储在redis中,然后每隔2分钟将其转储到postgresql数据库中。我使用了redishash来存储数据,甚至redis中的hashkey都对应着数据库表中的列。我正在使用redis.scan()获取存储数据行的Redis哈希列表,然后使用redis.hgetall()获取数据散列。从那里,我在SqlAlchemy中创建一个SQLInsert语句,并执行批量数据插入到数据库中。我面临的问题是我必须首先使用SCAN提取包含我的数据的key:redis_match='data:row_keys:*'row_keys=rdb.scan_

python - 将数据从 redis 哈希转储到 postgresql 表的更快方法

我正在进行批量数据处理,为了速度起见,我首先将数据存储在redis中,然后每隔2分钟将其转储到postgresql数据库中。我使用了redishash来存储数据,甚至redis中的hashkey都对应着数据库表中的列。我正在使用redis.scan()获取存储数据行的Redis哈希列表,然后使用redis.hgetall()获取数据散列。从那里,我在SqlAlchemy中创建一个SQLInsert语句,并执行批量数据插入到数据库中。我面临的问题是我必须首先使用SCAN提取包含我的数据的key:redis_match='data:row_keys:*'row_keys=rdb.scan_

postgresql - 使用黑名单撤销 JWT session token 。我应该为性能黑名单创建另一个系统吗?

我正在创建一个Web应用程序(使用C++,以提高性能),我期望每秒处理大量事件;像成千上万。我一直在阅读关于在我的网络session中使JWTtoken无效的信息,对此最合理的解决方案是为列入黑名单的token设置一个存储位置。每个请求都必须检查该列表,我想知道的是与性能相关的问题:我应该创建一个单独的系统来存储我列入黑名单的token(如redis)吗?还是我应该只使用我用于其他一切的同一个PostgreSQL数据库?使用另一个系统有什么优势?我问的原因是我在网上看到很多关于使JWTtoken失效的讨论,许多人建议使用redis(并且不解释它是否只是与他们的设计相关的解决方案或者它是

postgresql - 使用黑名单撤销 JWT session token 。我应该为性能黑名单创建另一个系统吗?

我正在创建一个Web应用程序(使用C++,以提高性能),我期望每秒处理大量事件;像成千上万。我一直在阅读关于在我的网络session中使JWTtoken无效的信息,对此最合理的解决方案是为列入黑名单的token设置一个存储位置。每个请求都必须检查该列表,我想知道的是与性能相关的问题:我应该创建一个单独的系统来存储我列入黑名单的token(如redis)吗?还是我应该只使用我用于其他一切的同一个PostgreSQL数据库?使用另一个系统有什么优势?我问的原因是我在网上看到很多关于使JWTtoken失效的讨论,许多人建议使用redis(并且不解释它是否只是与他们的设计相关的解决方案或者它是

postgresql - 用于分布式环境的 Broadleaf Ehcache 到 Redis

目前,我们在没有Terracotta的情况下在本地使用Ehcache。我们计划在两个不同的实例中部署阔叶客户API,并在前端使用负载均衡器。我做了一个小调查,发现赤土陶土是有成本的,而且由于我们是一家初创公司,我不能投资赤土陶土。我听说过Redis,它是免费的,而且非常适合分布式环境。我的问题是,1.我们可以将阔叶Ehcache迁移到Redis或任何其他免费的Java分布式缓存吗?2.如果可能的话,我必须在阔叶树上做什么?这样我们就可以很容易地从Ehcache迁移到新的。 最佳答案 你可以,但有几个问题,首先Broadleaf直接使

postgresql - 用于分布式环境的 Broadleaf Ehcache 到 Redis

目前,我们在没有Terracotta的情况下在本地使用Ehcache。我们计划在两个不同的实例中部署阔叶客户API,并在前端使用负载均衡器。我做了一个小调查,发现赤土陶土是有成本的,而且由于我们是一家初创公司,我不能投资赤土陶土。我听说过Redis,它是免费的,而且非常适合分布式环境。我的问题是,1.我们可以将阔叶Ehcache迁移到Redis或任何其他免费的Java分布式缓存吗?2.如果可能的话,我必须在阔叶树上做什么?这样我们就可以很容易地从Ehcache迁移到新的。 最佳答案 你可以,但有几个问题,首先Broadleaf直接使

django - 在 Django 中优化(和缓存?)postgreSQL 写入

我有一个应用程序,如果未优化,将需要多次写入postgreSQL数据库以响应实时信息-每秒多达1次!!!因此,我想缓存此数据流-通过redis/redisco或memcache-然后每隔约5分钟在我的postgreSQL数据库中执行一次bulk_create。据我了解,django内存缓存将存储在内存中,但在需要写入时可能会使内存缓存无效。或者,我正在考虑将信息放入redis,可能使用redisco模型,并且每~5分钟对数据库执行一次bulk_create。3部分问题:哪个选项更适合长期扩展?各自的优点/缺点是什么?最后,有没有人有我可以阅读的引用资料/教程?谢谢!