历精图治
码龄12年
关注
提问 私信
  • 博客:63,784
    问答:417
    64,201
    总访问量
  • 55
    原创
  • 2,176,639
    排名
  • 3
    粉丝
  • 0
    铁粉

个人简介:十足的工作经验,敢于承担责任,我对工作有很大热情!做过几个商城的网站开发和维护,善于沟通,喜欢专研。选择我绝对不会让你失望。

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:马来西亚
  • 加入CSDN时间: 2013-01-08
博客简介:

众人皆醉,唯我独醒

博客描述:
做一个有魅力的框架师
查看详细资料
个人成就
  • 获得4次点赞
  • 内容获得1次评论
  • 获得11次收藏
创作历程
  • 10篇
    2022年
  • 22篇
    2018年
  • 16篇
    2016年
  • 9篇
    2015年
成就勋章
TA的专栏
  • 面试
    2篇
  • spring mvc
    3篇
  • spring
    2篇
  • jstl
    1篇
  • 购物车
    1篇
  • mybatis
  • hibernate
  • maven
    3篇
  • Struts2
    1篇
  • Git
  • SVN
  • Oracle
  • mysql
  • 设计模式
  • Junit
    2篇
  • hessian
  • webservice
  • dubbo
    1篇
  • 工具类
    5篇
  • JPA
  • 多线程
    4篇
  • mogodb
    1篇
  • redis
    18篇
  • 大数据
    1篇
兴趣领域 设置
  • 大数据
    mysqlredis
  • 后端
    架构
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

maven依赖关系

最短路径原则在最后一级,最后声明原则不在第一级,谁先引用先使用谁第一种:通过exclusion 排除不需要的依赖第二种:使用【dependencyManagement】指定使用哪一个版本的依赖。作用:统一版本管理/指定依赖管理第三种(必杀):直接在jar包中删除冲突了的(多余的那个依赖)对应的package包。直接删除文件,但是jar需要放到私有仓库里面...
原创
发布博客 2022.02.28 ·
281 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

事务trasaction是否失效?

发布问题 2022.02.25 ·
1 回答

Websocket应用

概念TCP 全双工通信协议 双向 数据传输代码实现引入依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-websocket</artifactId></dependency> Configuration配置 @Configurationpublic class W.
原创
发布博客 2022.02.21 ·
1643 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

ThreadLocal作用

private static ThreadLocal threadLocal = new ThreadLocal<>();线程内部的共享变量ThreadLocalMap是ThreadLocal的内部类,由ThreadLocal创建,所有的value都存储在ThreadLocalMap中。ThreadLocalMap.Entry 继承了weakReference每个Entry对象都有一个threadLocal的弱引用。GC对弱引用对象采取积极回收的内存回收策略。用完threadlo
原创
发布博客 2022.02.16 ·
276 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

幂等性技术

使用场景购物下单生成订单支付扣款库存扣减物流发货解决方案前端前端防重RPG模式 :Post Direct Get 重定向到另外一个页面,防止刷新 Token机制:对业务代码执行和删除token整体加线程锁,其它线程排队阻塞 借助单线程redis incr 第一次获取token并incr返回1,如果第二次incr后返回2就是合法请求,如果为其它值,就为非法请求直接返回。 最优解 校验删除token,第一次token存入redis,第二次执行业务删除token,如...
原创
发布博客 2022.02.16 ·
404 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

mysql sql优化

避免不走索引 like'你%' in () not in() 修改为exist not exist 避免全表扫描 union替代or where 1=1 <> 或者!= 联合索引最左匹配 隐式转换无法走索引 a = 123 为varchar 小表在前大表在后 批量插入语句 整合成一条 union all 性能高 union性能低 explain 分析字段的索引级别...
原创
发布博客 2022.02.16 ·
251 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

java代码review

代码审查工具 代码书写风格是否一致 日志是否全,出现错误打印错误日志 减少硬编码、配置文件注释 锁的粒度控制、何时释放锁 内存泄漏问题 降低反映速度 for循环带读写操作...
原创
发布博客 2022.02.16 ·
433 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

雪花算法原理

概念标识位+41位时间戳+5位数据中心ID+5位工作机器ID+12位自增序列64bits整数ID1 bit :固定为041bit:时间戳 2^24 -1 个毫秒值10bit:5个机房ID ,5个机器ID 根据公司情况定制12bit :自增序列 2^12-1 =4096个优点:时间回拨后,生成ID会重复,保证网络时间一致springboot yaml中配置机器编号shadring配置yaml中需要配置workid美团LEAF-SNOWFLAKE使用zookeep..
原创
发布博客 2022.02.16 ·
582 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

缓存击穿 缓存雪崩 缓存穿透

适合缓存的场景访问频率高、读多写少、一致性要求低缓存击穿缓存在某个时间点某个key过期,这个时候大量的并发请求这个key过来,直接查询数据库把DB压垮。解决方案:定时器:elastic-job、xxl-job 多级缓存 nginx一级缓存、redis二级缓存、定时更新缓存 零点洪峰时,采用rabbitmq队列术缓存穿透缓存中一直不存在,就直接查数据库了。解决方案:查询为空还是要设置空到redis ,布隆过滤器缓存雪崩redis缓存层崩掉了,导致都到了数据...
原创
发布博客 2022.02.16 ·
1046 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

