- 博客(84)
- 收藏
- 关注
原创 解决java.util.ConcurrentModificationException:null
解决新增和删除时java.util.ConcurrentModificationException问题
2022-06-14 11:02:08
1030
原创 idea解决Cannot Download Sources
没有下载源码,只下载了编译文件。重新下载mvn dependency:resolve -Dclassifier=sources
2022-05-04 18:43:59
225
原创 如何定义线程数线程数
设计线程数原则占用一定数量的cpu执行一定的线程数线程数过大会导致线程频繁切换线程数过小会浪费cpu概念描述cpu执行时间:cpu计算的时间cpu等待事件:IO时间,cpu等待总时间: 以上两者加和公式cpu执行时间/总时间 = cpu数量/总线程数两种线程池模型CPU密集型应用场景:适用于大量数据的计算,减少对磁盘,网络访问的情况下使用(业务场景中性能瓶颈为cpu而非内存,磁盘IO或带宽)线程数设计:当前机器CPU总数+1I/O密集型应用场景:适用于大量数据的交互,
2022-04-24 13:54:59
757
原创 HIVE报错:Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.mr.MapRedTask
分配内存不足导致,hive-site.xml增加配置项 <property> <name>yarn.scheduler.minimum-allocation-mb</name> <value>2048</value> <description>default value is 1024</description></property>...
2022-03-10 19:09:13
3192
原创 接口参数转换异常MethodArgumentTypeMismatchException的异常处理
最近发现上游系统有HTTP调用本服务中一个接口参数转换异常的情况,具体情况是接口定义为Long类型参数但上游传输参数为String导致接口参数转换失败,但服务中接口众多,线上日志只打印了接口转换失败,也没描述是哪个接口导致的,异常的堆栈也被挤下去了看不到,所以需要通过异常处理日志统一解决一下,在这里做一下记录异常封装 @ExceptionHandler(MethodArgumentTypeMismatchException.class) public ReturnMsg mismatchE
2021-12-29 10:33:12
3869
原创 SpringBoot整合presto
POM <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>co
2021-12-22 16:32:36
1749
原创 redis为什么这么快
redis快的四个原因基于内存:相较于其他数据库,基于内存进行数据交互,避免频繁与磁盘交互。结构简单:redis仅支持字符串String、列表List、集合Set、哈希Hash和有序集合zSet五种数据结构。在redis6中增加了BitMaps(二进制位运算,可用于点赞数据)、HyperLogLog(基数计算,可用于处理UV)、Geospatial(计算GEO)单线程调度:相比内存和网络带宽,cpu不是redis的瓶颈,采用单线程能很好的避免高并发场景下的上下文切换,更快一些。多路IO复用:参考J
2021-12-15 10:56:54
550
原创 压测工具ab
最近公司要求对一些潜在风险的接口进行压测,目前选用ab进行压测,在这记录下:安装sudo apt-get install apache2-utils参数配置Options are: -n requests 要执行的请求次数 -c concurrency 并发数量 -s timeout 响应时间demoab -n 1000 -c 100 -s 1 http://127.0.0.1:1080/event?config_name=mysql_config
2021-12-07 10:59:36
539
原创 idea模板
/*** * _ooOoo_ * o8888888o * 88" . "88 * (| -_- |) * O\ = /O * ____/`---'\____ * . ' \\| |// `. * / \\||| : |||/
2021-12-06 18:08:57
86
原创 Java NIO实现多人聊天室
Servicepackage com.netty.nio.chat.server;import java.io.IOException;import java.net.InetSocketAddress;import java.nio.ByteBuffer;import java.nio.channels.*;import java.nio.charset.Charset;import java.nio.charset.StandardCharsets;import java.util.I
2021-11-26 13:40:17
157
原创 spring boot之actuator健康检查
什么是actuatorSpringBoot自带监控功能Actuator,可以帮助实现对程序内部运行情况监控,比如监控状况、Bean加载情况、环境变量、日志信息、线程信息等。官翻文档:https://blog.youkuaiyun.com/alinyua/article/details/80009435快速使用教程:https://blog.youkuaiyun.com/pengjunlee/article/details/80235390进阶使用:https://blog.youkuaiyun.com/alinyua/article/
2021-11-26 10:42:44
3949
原创 java nio入门
NIO概述JDK 1.4java.nio同步非阻塞面向缓冲区(块编程)BIO\NIO和AIOBIO java.io 传统的同步阻塞式IO,线程在网络连接时会等待响应,期间不会做其他动作。NIO java.nio from JDK1.4 同步非阻塞式io,一个线程下有一个多路选择器,他会维护多个连接。AIO from JDK1.7 异步非阻塞IO,目前还没有什么应用NIO三大组件Channel 通道Buffer 缓冲区Selector 选择器一个选择器对应多个通道一个通
2021-11-25 12:00:41
545
原创 线程池在高并发条件下的问题
线程的创建和销毁成本很高,在Linux这样的操作系统中,线程本质上就是一个进程。创建和销毁都是重量级的系统函数。线程本身占用较大内存,像Java的线程栈,一般至少分配512K~1M的空间,如果系统中的线程数过千,恐怕整个JVM的内存都会被吃掉一半。线程的切换成本是很高的。操作系统发生线程切换的时候,需要保留线程的上下文,然后执行系统调用。如果线程数过高,可能执行线程切换的时间甚至会大于线程执行的时间,这时候带来的表现往往是系统load偏高、CPU sy使用率特别高(超过20%以上),导致系统几乎陷入不.
2021-11-19 17:11:55
535
原创 java 文件读取与写入
//按行读取文件信息 public static List<String> fileContents(String path) throws Exception { FileReader fileReader = new FileReader(path); BufferedReader bufferedReader = new BufferedReader(fileReader); ArrayList<String> l...
2021-11-19 16:40:36
251
原创 java获取文件夹的文件列表
public class FileUtils { public static List<String> listFiles(String path){ if (path==null){ return new ArrayList(); } ArrayList<String> list = new ArrayList<>(); for (File file : new File(p
2021-11-19 16:17:00
1238
原创 Nginx
Nginx什么是Nginx高性能Http和反向代理服务。提供IMAP/POP3/SMTP占用内存少,并发能力强专门为性能优化开发支持高达5w并发连接支持热部署采用master-slave模型,减少IOhttps://lnmp.org/nginx.html反向代理正向代理(路由)不能访问A网站,则通过B网站访问A网站。反向代理分流,客户端向代理服务器发送请求,代理服务器将请求发送给目标服务器。负载均衡通过代理服务器将多个请求均分到不同服务器中动静分离不同服务器对动态文件
2021-11-12 16:55:10
80
原创 java反射异常ava.lang.IllegalArgumentException: argument type mismatch
项目使用Springboot+mybatis进行落库,出现问题:java.lang.IllegalArgumentException: argument type mismatch at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_202] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[
2021-10-25 10:12:46
2192
2
原创 愉快解决linux下搜狗输入法不跟随idea2022光标问题
最近Win/Mac平台转linux开发,用的是乌班图。安装搜狗输入法后,发现输入法不会跟随idea光标移动。原因是IDEA的jre有问题。下载https://github.com/RikudouPatrickstar/JetBrainsRuntime-for-Linux-x64/releases编译社区大佬改进的 JetBrainsRuntime 的 Linux x64 版本。解压出jbr文件夹,备份IDEA目录下的jbr文件夹,然后把上面链接下载解压后的jbr文件夹替换。...
2021-10-14 17:58:38
1463
原创 计算机网络-TCP
保证一致性和可达性1、确认应答机制ACKTCP会将数据进行编号,每一个ACK都带有对应的确认序列号, 意思是告诉发送者, 我已经收到了哪些数据; 下一次你要从哪里开始发.比如, 客户端向服务器发送了1005字节的数据, 服务器返回给客户端的确认序号是1003, 那么说明服务器只收到了1-1002的数据.1003, 1004, 1005都没收到.此时客户端就会从1003开始重发.2、超时重传机制主机会将数据A发送给数据B,当超时一定时间没有接收到ACK时,A将尝试重新发送数据,直到接收到ACK。
2021-09-17 15:23:52
130
原创 MP常用注解值@TableId
直接看源码:@Documented@Retention(RetentionPolicy.RUNTIME)@Target({ElementType.FIELD, ElementType.ANNOTATION_TYPE})public @interface TableId { /** * 字段名(该值可无)指库中字段的名称 */ String value() default ""; /** * 主键类型 * {@link IdType}
2021-09-09 11:40:47
365
原创 Lombok整合Slf4J便捷打印日志
引入依赖lombok-version继承springboot的version即可<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> </dependency>
2021-09-09 10:53:32
187
原创 SprignBoot整合MongoDB
MongoDB是应用于大数据量下的非关系型数据库。是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。引入依赖<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-mongodb
2021-09-08 10:56:44
125
原创 Cannot autogenerate id of type java.lang.Integer for entity of type com.mongodb.pojo.User!
第一次尝试使用MongoDB对实体进行插入操作,结果出现 Cannot autogenerate id of type java.lang.Integer for entity of type com.mongodb.pojo.User!大概意思是不能将ID转换为IntegerMongoDB默认的集合主键是“_id”,类型是ObjectId。ObjectId是一个12字节的BSON类型字符串,包含了UNIX时间戳,机器识别码,进程号,计数值信息。机器码用来防止分布式系统生成id时冲突的问题,保证每台
2021-09-08 09:56:05
2085
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人