- 博客(16)
- 收藏
- 关注
原创 java 生成jsonPath树
public static void main(String[] args) throws Exception { generateJsonPath(); }public static void generateJsonPath() throws Exception { Map<String, Object> data = new...
2022-02-14 18:18:00
485
原创 调用阿里云OSS未释放资源造成的内存溢出
前段时间线上服务频繁出现内存溢出的问题,有时候半夜就会挂掉,运维同事还得从睡梦中爬起来重启,给我们带来很大的困扰。一次运维同事在快到挂掉前把jvm 的heap dump拿了下来给了我们,通过内存分析工具MemoryAnalyzer 打开看到结果如下可以看到有大量的org.apache.http.impl.conn.PoolingHttpClientConnectio...
2019-11-30 11:34:00
1702
原创 记华为云容器化连接mongodb的一次经历
起因:公司跟华为有战略合作, 需要将应用迁移至华为云,在迁移过程中容器中的应用连接mongo死活连不上,mongo的安全组什么的都加了就是不行,现象如下 mongo的主备节点为 10.125.80.1:8635,10.125.80.2:8635 配置信息存在zk里, 程序读取到zk的配置去连接mongo的时候出现如下错误问题描述: 如上图,正确读取到zk里的配置为10.12...
2019-08-13 17:19:00
275
原创 LinkedList原理
LinkedList 实现了List接口和Deque接口 是一个先进先出 双向链表结构 重点是first 和 last 看下元素类型 Node 有next prev 和 item(current) 实现链表 1 private static class Node<E> { 2 E item; 3 Node<E> nex...
2019-06-21 11:22:00
113
原创 HashSet原理
HashSet的实现其实很简单 HashSet是无序 不可重复的 查看源码可以了解到 内部是用了一个HashMap HashSet的元素其实就是HashMap的KeySet, HashMap的实现是数组 + 链表的数据结构 HashSet既然是利用的HashMap 那么HashSet也是线程不安全的 HashSet源码如下 1 /* 2 * Copyright (c...
2019-06-21 11:03:00
59
原创 使用spring 自定义扫描bean
在我们使用spring boot时候 spring会默认扫描启动类所在包以及下级包的bean,但是我们又想扫其他的包 又不想放在启动类的同级或子级包的时候该怎么做呢? 其实spring提供给了我们扩展接口的,这时候就可以实现BeanFactoryPostProcessor接口实现 postProcessBeanFactory(ConfigurableListableBeanFactory bean...
2019-02-21 18:19:19
193
原创 Netty的核心组件
Netty的核心组件 Netty的核心组件Channel ;Channel 是 Java NIO 的一个基本构造。它代表一个到实体(如一个硬件设备、一个文件、一个网络套接字或者一个能够执行一个或者多个不同的I/O操作的程序组件)的开放连接,如读操作和写操作目前,可以把 Channel 看作是传入(入站)或者传出(出站)数据的载体。因此,它可以被打开或者被关闭,连接或者断开连...
2019-01-29 16:18:00
135
原创 《将博客搬至CSDN》
《将博客搬至CSDN》 以后的新文章会同步至CSDNcsdn连接 https://blog.csdn.net/u013756547 posted @ 2019-01-25 18:35 柴柴1226 阅读(...) 评论(...) 编辑 收藏 ...
2019-01-25 18:35:00
57
原创 java8新特性
java8已经发行好长时间了,但是现在大部分公司还是在用java7 甚至6或者更早的版本,笔者公司前几年就已经更新到了java8,以前通过看java文档学习到的一些新特性,之前都没有写博客的习惯,所以我要养成写博客分享技术的习惯,特补上一篇:)。 java8中的新特性包括但不限于以下几点:Lambda 表达式 方法引用 默认方...
2019-01-25 16:22:06
67
原创 Java SPI 实例
Java SPI 实例 SPI 全称为 Service Provider Interface,是一种服务发现机制。SPI 的本质是将接口实现类的全限定名配置在文件中,并由服务加载器读取配置文件,加载实现类。这样可以在运行时,动态为接口替换实现类。这里简单写一个例子示意创建DemoService接口 如下 1 package com.demo...
2019-01-25 14:02:00
402
原创 dubbo Main启动服务浅析
dubbo Main启动服务浅析Dubbo 采用全 Spring 配置方式,官方推荐使用内置 Main 启动,并提供了JDK 的 ShutdownHook 优雅停机。这里看的是dubbo 2.6.2版本的代码 贴出dubbo提供的Main启动类 1 /* 2 * Licensed to the Apache Software Foundation (ASF) unde...
2019-01-25 11:16:00
243
原创 springMVC 之 HandlerMethodArgumentResolver使用
springMVC 之 HandlerMethodArgumentResolver使用我们使用springMVC 的 controller的方法时需要获取ServletHttpRequest对象的时候直接在方法参数列表里写上 ServletHttpRequest request框架就直接给注入进来了,但是这是怎么实现的呢?经过查看spring源码发现有这么一个接口HandlerMethodAr...
2018-12-25 17:20:00
180
原创 mycat基本使用
mycat基本使用官网:http://www.mycat.io/什么是mycat? 一个彻底开源的,面向企业应用开发的大数据库集群 支持事务、ACID、可以替代MySQL的加强版数据库 一个可以视为MySQL集群的企业级数据库,用来替代昂贵的Oracle集群 一个融合内存缓存技术、NoSQL技术、HDFS大数据的新型SQL Server 结合传统数据库和新型分布式数据仓库的新一...
2018-12-25 15:07:00
234
原创 nginx设置显示文件目录
nginx设置显示文件目录测试的时候可能会让在浏览器上显示文件列表,nginx提供了 ngx_http_autoindex_module 功能, 如下 看官方文档的说明此模块包括以下几个配置指令 autoindex autoindex_exact_size autoindex_format autoindex_localtime贴...
2018-12-21 11:19:00
637
原创 docker的基本概念
docker的基本概念 Dokcer 部署流程 Docker简介Docker(官网: https://www.docker.com/)一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。Docker包括 Image(镜像) Container(容器) ...
2018-12-20 11:14:00
94
原创 springMVC启动初始化过程
springMVC启动初始化过程在web.xml里配置分发servlet和ContextLoaderListener,ContextLoaderListener是spring提供的类,它继承了ContextLoader类和实现了ServletContextListener接口。ContextLoader类负责初始化容器,初始化方法是 initWebApplicationContext(Se...
2018-12-20 10:43:00
125
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人