安全控制解决方案

无效路径收集 nginx获取http请求后404,将请求地址存储到缓存,下次直接跳转404 缓存击穿 定期检测缓存过期时间,一旦过期就做队列限流控制 黑白名单过滤 每次获取ip,一旦为黑名单拒绝访问 异常熔断降级 链接指定时间内频率超过N,将路径存入缓存,一段时间内禁止访问,防止宕机。...
原创
发布博客 2022.02.16 ·
1258 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

布隆过滤器

迅速判断一个元素是否在集合中解决大规模数据下不需要精准过滤的场景使用场景网络爬虫对URL的去重,避免爬取相同的URL地址 反垃圾邮件,从数十亿个垃圾邮件列表判断是否为垃圾邮箱 缓存穿透 原理维护一个全为0的bit数组误判率:数组越长,误判率越低,所占空间越大。 数组越短,误判率越高,所占空间越小。假设我们生成10位的数组,以及两个hash函数,f1,f2。假设输入集合N1,N2 ,f1(N1) = 2 ,f2(N2) =5 ,那么数组下标2 和小标5的值就从0重置...
原创
发布博客 2022.02.16 ·
190 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

大数据hadoop工具

导入文件 :yum install -y lrzsz导出文件 :sz 文件杀掉所有的进程jps -q | xargs killrpm -qa|grep ntpsudo service ntpd statuschkconfig yum install ntp ntpdatehadoop -dfs -appendToFIle - /test/a 1234 标准追加hdfs...
原创
发布博客 2018.12.20 ·
409 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

大数据hadoop工具

导入文件 :yum install -y lrzsz导出文件 :sz 文件杀掉所有的进程jps -q | xargs killrpm -qa|grep ntpsudo service ntpd statuschkconfig yum install ntp ntpdatehadoop -dfs -appendToFIle - /test/a 1234 标准追加hdfs...
原创
发布博客 2018.12.20 ·
409 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

生产者消费者问题

/* * 生产者与消费者问题: * * (1)线程安全问题:因为生产者与消费者共享“缓冲区”,本例中工作台 * (2)缓冲区大小有限问题,所以需要生产者与消费者“协调”工作 * 一个wait一个notify * * * 解决方法: * (1)wait() * (2)notify()/notifyAll() * notiyAll 多个生产者消费者才使用 * ...
翻译
发布博客 2018.11.22 ·
254 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

线程锁 -卖票机制

public class TicketService { ArrayList&lt;String&gt; list = new ArrayList&lt;&gt;() ; //private Vector list = new Vector (); vector中方法 remove 和size 是有锁 public TicketService(){ list.add(...
翻译
发布博客 2018.11.22 ·
324 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

龟兔比赛 多线程

/***龟兔比赛*编写龟兔赛跑多线程程序,设置赛跑长度为30米兔子的速度是10米每秒 兔子跑完10米后休眠的时间为10秒乌龟的速度是1米每秒 乌龟跑完10米的休眠时间是1秒要求兔子和乌龟的线程西结束 主线程才能公布最后的结果*/public class TestWuGuiTrace { public static void main(String[] args) {...
原创
发布博客 2018.11.22 ·
566 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

Redis RDB和AOF取舍和选择

RDB和AOF的选择RDB和AOF对比命令RDBAOF启动优先级低高体积小大恢复速度快慢数据安全性丢数据根据策略决定轻重重轻RDB最佳策略关集中管理-主从,从开AOF 最佳策略开:缓存和存储AOF重写集中管理everysec标题最佳策略小分片缓存或者存储监控(硬盘,内存 负载 网络 ...
原创
发布博客 2018.11.11 ·
1422 阅读 ·
1 点赞 ·
0 评论 ·
3 收藏

redis AOF

RDB问题:耗时耗性能容易丢失数据耗时耗性能O(n)数据 耗时fork() :消耗内存,copy-on-write 策略Disk I/O :IO性能不可控 丢失数据时间saveT1执行多个写命令T2满足RDB自动创建的条件T3再次执行多个写命令T4宕机AOF 运行原理 -创建set hello worldAOF文件 ...
原创
发布博客 2018.11.11 ·
1089 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

redis持久化的取舍和选择

持久化redis所有数据保持在内存中,对数据的更新将异步的保存在磁盘上持久化方式快照 1: Mysql dump 2:redis rdb写日志 1:mysql binlog 2: hbase hlog 3:redis aofRDBredis创建内存--- RDB(二进制)硬盘中redis启动载入 ----RDB(二进制)触发机制 主要三种方式save(同步...
原创
发布博客 2018.11.11 ·
325 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

redis持久化的取舍和选择

持久化redis所有数据保持在内存中,对数据的更新将异步的保存在磁盘上持久化方式快照 1: Mysql dump 2:redis rdb写日志 1:mysql binlog 2: hbase hlog 3:redis aofRDBredis创建内存--- RDB(二进制)硬盘中redis启动载入 ----RDB(二进制)触发机制 主要三种方式save(同步...
原创
发布博客 2018.11.11 ·
325 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多