摘要:
[toc] # IDEA ##### postfix 自定义if else表达式 ``` 表达式设置boolean if ($EXPR$){ }else { } ``` ### 插件 1. emasIDEAs 2. Mybatis generator ## Git git ls-files 查看目录 阅读全文
摘要:
目录入门书籍基础书籍多线程与并发网络编程数据结构语言基础进阶性能优化响应式编程JVM虚拟机代码&设计优化设计模式框架与中间件数据库缓存与NoSQL消息队列ORM框架Spring家族高并发分布式搜索引擎大数据架构分布式架构微服务架构架构方法论JVM周边语言项目管理&领导力&流程项目管理团队管理数学与算 阅读全文
摘要:
hello算法 hello算法-github hello算法-gitee 阅读全文
摘要:
## choco ## [hyper](https://blog.csdn.net/qq_53937391/article/details/126800937) choco install hyper 阅读全文
摘要:
TODO 参考博客 阅读全文
摘要:
1 参考文档 2 源码git地址 阅读全文
摘要:
https://www.waodown.com/category/pc 阅读全文
摘要:
使用若依快速构建web应用程序 Ruoyi 阅读全文
摘要:
入口 找出@Apsect 在所有bean中找带 @Apsect注解的类 搜集该类pointcut 搜集该类不同的增强 不同的增强实现不同的接口 before around 匹配 将找到的增强匹配当前类 阅读全文
摘要:
参考文档 https://arthas.aliyun.com/doc/tt.html 网页地址 http://127.0.0.1:8563 快速入门 启动一个java项目 java -jar math-game.jar java -jar arthas-boot.jar dashboard 查询进程 阅读全文
摘要:
健康检查 死锁线程现场检查 工作线程超时检查 线程管理器有所有工作线程 DaoContext里map保存 key-value 线程名-DaoContext;DaoContext其实是ThreadLocal里面取的 不同的线程支持配置不同的超时时间 中断线程 关闭资源 缓存 缓存管理器 全局缓存 Ha 阅读全文
摘要:
基本介绍 阅读全文
摘要:
基本介绍 Spring Cloud 之 Hystrix> 断路器模式 CirCuit Breaker 断路器CLOSED 异常比例达到 转为OPEN 一定时间 转为 HAFL OPEN 放行部分请求 请求成功 转CLOSED 恢复服务 circuitBreaker.errorThresholdPer 阅读全文
摘要:
基本介绍 阅读全文
摘要:
基本介绍 Eureka入门 springboot-eureka URL | 组件名 | 语言 | CAP | 一致性算法 | 服务健康检查 | 对外暴露接口 | | | | | | | | | Eureka | Java | AP | 无 | 可配支持 | HTTP | | Consul | Go 阅读全文
摘要:
基本介绍 阅读全文
摘要:
基本概念 同步与异步: AB顺序执行 AB同时执行 阻塞与非阻塞: 阻塞指 线程处于阻塞状态时 无法从事其他任务,只有条件就绪就行 比如ServerSocket新连接建立完毕,或者数据读取、写入操作完成;非阻塞则是不管IO操作是否结束,直接返回 我们熟悉的File 输入输出流 交互方式是同步、阻塞的 阅读全文
摘要:
JUC java锁 关键信息 LockSupport LockSupport中的park() 和 unpark() 的作用分别是阻塞线程和解除阻塞线程 Condition 需要和Lock联合使用,它的作用是代替Object监视器方法,可以通过await(),signal()来休眠/唤醒线程 Reen 阅读全文
摘要:
实现原理 springboot框架启动会SimpleApplicationEventMulticaster.multicastEvent发布事件 找到所有实现ApplicationListener 调用ApplicationListener.onApplicationEvent(E event) 具 阅读全文
摘要:
数据库和缓存一致性 方案一: 先更新数据库 后更新缓存 并发问题 A修改数据库为1 B修改数据库为2;修改缓存为2 A修改缓存为1; 这就导致数据库缓存不一致了 Title:并发更新数据和缓存问题 participant 请求1 participant 请求2 participant 缓存 part 阅读全文
摘要:
利息 按实际透支天数计息 按月复利 应还利息账单日产生 打印在账单上 复利问题 : 上期账单有应还利息 账单日第二天开始计算复利 复利享受免息期 到期还款日全额还款 不必偿还复利 ,否则复利会出现在下一期账单上 利息计算公式: 利息=日利率计息基准计息天数 计息天数:消费记账日-账单日 算头算尾 消 阅读全文
摘要:
mybatis-parent mybatis TODO 阅读全文
摘要:
ThreadLocal 精华1 每个线程对应一个 threadLocalMap (threadLocal的公共内部类) t.threadLocals = new ThreadLocalMap(this, firstValue); //this就是key 就是自己声明的threadlocal thre 阅读全文
摘要:
package org.apache.ibatis.binding; import com.alibaba.fastjson.JSON; import org.junit.After; import org.junit.Test; import java.util.Scanner; /** * @d 阅读全文
摘要:
转载出处:https://topic.atatech.org/articles/210737 传统的一个大型而又全面的系统,随着业务体量的增大已经很难满足市场对技术的需求,通过对将整块业务系统拆分为多个互联依赖的子系统并针对子系统进行独立优化,能够有效提升整个系统的吞吐量。在进行系统拆分之后,完整的 阅读全文
摘要:
1. 需求概述 1.1 需求分析 1.1.1 需求背景 C端24%项目截止月底仍有40%以上资金未使用,但B端项目还没到月底已无资金,部分场景资金冗余部分场景资金短缺 三表时间时间飘忽,6月在28号确定总包,导致层层向下拆解不够及时,影响BD进行全月规划和上活动;且部分BDM向下分配不及时导致资金冗 阅读全文
摘要:
解决过程 一开始以为是内存不足 查看内存 发现空间足够 足够为什么不能创建线程? ulimit -u 查看线程限制条数 1024 jps -l 查看应用id top -Hp 3395 可以查看进程线程id总数及具体的线程id pstree -p 3395 |wc -l 可以查看进程id 线程总数 j 阅读全文
摘要:
java8变化 接口默认方法 lamabda Date/Time API 反射加强 -parameter method.getParameters() 参数可以带参数名 Stream 流编程 JVM选项-XX:PermSize与-XX:MaxPermSize分别被-XX:MetaSpaceSize与 阅读全文
摘要:
package org.apache.ibatis.cache; import org.junit.Test; /** * * 2021/7/14 7:37 下午 */ public class InteruprTest { /** * * Thread.interrupted(); 标志位恢复 * 阅读全文
摘要:
原理技术 package me.ele.marketing.budget.processor.helper; import org.junit.Test; import java.nio.ByteBuffer; /** * @author: 谢洪伟 * 2021/7/2 2:17 下午 */ int 阅读全文
摘要:
漏斗限流 缺点:通过流量恒定 无法应对流量波动 如qps1000 , 800,1200 , 800 限流结果 800,1000, 800 令牌限流 每秒生产1000令牌 将上一秒剩余 令牌解决了流量波动 .需要限制令牌最大数 qps1000 800,1200,8000 结果 800,1200,800 阅读全文
摘要:
系统设计学习笔记 各公司系统架构github资料 据说看完这篇推文需要花费一年的时间 https://mp.weixin.qq.com/s?__biz=MzkwOTIxNDQ3OA==&mid=2247533367&idx=1&sn=53658678cf674fef6dadd8e8505f642d& 阅读全文
摘要:
package me.ele.marketing.budget.processor.lock; import lombok.Getter; import me.ele.napos.vine.misc.exception.UnexpectedStateException; import me.ele. 阅读全文
摘要:
Redis11问 https://blog.csdn.net/qq_31960623/article/details/116427752 1 基本数据类型 String list hash set zset 2 redis为什么块 内存操作 优化过的数据结构 单线程无上下文切换 基于非阻塞的IO多路 阅读全文
摘要:
java-基于AQS实现锁 AQS 是AbstractQueuedSynchronizer 抽象队列同步器 1.采用双向链表的数据结构,当多线程同时竞争锁的时候,第一个线程拿到锁后,后续的线程封装成Node节点依次进入同步队列进行排队等待。 2.AQS内部会采取自旋(死循环)的机制,一直判断头节点是 阅读全文
摘要:
微信红包高并发交易 百亿级微信红包的高并发资金交易系统设计方案 1 SET化 每个红包生成一个唯一ID,接下来这个红包的所有拆红包 查红包 都根据这个ID关联,系统根据这个ID垂直切分,切分后 一个垂直链条上的 逻辑Server服务器 DB为一个SET; 2 请求串行化 同一个红包ID,hash到同 阅读全文
摘要:
MQ夺命11问 为什么使用MQ 削峰填谷 异步调用 基于什么做的选型 qps压力大 性能第一 java开发语言 分布式架构 可能用到顺序消息 事物消息 所以选的RocketMq 消息可靠性保证? 生产者丢失 同步发送 能保证 不推荐 异步发送 无回调 消息丢失 异步发送 + 回调 + 本地消息表 + 阅读全文
摘要:
美团雪花LEAF算法 leaf的优势: 高可靠 低延迟 全局唯一 目前主流的分布式ID大部分基于 数据库号段模式和雪花算法,美团2者兼具 leaf-segment模式 从数据库获取MAX_ID ,服务本地生成 相应步长的自增ID; 并不是号用完就去数据库加载max_id;而是号段消耗10%后就去提前 阅读全文