- 博客(6)
- 资源 (16)
- 收藏
- 关注
原创 python基于redis优化分布式锁
基于redis的分布式锁,最近看到分布式锁都是一级分布式锁,而且未拿到锁需要休眠几秒钟继续撞redis,心疼redis三秒钟,本方案采用二级分布式锁,一级锁拿不到就等二级锁,这种不需要几毫秒撞击一次redis,对于超高并发能大大减轻redis的负荷pip3 install -r requirements.txt核心代码仓库地址:https://gitee.com/favouriter/care4redis......
2022-07-06 11:50:32
12828
原创 Retrofit2系列FileConverterFactory上传封装实现
FileConverterFactory使用说明我为什么要写这个文件转换我们在使用retrofit的时候,创建请求参数是不是很繁琐,尤其是在使用@Part的时候不能直接使用原始类型,因为我们使用GsonConverterFactory转换工厂后,所有的类型都加上双引号,比如:@Part("username")String username,我们传个admin,请求就被GsonConvert...
2018-10-29 17:36:43
618
原创 Greendao的缓存使用
很多人觉得Greendao缓存很烦人,于是每次都先清理缓存在查询,其实大可不必,既然这么设计就有这么设计的道理,首先我们的理解缓存的设计及实现原理首先缓存在哪呢?如果我们先从load方法跳入看一下public T load(K key) { assertSinglePk(); if (key == null) { return null; } if ...
2018-05-29 17:15:04
1508
原创 Greendao的升级完美解决方案
我看到很多关于Greendao的升级解决方案,大都是修改onUpgrade方法,但是我觉得这样升级版本多了代码变得雍容,不利于代码维护,最开发有一种思想叫配置优于编码,以前使用的数据库是active Android,这个数据库升级就比较好,每个版本配置一个版本号加sql的升级脚本,于是继续萌生这种执行升级脚本的想法,把所有的升级内容写在脚本里,升级的时候执行相应的版本优点:1、支持跨版本升级,如果...
2018-05-29 16:42:11
3643
2
原创 android最简单的ViewPager无限翻页
首先初始化一个视图集合,代码如下:private void initlist() {for (int i = 0; i TextView v = new TextView(MainActivity.this);v.setText("页面" + (i + 1));v.setTextColor(0xFFFF0000);v.setTextSize(TypedValue.COMPL
2014-11-22 08:13:34
1789
万能破解XP系统登陆密码
2011-12-30
万能破解XP系统登录密码
2011-12-22
3Dmax的ppt教程
2011-10-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人