- 博客(62)
- 资源 (5)
- 收藏
- 关注
原创 redis-mark
缓存与数据库的数据一致性问题1、cache Aside (先更新db,在删除缓存) 无侵入方案,使用canel通过binlog更新缓存2、read/wirte Through3、write Behind caching缓存穿透、击穿、雪崩缓存穿透:数据库不存在,方案:缓存空对象,布隆过滤器缓存击穿:热key 失效 方案:热点数据用不过期,互斥锁雪崩:大面积的失效 方案:高可用,限流降级,失效时间随机数热点key发现与解决:发现方法:r...
2021-09-01 20:39:52 160 1
原创 Spring Bean 的生命周期
https://blog.csdn.net/riemann_/article/details/118500805?utm_medium=distribute.pc_feed_v2.none-task-blog-yuanlijihua_default_tag-4.pc_personrecdepth_1-utm_source=distribute.pc_feed_v2.none-task-blog-yuanlijihua_default_tag-4.pc_personrec
2021-07-19 15:29:05 127
原创 SpringMVC核心DispatcherServlet
1、SpringMVC的核心就是DispatcherServlet,DispatcherServlet实质也是一个HttpServlet。DispatcherSevlet负责将请求分发,所有的请求都有经过它来统一分发。 大致看下SpringMVC请求处理的流程: 用户向服务器发送请求,请求会到DispatcherServlet,DispatcherServlet 对请求URL进行解析,得到请求资源标识符(URI),然后根据该URI,调用HandlerMapping获得该Handler配置的所有
2021-07-16 09:24:16 633
原创 mysql部署
1、服务器建议配置根据MySQL库的使用场景、数据量等,给出以下几种类型配置可供选择: CPU 内存 硬盘类型 网络 服务器 4核+ 8G SSD 千兆网卡及以上 主要是虚拟机 8核+ 16G SSD 千兆网卡及以上
2021-07-15 21:46:57 120
原创 mongdb
1、部署方式MongoDB 有三种集群部署模式,分别为主从复制(Master-Slaver)、副本集(Replica Set)和分片(Sharding)模式。Master-Slaver 是一种主从副本的模式,目前已经不推荐使用。 Replica Set 模式取代了 Master-Slaver 模式,是一种互为主从的关系。Replica Set 将数据复制多份保存,不同服务器保存同一份数据,在出现故障时自动切换,实现故障转移,在实际生产中非常实用。 Sharding 模式适合处理大量数据,它将数据
2021-07-15 20:36:55 335
原创 负载均衡LB
三大主流负载均衡器LVS、Nginx、HAproxy详解https://blog.csdn.net/lilygg/article/details/89538862
2021-07-15 19:18:09 260
原创 Java 错误信息汇总
1、注册中心没有启动2021-07-07 09:26:37.349 [HEALTHMANAGER-SERVICE-PPO] [TraceId:|SpanId:] [IP:|USER:] [DiscoveryClient-InstanceInfoReplicator-0] [ERROR com.netflix.discovery.shared.transport.decorator.RedirectingEurekaHttpClient] - Request execution error. endpoi
2021-07-07 09:34:14 221
原创 并发锁汇总
https://blog.csdn.net/guoguo527/article/details/118004077?utm_medium=distribute.pc_feed_v2.none-task-blog-hot_rank_bottoming-18.pc_personrecdepth_1-utm_source=distribute.pc_feed_v2.none-task-blog-hot_rank_bottoming-18.pc_personrec
2021-06-30 19:40:22 88
原创 HashMap 与 Map
hash的容量问题哈希表的容量一定要是2的整数次幂,这样HashMap中则通过h&(length-1)的方法来代替取模,就实现了均匀的散列。同时在数组进行扩容时,扩容前的元素的下标位置是不变的,避免了数组元素的重排。但是,我们仍然要避免数组的扩容,因为它依然很大的降低的了map的put性能,这也是HashMap定义加载因子的原因所在。HashMap的实现原理 HashMap的底层主要是基于数组和链表来实现的,它之所以有相当快的查询速度主要是因为它是通过计算散列码来决定存储的...
2021-06-15 14:48:21 466
原创 阿里分支模式AoneFlow
本文介绍了目前阿里的分支模式,兼顾了TrunkBased的易于持续集成”和 GitFlow 的“易于管理需求”特点。看一下具体套路。AoneFlow 是阿里比较通用的分支管理方式,改模式一般使用三种分支类型:主干分支、特性分支、发布分支,以及三条基本规则。分支结构主干分支:一般是master。特性分支:特性分支 一般以feature前缀开头。发布分支:发布分支 一般以release前缀开头。分支管理规则规则一,开始工作前,从主干创建特性分支。AoneFlow...
2021-06-15 14:18:03 1340
原创 架构师面试问题
架构师面试问题:如何设计高可用如何设计高并发如何设计高扩展如何保证稳定性,99.98%如何jvm调优及管控如何定位及处理OOM如何复用及重构使用那些设计模式解决生产中的问题架构选型过程考虑QPS ,TPS...
2021-06-09 14:48:04 5005
原创 专题1-跨域问题
1、前端2、Nginx3、服务器端解决跨域问题的三种方法https://blog.csdn.net/james_wade63/article/details/50772041
2021-06-07 20:41:48 75
原创 需要考虑候选人问题
mysql:1、mysql的隔离级别与默认隔离级别2、mysql的锁3、mysql的索引结构4、回表,覆盖索引,索引下推,最左匹配5、innodb的三个特性6、mysql的sql语句如何调优 explain7、CPU和IO 使用100% 的生产问题定位于排查8、B+tree为什么快...
2021-05-07 16:46:17 101
原创 mysql-inndb原理
1、独立表空间 后缀名.ibd 系统表空间 一个表空间存储的数据容量计算:4字节记录页,大概是2的32次方个页,一页16KB , 合计容量:2^32 * 16kb = 64T2、数据存储 页(64)= 区 注:连续分配,按区分配 ,增加顺序读,减少随机读 ,一个页面大小:16KB 区(256)= 组 组 (2) = 段 段 = 叶结点段+非页节点段 注:逻辑划分3、innodbd三大特性 ...
2021-05-07 15:55:32 126
原创 JVM参数
GC打印:+PrintGCDetails1、jps(JVM Process Status Tool):查看正在运行的java虚拟机进程jps命令相当于Linux下的ps命令,只不过它只列出Java进程jps:输出java进程id和Main函数名称jps -l :输出主函数的完整路径jps -v:输出传递给java虚拟机的参数2、jstat(JVM Statistics Mornitoring Tool):查看虚拟机运行时信息jstat可以查看Java虚拟机各种运行状态信..
2021-04-26 16:23:51 111
原创 Elastic Stack入门
https://blog.csdn.net/a185589690/article/details/100852581
2021-04-25 15:37:40 78
原创 系统稳定性
目录一、背景介绍二、故障源的分类三、稳定性建设四要素第一要素:人第二要素:工具第三要素:预案第四要素:目标四、稳定性建设四个方向第一个方向:根基要抓牢(45%)第二个方向:工作在日常(30%)第三个方向:预案是关键(15%)第四个方向:容量是核心(10%)五、稳定性建设本质六、总结一、背景介绍在移动互联网时代,用户群的积累比之前更容易,但同样,也会因为糟糕的用户体验,而快速流失用户,哪怕是号称独一无二的12306网站,也在不断优化系统来提升用户
2021-04-23 15:46:32 2285
原创 git
git log --author=itw_xujh --since=2019-01-01 --until=2021-05-01 --format='%aN' | sort -u | while read name; do echo -en "$name\t"; git log --author="$name" --pretty=tformat: --numstat | grep "\(.html\|.java\|.xml\|.properties\)$" | awk '{ add += $1; subs .
2021-04-23 09:59:53 41
原创 方案
https://mbd.baidu.com/newspage/data/landingsuper?context=%7B%22nid%22%3A%22news_9963694987122980028%22%7D&n_type=1&p_from=4
2021-04-13 10:02:04 104
原创 架构技术汇总
如何给100亿个数字排序https://blog.csdn.net/zhangdx001/article/details/106919106/?utm_medium=distribute.pc_relevant_bbs_down.none-task-blog-baidujs-1.nonecase&depth_1-utm_source=distribute.pc_relevant_bbs_down.none-task-blog-baidujs-1.nonecase全局唯一ID-雪花...
2021-04-09 19:20:22 75
原创 jvm
https://blog.csdn.net/weixin_39834475/article/details/114565743?utm_medium=distribute.pc_aggpage_search_result.none-task-blog-2~aggregatepage~first_rank_v2~rank_aggregation-1-114565743.pc_agg_rank_aggregation&utm_term=xms+xmx+%E6%80%8E%E4%B9%88%E8%AE%B
2021-03-24 19:51:10 61
原创 Java VisualVM使用
https://blog.csdn.net/weixin_44203995/article/details/98845694
2021-03-24 14:29:17 136
原创 spring cloud
https://blog.csdn.net/Java_Caiyo/article/details/114669165?utm_medium=distribute.pc_category.none-task-blog-hot-8.nonecase&dist_request_id=&depth_1-utm_source=distribute.pc_category.none-task-blog-hot-8.nonecase
2021-03-13 14:58:39 58
原创 Oauth2.0
微信https://www.cnblogs.com/yanbigfeg/p/9224756.htmlhttps://www.cnblogs.com/tinyj/p/9836607.htmlhttps://www.jianshu.com/p/b9384fc7b04b开始https://www.cnblogs.com/moran1992/p/11419836.html
2021-03-13 11:15:23 78
原创 事务及锁
java 事务和同步锁的问题Mysql事务和锁分布式事务与分布式锁mysql实践详解https://zhuanlan.zhihu.com/p/29150809https://www.cnblogs.com/tian666/p/7852646.htmlmysql for update的锁空值https://www.cnblogs.com/wxgblogs/p/6849064.htmlmysql锁解析https://www.cnblogs.com/zhaoshao..
2021-02-27 21:41:11 246
原创 oom常见问题原因及解决方法
OOM 常见原因及解决方案当 JVM 内存严重不足时,就会抛出 java.lang.OutOfMemoryError 错误。本文总结了常见的 OOM 原因及其解决方法,如下图所示。如有遗漏或错误,欢迎补充指正。1、Java heap space当堆内存(Heap Space)没有足够空间存放新创建的对象时,就会抛出java.lang.OutOfMemoryError:Javaheap space错误(根据实际生产经验,可以对程序日志中的 OutOfMemoryError 配置关键字...
2021-02-27 17:11:09 3580
原创 分布式事务
分布式系统应该满足cap理论及base理论同时会带来分布式事务问题,场景如下二阶段提交方案提交失败情况,二阶段终端三阶段执行事务,增加预检测阶段更高效的事务解决方案,基于消息的一致性方案自己开发分布式开发事务管理系统,基于终极TCC事务基于seata 的AT事务...
2020-11-05 09:49:31 90
原创 开放api接口签名验证,添加sign,时间戳
你在写开放的API接口时是如何保证数据的安全性的?先来看看有哪些安全性问题在开放的api接口中,我们通过http Post或者Get方式请求服务器的时候,会面临着许多的安全性问题,例如:请求来源(身份)是否合法?请求参数被篡改?请求的唯一性(不可复制)列表内容为了保证数据在通信时的安全性,我们可以采用参数签名的方式来进行相关验证。案列分析我们通过给某 [移动端(app)] 写 [后台接口(api)] 的案例进行分析:客户端: 以下简称app后台接口:以下简称api我们通过
2020-11-04 17:28:20 3506 1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人