- 博客(19)
- 资源 (22)
- 收藏
- 关注
原创 VMware ESXi 6.7搭建
参考文章https://blog.youkuaiyun.com/QQ1006207580/article/details/88799489
2020-08-28 09:25:10
344
原创 Ubuntu 安装搜狗输入法及Clion无法使用问题
中文输入法首选搜狗血的教训,Ubuntu系统中文输入法乖乖的装搜狗输入法吧,其他谷歌拼音、Chinese-pinyin 用起来都是泪。 以下步骤请严格按照顺序执行,每次的重启都不要跳过,否则可能导致安装不成功。没办法,用户少的操作系统就是这么尴尬,很多操作都需要通过重启来生效。1)设置系统支持中文2)重启3)安装输入法框架fcitx4)重启5)设置Ubuntu键盘输入法框架为fcitx6)安装搜狗输入法7)重启安装步骤设置系统支持中文鼠标依次点击System Settings–>
2020-08-21 09:01:38
2649
原创 如何发现代码质量问题-checklist
1.常规checklist目录设置是否合理、模块划分是否清晰、代码结构是否满足"高内聚,松耦合"?是否遵循经典的设计原则和设计思想(SOLID、DRY、KISS、YAGNI、LOD等)?设计模式是否应用得当,是否过度设计?代码是否容易扩展?如果要添加新功能,是否容易实现?代码是否可以复用?是否可以复用已有的项目代码或类库?是否有重复造轮子?代码是否容易测试?单元测试是否全面覆盖各种正常和异常的情况?代码是否易读?是否符合编码规范(比如命名和注释是否恰当、代码风格是否一致等)?2.业务ch
2020-08-04 09:26:12
394
原创 gradle使用maven库设置
1.找的maven仓库的位置复制路径I:\repository,由于我是使用idea设置的maven仓库位置2.配置环境变量GRADLE_USER_HOME 将上面的I:\repository配置进去3.重启idea验证 是否生效 可以看到Gradle模块的Service directory path变成了我们设置的GRADLE_USER_HOME环境的变量的位置,说明gradle用maven的仓库 生效了4.配置gradle工程文件加载jar包仓库的优先级,让其先从本地仓库找,如果找不到,再
2020-07-27 11:10:30
1302
原创 xtrabackup备份Mysql
安装官网地址官网2.4版本下载列表此篇文章使用的版本下载主库和从库都需要安装[root@sit-mysql1 local]# cd /usr/local[root@sit-mysql1 local]# tar -xf percona-xtrabackup-2.4.20-Linux-x86_64.el6.tar.gz [root@sit-mysql1 local]# mv percona-xtrabackup-2.4.20-Linux-x86_64 xtrabackup主从同步:关闭从库的
2020-07-20 16:41:28
211
原创 Linux-IO模型之多路复用器
NIO的优劣优势:通过1个或几个线程,解决N个IO连接的处理问题劣势:每循环一次,O(N)的时间复杂度,有多少个客户端连接就有多少次系统调用recv,每次系统调用都会涉及到软中断,线程在用户态和内核态的切换保护现场等操作多路复用解决了什么:只对有事件发生的客户端连接发起系统调用多路复用器的实现目前linux下只有同步模型下的多路复用器POXIS协议的selectman 2 select可以看到如下的函数int pselect(int nfds, fd_set *readfds,
2020-07-08 10:27:32
367
原创 Linux-IO模型之NIO
C10K问题BIO的弊端accept阻塞服务端新建线程调用系统调用clone阻塞因为内核提供给我们调用的API是阻塞的,所以优化也就是选择新的APINIO在kernel层面,比如BIO中用的socket,可通过参数设置成非阻塞使用man 2 socket 查看系统调用socket函数的设置可以看到下面这句话,可以对socket设置成非阻塞SOCK_NONBLOCK Set the O_NONBLOCK file status flag on the new open file de
2020-07-07 15:27:57
301
原创 Linux-IO模型之BIO
说到IO模型,先来了解几个专用术语:我们平时说的阻塞或非阻塞是指应用程序在发起 I/O 操作时,是立即返回还是等待。而同步和异步,是指应用程序在与内核通信时,数据从内核空间到应用空间的拷贝,是由内核主动发起还是由应用程序来触发。有异步阻塞模型吗?没有,都异步了,还要阻塞?有病吧!观察IO模型过程中用到的指令:strace -ff -o out cmd-ff 捕捉所有线程-o 捕捉到的每个线程的输出文件以什么开头cmd 捕捉的命令,比如 java -jar服务端codeimport j
2020-07-06 21:58:27
454
原创 Linux-文件IO
pagecache刷盘策略1.跟随内核设置2.每秒一次3.每操作一次写一次对应的丢数据就是:1.丢一个缓冲区2.丢一秒的数据3.丢一条数据那一个缓冲区多大呢?可以配置是多少字节或者多大比率根据vm.dirty_bytes = 0vm.dirty_ratio = 30[root@optimize ~]# sysctl -a | grep dirtysysctl: reading key "net.ipv6.conf.all.stable_secret"sysctl: readin
2020-07-06 14:49:15
178
1
原创 Linux-网络IO之TCP三次握手阶段
BIO的连接建立及文件描述符分配首先准备两台linux:node01和node02,用来做client和server需要用到的几个命令:lsof -p 可以看到某一个进程里的文件描述符是否已经有了,以及什么时候才能看到这个文件描述符netstat -antp 查看内核里面socket的建立过程tcpdump 抓取网络通信数据包BIO一些参数介绍: //server socket listen property: private static final int RECEIVE_BU
2020-07-06 10:32:47
579
原创 Linux-文件类型
文件类型当我们使用命令查看linux目录下的内容时,如下:[root@optimize ~]# lltotal 4-rw-------. 1 root root 1246 Jun 11 10:54 anaconda-ks.cfg左侧第一个字符代表的就是文件类型-:普通文件(可执行、图片、文本) REGd:目录l:链接b:块设备- 硬盘c:字符设备- 键盘 CHRs:socketp:pipeline[eventpoll]:…示例:[root@optimize opt]# l
2020-06-29 19:16:57
697
原创 mysql gtid格式和存储
什么是 GTID从MySQL 5.6.5 开始新增了一种基于 GTID 的复制方式。通过 GTID 保证了每个在主库上提交的事务在集群中有一个唯一的ID。这种方式强化了数据库的主备一致性,故障恢复以及容错能力。GTID (Global Transaction ID)是全局事务ID,当在主库上提交事务或者被从库应用时,可以定位和追踪每一个事务,对DBA来说意义就很大了,我们可以适当的解放出...
2020-04-11 22:54:20
675
原创 mysql GTID介绍
GTID是什么,可以用来做什么,以及GTID的格式和存储GTID生命周期 (未完待续)GTID自动复制 (未完待续)使用GTID设置复制 (未完待续)使用GTID进行故障转移和横向扩展 (未完待续)使用GTID复制的限制 (未完待续)操纵GTID的函数示例 (未完待续)...
2020-04-11 22:52:19
176
原创 Linux配置ssh免密码互相通信
假设有3台Linux虚拟机,那么应该如何配置免密码通信呢?node01,node02,node03(1)首先在三台机器上配置对本机的ssh免密码登录ssh-keygen -t rsa生成本机的公钥,过程中不断敲回车即可,ssh-keygen命令默认会将公钥放在/root/.ssh目录下cd /root/.sshcp id_rsa.pub authorized_keys将公钥复制为au...
2020-03-18 23:01:56
261
原创 二进制基础及位运算
二进制计算每一位上的数基数的索引次幂相加之和例如:0101=12º+12²=5第一位1基数2的索引0次幂+第三位1*基数2的2次幂等于5其他进制计算等同十进制转2进制:除2求余法除2求余倒序表示简便算法:记住2的10次幂1024内的次幂值...
2019-12-04 16:06:09
5261
原创 有符号右移和无符号右移
计算机表示数字正负不是用+ -加减号来表示,而是用最高位数字来表示,0表示正,1表示负有符号右移若正数,高位补0,负数,高位补1 -> 一句话概括:高位补符号位正数例如:8 >> 2偶数情况8的二进制为 0000 0000 0000 0000 0000 0000 0000 1000右移两位后 0000 0000 0000 0000 0000 0000 000...
2019-12-04 09:46:25
6847
4
原创 java类的加载机制
概述我们平时写的java文件编译后都会生成对应的class文件,那java虚拟机又是如何加载class文件到内存并运行的呢?这些都是本章将要讲解的内容。与那些在编译时需要进行连接工作的语言不同,在Java语言里面,类型的加载、连接和初始化过程都是在程序运行期间完成的(也就是说是lazyLoading的),这种策略虽然会令类加载时稍微增加一些性能开销,但是会为Java应用程序提供高度的灵活性,...
2019-12-03 11:29:19
170
原创 java类的初始化
##什么情况下会触发初始化初始化一个类,包括执行这个类的静态初始化和初始化在这个类中声明的静态字段。根据Java语言规范,在首次发生下列任意一种情况时,一个类或接口类型T将被立即初始化。1)T是一个类,而且一个T类型的实例被创建。2)T是一个类,且T中声明的一个静态方法被调用。3)T中声明的一个静态字段被赋值。4)T中声明的一个静态字段被使用,而且这个字段...
2017-07-11 10:23:54
538
华章数学译丛16-实分析(中文版.原书第3版)
2018-02-03
华章数学译丛14-实分析与复分析(中文版.原书第3版)
2018-02-03
华章数学译丛08-矩阵分析(中文版)
2018-02-03
华章数学译丛06-复变函数及其应用(中文版.原书第7版)
2018-02-03
华章数学译丛05-曲线与曲面的微分几何(中文版)
2018-02-03
华章数学译丛03-泛函分析(中文版.原书第2版)
2018-02-03
Hibernate原理与配置快速入门
2013-04-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人