`
san_yun
  • 浏览: 2639600 次
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

测试redis-py的线程安全问题

 
阅读更多
import threading
import redis
#pool = redis.ConnectionPool(host="192.168.1.100", port=int(6379), db=1)
#redis_cache = redis.Redis(connection_pool=pool)
redis_cache = redis.StrictRedis(host="192.168.1.100",port=int(6379),db=1)

class TestThread(threading.Thread):  
	def __init__(self,redis_cache):  
		threading.Thread.__init__(self)  
		self.redis_cache = redis_cache  
  
	def run(self):  
		while True:  
			obj = self.redis_cache.get("uid:1002")
			if not obj:
				self.redis_cache.set("uid:1002","fdsjkfldsjlkdsflkds")
				self.redis_cache.expire("uid:1002", 60)
				print  self.getName()+'set'
			
			#print self.redis_cache.connection_pool._created_connections
			

for i in xrange(8):  
	t = TestThread(redis_cache)  
	t.start() 
 
分享到:
评论

相关推荐

    PyPI 官网下载 | redis-py-cluster-1.1.0.tar.gz

    5. **多线程支持**:Redis-Py-Cluster可以很好地在多线程或多进程环境中工作,每个线程或进程有自己的连接池,以避免竞态条件和提高并发性能。 6. **扩展性**:随着集群的扩展,`redis-py-cluster`可以轻松适应新的...

    Redis-x64-5.0.9.zip

    可以使用各种语言的Redis客户端连接,如Python的`redis-py`,Java的`Jedis`等。 13. **安全策略**: Redis可以通过设置密码认证,限制只允许特定IP连接,增加安全性。 14. **监控与性能分析**: Redis提供了`...

    windows系统下redis6.0.1编译包

    - Redis支持多种编程语言的客户端库,如Python的`redis-py`,Java的`Jedis`,C#的`StackExchange.Redis`等,可以根据开发语言选择合适的库进行连接操作。 9. **监控和性能调优**: - 使用`INFO`命令获取Redis的...

    redis-cpy.py

    redis多线程未授权批量检测工具,直接单url检测,也支持批量url检测,环境为python3,使用请在授权情况下使用,一切责任与作者无关。

    Windows版redis3.0 x64

    6. **使用和开发**:在Windows下开发应用时,可以通过`redis-cli.exe`进行调试和测试,也可以使用各种编程语言的Redis客户端库进行连接,例如Python的`redis-py`,Java的`Jedis`等。 总的来说,这个“Windows版...

    django-redis-sessions:用于将会话存储在Redis数据库中的Django的会话后端

    4. **安全性**:Redis作为内存数据库,安全性是需要注意的问题。必须正确配置Redis服务器,避免暴露在公网,同时考虑数据备份和恢复策略。 5. **扩展性**:使用Redis存储会话数据,可以轻松实现水平扩展,通过增加...

    Redis_windows安装包.zip

    可以使用Redis的命令行客户端`redis-cli.exe`连接到本地Redis服务器,或使用其他语言的Redis客户端库,如Python的`redis-py`,Java的`Jedis`等。 6. **Windows服务化** 要让Redis随Windows启动而自动启动,可以在...

    APScheduler-3.0.4-py2.py3-none-any.whl.zip

    3. **多线程与并发**:APScheduler 可以在多线程或多进程中运行任务,确保高并发场景下的性能和稳定性。开发者可以根据需求选择合适的执行模式。 4. **暂停与恢复**:在任务执行过程中,可以方便地暂停或恢复任务,...

    APScheduler-3.6.2-py2.py3-none-any.whl.zip

    - **持久化**:为了在程序重启后仍能保留任务状态,APScheduler 支持多种持久化策略,如 SQLite、MySQL 或 Redis,确保任务不会因为进程退出而丢失。 - **API**:APScheduler 提供了一套简洁易用的 API,用户可以...

    Redis Windows源码

    对于Windows开发者,可以选择C#、Java、Python等语言的客户端库,如StackExchange.Redis(C#)或redis-py(Python),与Redis服务器进行交互。 9. 性能优化: 在Windows环境中,考虑性能优化时,需要关注内存管理...

    Python库 | pickleshare-0.7.2-py2.py3-none-any.whl

    因此,使用PickleShare时需要注意线程安全,必要时可以借助外部同步机制,如Python的`threading.Lock`。 总结来说,PickleShare是一个轻量级的Python数据共享库,适用于简单场景下的数据存储和共享。它的易用性、...

    Python库 | stoneredis-0.5.2-py2.py3-none-any.whl

    5. **错误处理**:当发生网络问题或Redis服务器返回错误时,Stoneredis会抛出相应的异常,帮助开发者快速定位并解决问题。 6. **易于使用**:Stoneredis的API设计遵循Python的惯用法,使得新用户也能快速上手。 7....

    Python库 | django_simple_queue-0.1.5-py3-none-any.whl

    6. **线程安全**:考虑到多线程或多进程环境,`django_simple_queue` 设计了线程安全的接口,避免并发问题。 ### 安装与使用 要使用 `django_simple_queue-0.1.5-py3-none-any.whl` 文件,首先确保你的Python环境...

    PyPI 官网下载 | aioredlock-0.1.0-py3-none-any.whl

    分布式锁是一种在多节点之间协调访问共享资源的机制,确保同一时刻只有一个节点可以访问某个资源,避免数据冲突和同步问题。在微服务架构或分布式系统中,分布式锁的应用非常广泛。 **1. asyncio框架** Python的...

    PyPI 官网下载 | channels-1.0.1-py2.py3-none-any.whl

    标题中的"PyPI 官网下载 | channels-1.0.1-py2.py3-none-any.whl"指的是Python的包管理平台PyPI(Python Package Index)上发布的名为"channels"的库,版本号为1.0.1。这个文件是Python的whl(wheel)格式,它是一种...

    Python库 | kombu-5.1.0b1-py3-none-any.whl

    - **任务调度与异步处理**:Kombu 提供了任务队列的功能,可以将耗时较长或者不希望阻塞主线程的任务放入队列,由后台进程或线程去执行,从而提高应用的响应速度和并发能力。 - **路由和交换器**:Kombu 引入了 ...

    2019年 Redis从入门到高可用 分布式实战教程

    3-3 Python客户端:redis-py.mp4 3-2 Java客户端:Jedis.mp4 3-1 课程目录.mp4 2-9 list(2).mp4 2-8 list(1).mp4 2-7 hash (2).mp4 2-6 hash (1).mp4 2-5 字符串.mp4 2-4 单线程.mp4 2-3 数据结构和内部...

    Python库 | django_dramatiq-0.1.0-py3-none-any.whl

    在Python世界中,Django是一个著名的开源Web框架,用于快速开发安全和可维护的网站。而`django_dramatiq` 将Dramatiq的功能无缝地引入到Django项目中,使得开发者可以利用消息队列处理任务,比如发送电子邮件、执行...

    Python库 | huaweicloudsdkdcs-3.0.9b0-py3-none-any.whl

    3. **安全认证**:该库支持华为云的身份认证(IAM)机制,确保只有经过授权的用户才能访问DCS服务,保障数据安全。 4. **异常处理**:SDK内置了异常处理机制,当调用过程中出现错误时,会抛出相应的异常,帮助...

    aio-py-rq:此库由异步Python和Lua脚本集组成,使您可以轻松实现基于Redis的排队系统

    异步python库aio-py-rq 该库由异步Python和Lua脚本集组成,使您能够轻松实现基于Redis的排队系统。 所有队列在多线程环境中均能正常工作。 您唯一需要记住的是,对于多个消费者来说,商品的顺序是无法保留的。 例如...

Global site tag (gtag.js) - Google Analytics