随笔分类 -  技术贴

技术相关内容
摘要:1、java poi 2、excel4j 3、EasyExcel: https://github.com/alibaba/easyexcel https://www.yuque.com/easyexcel/doc/easyexcel 对比 https://mp.weixin.qq.com/s/TE2 阅读全文
posted @ 2023-08-24 18:28 倔强的老铁 阅读(12) 评论(0) 推荐(0) 编辑
摘要:vue代码 <!-- 菜单导入对话框 --> <el-dialog :title="upload.title" :visible.sync="upload.open" :close-on-click-modal="false" width="400px" append-to-body> <el-up 阅读全文
posted @ 2023-01-31 11:36 倔强的老铁 阅读(818) 评论(0) 推荐(0) 编辑
摘要:1、Spring Cloud核心组件:Eureka 2、Ribbon:Ribbon是一个基于HTTP和TCP的客户端负载均衡器,它可以在通过客户端中配置的ribbonServerList服务端列表去轮询访问以达到服务均衡的作用。 3、Fegin: Fegin的关键机制是使用了动态代理 1)、首先,对 阅读全文
posted @ 2022-10-09 14:37 倔强的老铁 阅读(164) 评论(0) 推荐(0) 编辑
摘要:零拷贝 零拷贝是指计算机执行IO操作时,CPU不需要将数据从一个存储区域复制到另一个存储区域,从而可以减少上下文切换以及CPU的拷贝时间。它是一种I/O操作优化技术。 传统 IO 的执行流程 传统的IO流程,包括read和write的过程。 read:把数据从磁盘读取到内核缓冲区,再拷贝到用户缓冲区 阅读全文
posted @ 2022-04-14 15:02 倔强的老铁 阅读(820) 评论(0) 推荐(0) 编辑
摘要:1、机器语言:难读,难写。 2、汇编语言:不能夸CPU,多环境需要多个编写版本。 3、高级语言:好处解决跨平台。 4、两次软件危机 ①、软件规模和复杂度增加,导致软件质量下降,把控难度高。 解决这一问题,提出了软件工程,结构化程序设计,思想本质是面向过程设计思想。但通过“自顶向下、逐步细化、模块化” 阅读全文
posted @ 2022-02-21 15:22 倔强的老铁 阅读(120) 评论(0) 推荐(0) 编辑
摘要:consul.exe文件 找到之后,启动consul consul agent -dev 默认地址127.0.0.1:8500 使用:consul.exe agent -dev -client 自己本地ipv4地址 启动consul启动也可 用自己的本地ip地址+8500访问网站。 windows系 阅读全文
posted @ 2021-09-25 23:01 倔强的老铁 阅读(2415) 评论(0) 推荐(0) 编辑
摘要:api请求类型类注解 @Target(ElementType.TYPE) @Retention(RetentionPolicy.RUNTIME) public @interface ApiEvent { String[] value() default {"BASE"}; } API接口servic 阅读全文
posted @ 2021-09-16 15:48 倔强的老铁 阅读(200) 评论(0) 推荐(0) 编辑
摘要:接收平台消息,模板模式实践 模板抽象类 @Service public abstract class BaseMessageService { private static final Logger logger = LoggerFactory.getLogger(KwaiOrderMessageS 阅读全文
posted @ 2021-09-15 21:39 倔强的老铁 阅读(40) 评论(0) 推荐(0) 编辑
摘要:1、锁升级 锁的4中状态:无锁状态、偏向锁状态(默认延迟4s开启)、轻量级锁状态、重量级锁状态(级别从低到高) (1)偏向锁: 为什么要引入偏向锁? 因为经过HotSpot的作者大量的研究发现,大多数时候是不存在锁竞争的,常常是一个线程多次获得同一个锁,因此如果每次都要竞争锁会增大很多没有必要付出的 阅读全文
posted @ 2021-06-21 15:16 倔强的老铁 阅读(185) 评论(0) 推荐(0) 编辑
摘要:乐观锁和悲观锁 悲观锁,操作共享数据先加锁。Java 语言中synchronized和ReentrantLock等就是典型的悲观锁,还有一些使用了synchronized关键字的容器类如HashTable等也是悲观锁的应用。 乐观锁,认为没有同时操作共享数据的可能,数据库层面用版本号实现。Java语 阅读全文
posted @ 2021-06-18 20:23 倔强的老铁 阅读(82) 评论(0) 推荐(0) 编辑
摘要:dubbo官网配置 https://dubbo.apache.org/docs/v2.7/user/references/protocol/rest/ 底层使用netty框架,解决了jdk nio中空轮询问题。简化jdk nio 复杂操作。屏蔽selector channel buffer 难于理解 阅读全文
posted @ 2021-06-16 19:33 倔强的老铁 阅读(58) 评论(0) 推荐(0) 编辑
摘要:1、穿透 频繁访问redis和数据库中没有的数据。这时的用户很可能是攻击者,攻击会导致数据库压力过大。 解决方案: ①接口层增加校验,如用户鉴权校验,id做基础校验,id<=0的直接拦截; ②从缓存取不到的数据,在数据库中也没有取到,这时也可以将key-value对写为key-null,缓存有效时间 阅读全文
posted @ 2021-05-28 15:23 倔强的老铁 阅读(71) 评论(0) 推荐(0) 编辑
摘要:Spring两大功能,IOC(控制反转)、AOP(面向切面)。 IOC Inversion of Control,即“控制反转”,不是什么技术,而是一种设计思想。在Java 开发中,Ioc 意味着将你设计好的对象交给容器控制,而不是传统的在你的对象内部直接控制。 AOP Spring AOP代理对象 阅读全文
posted @ 2021-04-27 18:35 倔强的老铁 阅读(34) 评论(0) 推荐(0) 编辑
摘要:MQ的主要特点为解耦、异步、削峰。或者说 1、系统解耦 2、流量削峰 3、异步分发 用于减少数据库压力的业务场景,其中RocketMQ的核心组件概念如下: Producer:生产发送消息 Broker:存储Producer发送过来的消息 Consumer:从Broker拉取消息并进行消费 NameS 阅读全文
posted @ 2021-04-27 17:40 倔强的老铁 阅读(193) 评论(0) 推荐(0) 编辑
摘要:1、API 网关 在微服务架构中,UI 通常连接多个微服务。如果微服务是细粒度的(FaaS) ,那么客户端可能需要连接非常多的微服务,这将变得繁杂和具有挑战性。此外,这些服务包括它们的 API 还将不断进化。大型企业还希望能有其他横切关注点(SSL 终止、身份验证、授权、节流、日志记录等)。 一个解 阅读全文
posted @ 2021-04-27 10:28 倔强的老铁 阅读(586) 评论(0) 推荐(0) 编辑
摘要:Java运行时数据区(jvm内存分配) 1、程序计数器或者叫PC寄存器(Program Counter Register),记录程序让出CPU时运行位置。 2、虚拟机栈(JVM Stacks),局部变量表,操作数栈,动态链接,方法返回地址,附加信息。 3、本地方法栈本地方法接口(Native Met 阅读全文
posted @ 2021-04-27 09:58 倔强的老铁 阅读(51) 评论(0) 推荐(0) 编辑
摘要:Hystrix是Netflix开源的一个限流熔断的项目、主要有以下功能: 服务降级:限制调用分布式服务的资源使用,某一个调用的服务出现问题不会影响其他服务调用。 优雅的降级机制:超时降级、资源不足时(线程或信号量)降级,降级后可以配合降级接口返回托底数据。 熔断:当失败率达到阀值自动触发降级(如因网 阅读全文
posted @ 2021-04-27 09:12 倔强的老铁 阅读(68) 评论(0) 推荐(0) 编辑
摘要:redis一个命令setnx SETNX 是『SET if Not eXists』(如果不存在,则 SET)的简写 将 key 的值设为 value ,当且仅当 key 不存在. 返回值: 设置成功,返回 1 。 设置失败,返回 0 。 如下思路是设置一个过期锁。但是实际开发中这个过期时间很难判断, 阅读全文
posted @ 2021-04-26 17:30 倔强的老铁 阅读(57) 评论(0) 推荐(0) 编辑
摘要:1、什么是CAS? CAS:Compare and Swap,即比较再交换。 jdk5增加了并发包java.util.concurrent.*,其下面的类使用CAS算法实现了区别于synchronouse同步锁的一种乐观锁。JDK 5之前Java语言是靠synchronized关键字保证同步的,这是 阅读全文
posted @ 2021-04-26 16:55 倔强的老铁 阅读(128) 评论(0) 推荐(0) 编辑
摘要:操作同一共享变量时,存在线程安全问题,JMM java内存模型,当多线程操作同一共享变量,先进行主线程的变量加载到本地线程一个副本,然后回写到主线程。这样就会存在,多个线程加载变量相同,非可见性。 java并发编程三大特性:原子性 可见性 有序性 volatile 解决 可见性 有序性 线程对共享变 阅读全文
posted @ 2021-04-25 09:29 倔强的老铁 阅读(147) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示