- 博客(14)
- 收藏
- 关注
原创 安装nginx(在ubunt18.04)并进行反向代理
最近配置nginx遇到一些坑,因此将配置过程,都记录下来。首先,步骤1到7是配置过程,第8点是解决一些常见问题;1、下载nginx:网址:http://nginx.org/en/download.html也可以使用:wget http://nginx.org/download/nginx-1.14.2tar.gz1.1 可能需要安装一些依赖:- 更新源:sudo apt-get up...
2019-08-14 21:11:54
714
原创 常见的状态码
常见的状态码:一、临时响应:表示临时响应并需要请求者继续执行操作的状态码100(继续)请求者应当继续请求,服务器返回此码,表示已经接受到请求的第一部分,正在等待其余部分;101:请求服务器切换请求,服务器已确认并准备切换二、成功200 请求成功三、重定向301 永久重定向;302 暂时重定向;304 重定向:服务端已经执行get,但文件未发生变化;四、请求错误400 错误码,...
2019-08-02 10:03:28
253
原创 解决win10 无法搜索本地应用
通过两步来解决问题:找到该位置C:\Windows\System32\WindowsPowerShell\v1.0,打开powershell.exe在powershell.exe中输入:Get-AppXPackage -Name Microsoft.Windows.Cortana | Foreach {Add-AppxPackage -DisableDevelopmentMode -Reg...
2019-07-30 10:32:30
549
转载 常考的 21 条 Linux 命令
一、文件和目录cd命令(它用于切换当前目录,它的参数是要切换到的目录的路径,可以是绝对路径,也可以是相对路径)cd /home 进入 ‘/ home’ 目录cd … 返回上一级目录cd …/… 返回上两级目录cd 进入个人的主目录cd ~user1 进入个人的主目录cd - 返回...
2019-06-13 19:20:07
200
原创 计算机网络重点知识
一、 TCP/IP协议体系的认知二、链路层以太网帧的格式MTU的概念ARP协议和RARP协议(掌握一下ARP缓存的原理)三、 网络层掌握IP的首部格式掌握IP的分片掌握IP选路ICMP协议1. 掌握报文格式2. 分类:查询 + 差错3. 两种 + 五种四、 传输层UDP,次要一点,掌握特点和首部各个字段掌握TCP特点 + 首部字段 + 可靠机制连接控制...
2019-06-12 10:43:49
543
原创 活跃性危险
死锁经典的“哲学家进餐”问题就很好的描述了死锁的状况;死锁的成因:如果每个人都拥有其他人需要的资源,但是同时又等待其他人已经拥有的资源,并且每个人在获取所有需要的资源之前都不会放弃已经拥有的资源;一、锁顺序死锁1.左右锁问题发生死锁的原因:两个线程试图以不同的顺序来获得相同的锁。解决办法:如果按照相同的顺序请求锁,那么就不会出现循环的加锁依赖性,因此就不会产生死锁。如果每个需要锁L和...
2019-06-05 20:40:08
147
转载 乐观锁的一种实现方式——CAS
线程安全众所周知,Java是多线程的。但是,Java对多线程的支持其实是一把双刃剑。一旦涉及到多个线程操作共享资源的情况时,处理不好就可能产生线程安全问题。线程安全性可能是非常复杂的,在没有充足的同步的情况下,多个线程中的操作执行顺序是不可预测的。Java里面进行多线程通信的主要方式就是共享内存的方式,共享内存主要的关注点有两个:可见性和有序性。加上复合操作的原子性,我们可以认为Java的线程...
2019-06-03 21:34:37
315
原创 ArrayList、vector、LinkedList区别
ArrayList底层结构:是可变数组remove()删除元素时候,也需要复制数组,所以效率不高;add()方法,当ArrayList容量很大时,效率还是很高的;get、set方法效率很高,只需要找到相应的index位置即可;初始化大小:10,但容量超过最大值时,对其进行扩容,默认扩容1.5倍;线程不安全的;Vector底层结构:可变数组;方法基本与ArrayList相同;...
2019-06-03 20:44:32
110
原创 大文件的拆分
面临的问题当遇到大于2G的文件时,电脑自动的软件无法打开进行阅读,因此,我们需要将大文件分割成多个小文件进行存储;解决方案本文使用java来对文件进行分割,分割过程总共可以分为两步:确认大文件中的行数:public class BeforeBreakFile { public static void main(String args[]) { long start...
2019-06-02 15:19:49
2402
转载 阻塞非阻塞,同步异步概念
阻塞非阻塞:请求不能立即得到应答,需要等待,那就是阻塞;否则可以理解为非阻塞。同步异步:某业务需要甲乙甚至多方合作的时候,总是按照“甲方请求一次,乙方应答一次”这样的有序序列处理业务,只有当“一次请求一次应答”的过程结束才可以发生下一次的“一次请求一次应答”,那么就说他们采用的是同步。(同步IO中,对同一个描述符的操作必须是有序的)如果甲方只要有需要,就会发送请求,不管上次请求有没...
2019-05-31 16:35:11
96
原创 数据库索引
在MySQL中索引是在存储引擎层实现的而不是在服务层实现。因此,没有统一的索引标准:不同存储引擎的索引工作方式不同。一、索引类型B-tree索引:基本信息:是最常使用的索引,提到索引时没有特别说明,那多半说的是B-tree索引。底层的存储引擎也可以使用不同的存储结构,InnoDB实际使用的B+tree,B+tree是B-tree的一种变种。比较:存储引擎以不同的方式使用B-tree索引,...
2019-05-30 13:45:16
162
原创 MySQL常见存储引擎
InnoDB引擎基本信息:InnoDB是MySQL的默认事务型引擎,也是最重要、使用最广泛的存储引擎。应用场景:被设计用来处理大量的短期事务MyISAM引擎基本信息:在MySQL5.1及之前版本,MyISAM是默认存储引擎。提供了大量的特性,包括全文索引、压缩、空间函数等。但MyISAM不支持事务和行级锁,且有一个严重缺陷是:崩溃之后无法安全恢复。特性:加锁与并发:MyISAM...
2019-05-29 13:55:26
242
原创 HashMap学习总结
HashMap数据结构:由数组、链表和红黑树(JDK1.8开始)构成;存储和查找效率很高,但是是线程不安全的类,不适用于并发环境中。若想在高并发的情况下使用,可以使用Collections.syncronizedMap()来进行包装,或使用HashTable类、ConcurrentHashMap类;(在JDK1.7及以上版本,建议使用ConcurrentHashMap)重要的参数值:初...
2019-05-28 12:55:00
184
原创 MySQL读写锁总结
读写锁读锁:是一种共享锁,一个事务持有读锁时,不会阻塞其它的写锁,其他事务都可以对该数据进行读取;写锁:是一种排他锁,一个锁持有写锁会阻塞其他的写锁和读锁,从而保证了一个只有一个事务进行写操作,并且防止其他事务读取正在写入资源,避免了脏读;锁策略锁策略:就是在锁的开销和数据安全性之间寻求平衡;表锁:表锁是MySQL中最基本的锁策略,并且是开销最小的策略。表锁会锁定整张表,一个事务在...
2019-05-23 22:40:53
1802
3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人