自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

伊邪那岐

日常知识点,错误信息及解决方案,

  • 博客(14)
  • 收藏
  • 关注

原创 DOCKER - 修改DOCKER0网卡

背景默认情况下启动docker之后会自己创建一个名为 docker0的网桥。但是里面的ip配置可能不是自己期望或是与某些公司内部的网关冲突了,造成不必要的麻烦. 目前本人的公司服务器环境全是内网.IP地址都是172.xx.xx.xx与docker0的IP冲突会导致一些同事无法正常访问网络如何解决?修改默认的配置文件 /etc/docker/daemon.json对docker进行配置。如果没有docker目录与daemon.json文件则手动创建daemon.json{ "bip": "

2020-10-30 10:30:29 4366 1

原创 DOCKER - MAVEN打包发布DOCKER镜像

背景针对与我们Java开发,想快速部署以及维护自己的程序来说,面对一台Linux,可能要装很多环境, 以及配置…很是麻烦…现在我们可以在pom文件里可以直接集成docker插件只需一行命令即可编译成docker镜像并发布到服务器上!环境CentOS7Docker 18.09.8安装docker环境请参考:离线环境安装一键自动安装Docker如何实现?文章内所涉及到的文件请到此下载链接: https://pan.baidu.com/s/1da_Ag5KSeqag_zbq0PYLtA 提

2020-10-30 10:29:41 486

原创 docker - 离线安装docker环境

离线安装docker 环境本章内容所涉及到的文件请到此下载:链接: https://pan.baidu.com/s/1aMDdoVfo10dcCO-BQYAcAw 提取码: 8b5p开始安装涉及到的全部文件如下:docker-18.09.8.tgz : docker 安装包install.sh : 安装脚本执行安装脚本sh install.sh docker-18.09.8.tgz图中可以发现docker version是18.09.8版本.注意事项在启动容器后

2020-10-30 10:24:38 468

原创 Java - 模拟一个Jedis客户端连接工具

手写一个简单的Redis连接工具既然要连接Redis服务端,那么我们就要先知道客户端与redis服务端的通信协议protocol是怎么约定的.通过查阅redis官方相关资料后发现文章所涉及的代码:https://gitee.com/isidea/example-redis-client.git网络层客户端和服务器通过 TCP 连接来进行数据交互, 服务器默认的端口号为 6379 。客户端和服务器发送的命令或数据一律以 \r\n (CRLF)结尾。新版统一请求协议新版统一请

2020-10-30 10:22:05 184 2

原创 Netty - 眼熟NIO

Netty系列文章 - 眼熟Nio什么是IO?什么是NIO?IO:java.io中最为核心的概念是流(stream),面向流编程,java中,一个流要么是输入流,要么是输出流NIO:java.nio中拥有3个核心概念:selector. channel. buffer; java.nio中,面向块(block)或是缓冲区(buffer)编程的,java中的原生8种基本数据类型都有各自对应的buffer类型,(除Boolean外),如IntBuffer,CharBuffer,ByteBu

2020-10-30 10:19:29 106

原创 Netty - 粘包与拆包

粘包和拆包产生粘包和拆包问题的主要原因是,操作系统在发送TCP数据的时候,底层会有一个缓冲区,例如1024个字节大小,如果一次请求发送的数据量比较小,没达到缓冲区大小,TCP则会将多个请求合并为同一个请求进行发送,这就形成了粘包问题;如果一次请求发送的数据量比较大,超过了缓冲区大小,TCP就会将其拆分为多次发送,这就是拆包,也就是将一个大的包拆分为多个小包进行发送。问题重现服务端NIOServer.java/** * @author Itachi is.xianglei@gmail.com

2020-10-30 10:17:36 174

原创 Java - Proxy代理

Proxy - 代理静态代理继承方式目标对象IndexService/** * @author Itachi is.xianglei@gmail.com * @Date 2020-01-01 20:58 */public class IndexService { public void select(){ System.out.println("select..."); }}代理对象IndexServiceProxy/** * @author I

2020-10-30 10:15:18 163

原创 Netty - 心跳检测

Netty系列文章 - 心跳检测本章暂且先不讨论Netty源码是怎么实现的,先看一下Netty心跳检测的应用.科普基础心跳机制心跳是在TCP长连接中,客户端和服务端定时向对方发送数据包通知对方自己还在线,保证连接的有效性的一种机制在服务器和客户端之间一定时间内没有数据交互时, 即处于 idle 状态时, 客户端或服务器会发送一个特殊的数据包给对方, 当接收方收到这个数据报文后, 也立即发送一个特殊的数据报文, 回应发送方, 此即一个 PING-PONG 交互. 自然地, 当某一端收到心跳消

2020-10-30 10:13:44 180

原创 Java线程与操作系统线程的关系

操作系统的线程Linux操作系统启动一个线程int pthread_create(pthread_t *thread, const pthread_attr_t *attr,void *(*start_routine)(void *), void *arg);再Linux系统中输入命令 man pthread_create后如下图所示。根据man配置的信息可以得出pthread_create会创建一个线程,这个函数是Linux系统的函数,可以用C或者C++直接调用,上面信息也告诉程序员这个函数在

2020-10-30 10:11:54 452 1

原创 Java中的偏向锁是什么

前言阅读本文前需要了解Java线程与操作系统线程的关系。关于偏向锁的知识,网上一大片文章,各种理论讲的一个比一个好。但是你知道如何去验证偏向锁呢?有相关的源码或者代码给你看过吗? 那么这篇文章只是为了证明偏向锁是否真的存在,它为什么要比重量级锁快?在有了上篇文章的知识铺垫后知道每当java线程创建的时候相对应的操作系统的 pthread_create也会创建一个线程。再继续阅读跟踪源码后了解到使用synchronized关键字就必然会调用OS的 pthread_mutex_lock 函数,也就是加锁

2020-10-30 10:06:11 1505 3

原创 @Autowired不是spring的自动注入

在提到spring的自动注入,我们肯定都了解,网络上有大幅篇章的博客都有去描述spring的各种依赖注入的方式,以及说明.但是本文的自动注入可能会颠覆你对spring的认知(在debuger源码时,我也被颠覆了.可以说百度上的很多博客对于spring的自动注入都理解错了,下文将会通过我的理论+代码+源码证明理论的方式说明!)

2020-06-01 10:06:58 1124 1

原创 The type java.io.ObjectInputStream cannot be resolved.

异常原因: JSP页面没有编译.本人解决方案:在maven的pom.xml里面引入tomcat7插件<plugins> <plugin> <groupId>org.apache.tomcat.maven</groupId> <artifactId>tomcat7-maven-plugin</artifactId> <version>2.2</versio

2017-11-17 14:02:47 948 1

原创 Git常用命令总结

Git常用命令总结git init 在本地新建一个repo,进入一个项目目录,执行git init,会初始化一个repo,并在当前文件夹下创建一个.git文件夹.git clone 获取一个url对应的远程Git repo, 创建一个local copy. 一般的格式是git clone [url]. clone下来的repo会以url最后一个斜线后面的名称命名,创建一个文件夹,如果想要指定特

2017-11-16 18:24:57 243

原创 Oracle : ORA-28000: the account is locked

Oracle : ORA-28000: the account is locked在运行代码时提示the account is locked(账户被锁定)然后我就尝试用PLSQL登录结果也是显示这个经过我网上的一番查找以后解决办法如下:​打开PLSQL使用system用户登录进去在左侧目录找到你被锁定的用户右键编辑用户会出现这个界面(如下图)将账户被锁住选择框取消勾选应用即可!​

2017-10-31 21:14:03 577 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除