草庐IT

MemCached

全部标签

python - 如何为具有许多不同查询变量的 Python Web 应用程序构建数据库缓存(memcached/Redis)?

对于我的应用程序,我使用的是Flask,但我提出的问题更为笼统,可以应用于任何Python网络框架。我正在构建一个比较网站,我可以在其中更新数据库中有关产品的详细信息。我想构建我的应用程序,以便访问我网站的99%的用户永远不需要查询数据库,而是从缓存(memcached或Redis)中检索信息。我要求我的应用程序是实时的,因此我对数据库所做的任何更新都必须立即可供网站的任何访问者使用。因此我不想缓存View/路由/html。我想缓存整个数据库。但是,因为在查询时有太多不同的变量,我不确定如何构建它。例如,如果我要缓存每个查询,然后需要更新数据库中的产品,我基本上需要刷新整个缓存,这对于

python - 如何为具有许多不同查询变量的 Python Web 应用程序构建数据库缓存(memcached/Redis)?

对于我的应用程序,我使用的是Flask,但我提出的问题更为笼统,可以应用于任何Python网络框架。我正在构建一个比较网站,我可以在其中更新数据库中有关产品的详细信息。我想构建我的应用程序,以便访问我网站的99%的用户永远不需要查询数据库,而是从缓存(memcached或Redis)中检索信息。我要求我的应用程序是实时的,因此我对数据库所做的任何更新都必须立即可供网站的任何访问者使用。因此我不想缓存View/路由/html。我想缓存整个数据库。但是,因为在查询时有太多不同的变量,我不确定如何构建它。例如,如果我要缓存每个查询,然后需要更新数据库中的产品,我基本上需要刷新整个缓存,这对于

nosql - memcached 类似具有磁盘持久性的软件

我有一个在UbuntuLinux12.04上运行的应用程序,它需要存储和检索大量大型序列化对象。目前存储是通过简单地将序列化流保存为文件来实现的,其中文件名等于序列化对象的md5哈希值。但是,我想加快速度,用一个对最近读/写的对象进行内存缓存的文件存储进行替换,并且最好为我进行哈希处理。我的应用程序的设计不应该变得更复杂。因此,最好是一个存储后端,以抽象和有效的方式管理键值数据库和缓存。我有点迷失了所有的键/值存储,而且很多主题/信息似乎已经过时了。我最初是在寻找类似memcached+membase的东西,但也许有更好的解决方案。我研究了redis、mongodb、couchdb,但

nosql - memcached 类似具有磁盘持久性的软件

我有一个在UbuntuLinux12.04上运行的应用程序,它需要存储和检索大量大型序列化对象。目前存储是通过简单地将序列化流保存为文件来实现的,其中文件名等于序列化对象的md5哈希值。但是,我想加快速度,用一个对最近读/写的对象进行内存缓存的文件存储进行替换,并且最好为我进行哈希处理。我的应用程序的设计不应该变得更复杂。因此,最好是一个存储后端,以抽象和有效的方式管理键值数据库和缓存。我有点迷失了所有的键/值存储,而且很多主题/信息似乎已经过时了。我最初是在寻找类似memcached+membase的东西,但也许有更好的解决方案。我研究了redis、mongodb、couchdb,但

python - Redis 或 Memcached 是否可以用于 "lock"资源,例如 S3 之类的 blobstore?

想要“锁定”外部资源,在本例中它将是存储在rackspacecloudservers上的“blob”,类似于AmazonS3。(使用Python)希望像这样处理竞争条件:第一个进程创建资源锁第一个进程开始编辑资源第二个进程尝试编辑相同的资源并发现该资源已被锁定。第二个进程请求在锁被取消时得到通知第一个进程完成编辑资源并移除锁第二个进程收到释放资源的通知并能够进行自己的编辑想使用Memcached或Redis来创建锁,但也可以使用不同的机制。其中大部分都非常简单,我正在努力解决的部分是如何在锁被移除时通知第二个进程,而不是强制它等待并重试。Redis有publish/subscribef

python - Redis 或 Memcached 是否可以用于 "lock"资源,例如 S3 之类的 blobstore?

想要“锁定”外部资源,在本例中它将是存储在rackspacecloudservers上的“blob”,类似于AmazonS3。(使用Python)希望像这样处理竞争条件:第一个进程创建资源锁第一个进程开始编辑资源第二个进程尝试编辑相同的资源并发现该资源已被锁定。第二个进程请求在锁被取消时得到通知第一个进程完成编辑资源并移除锁第二个进程收到释放资源的通知并能够进行自己的编辑想使用Memcached或Redis来创建锁,但也可以使用不同的机制。其中大部分都非常简单,我正在努力解决的部分是如何在锁被移除时通知第二个进程,而不是强制它等待并重试。Redis有publish/subscribef

php - 寻找API优化建议

过去,我问过几个关于如何创建自己的API以允许外部站点访问我存储在数据库中的数据库的问题。这个特殊的问题是我正在寻求有关如何优化外部站点的API访问以帮助降低本地服务器负载的建议。首先,API的设置方式是使用MySQL保存数据,使用php提供数据。API本身由URL调用,URL中包含APIkey。例如:http://mysite.com/get_listings.php?key=somekey然后我的脚本执行上面的操作需要执行的操作,然后以json格式返回结果。目前,该API每月服务10-15k个独立调用,我正在添加另一组站点,这些站点将在API现在服务的基础上每月带来另外20-30k

php - 寻找API优化建议

过去,我问过几个关于如何创建自己的API以允许外部站点访问我存储在数据库中的数据库的问题。这个特殊的问题是我正在寻求有关如何优化外部站点的API访问以帮助降低本地服务器负载的建议。首先,API的设置方式是使用MySQL保存数据,使用php提供数据。API本身由URL调用,URL中包含APIkey。例如:http://mysite.com/get_listings.php?key=somekey然后我的脚本执行上面的操作需要执行的操作,然后以json格式返回结果。目前,该API每月服务10-15k个独立调用,我正在添加另一组站点,这些站点将在API现在服务的基础上每月带来另外20-30k

ruby - Redis存储地理信息,

我刚遇到一个问题。我使用redis来存储地理信息。为了示例:hset10001la41.000333hset10001lo121.999999或zaddla41.xxxxxpk-valuezaddlo121.xxxxxpk-value大约40000个键值key为终端id,value为set,存储termianl全局定位系统信息。我需要计算周围终端。例如,我的位置是41.000123、121.999988,我想最快计算我所在位置附近的终端,我知道如何计算两个位置的距离。我只想想一种快速迭代所有数据的方法。在Redis2.6中有lua支持。它能帮助解决我的问题吗?

ruby - Redis存储地理信息,

我刚遇到一个问题。我使用redis来存储地理信息。为了示例:hset10001la41.000333hset10001lo121.999999或zaddla41.xxxxxpk-valuezaddlo121.xxxxxpk-value大约40000个键值key为终端id,value为set,存储termianl全局定位系统信息。我需要计算周围终端。例如,我的位置是41.000123、121.999988,我想最快计算我所在位置附近的终端,我知道如何计算两个位置的距离。我只想想一种快速迭代所有数据的方法。在Redis2.6中有lua支持。它能帮助解决我的问题吗?