WinddSnow

WinddSnow

所有的如果,都没有意义。

Markdown语法记录
使用Markdown语法写文章这是从掘金抄的。一份简要的 Markdown 引导指南,希望可以帮助您顺利的开始使用 Markdown 编辑器。 丰富的快捷键本 Markdown 编辑器支持丰富的格式快捷键,可以非常便捷、轻松的使用 Markdown 语言,形成优美的排版和内容格式。 支持的快捷键有: 加粗: Ctrl/Cmd + B 标题: Ctrl/Cmd + H 插入链接: Ctrl/Cmd + K 插入代码: Ctrl/Cmd + Shift + C 行内代码: Ctrl/Cmd + Shift + K 插入图片: Ctrl/Cmd + Shift + I 无序列表: Ctrl/...
Redis相关问题
简单介绍redis Redis是 C 编写的,高性能非关系型数据库。 Redis 键只能为字符串,值支持五种数据类型:string、has、list、set、zset。 Redis 的数据存在内存中的,读写速度非常快, redis 被广泛应用于缓存方向,每秒可以处理超过 10万次读写操作,是已知性能最快的Key-Value DB。 支持数据持久化,支持AOF(Append Only File)和RDB(Redis DataBase)两种持久化方式。 支持主从复制,主机会自动将数据同步到从机,可以进行读写分离。 Redis 也经常用来做分布式锁和分布式事务。 不能用作海量数据的高性能读写 ...
Redis分布式缓存
0. 基于Redis集群解决单机Redis存在的问题单机的Redis存在四大问题: 数据丢失问题–解决:实现redis数据持久化 并发能力问题–解决:搭建主从集群,实现读写分离 故障恢复问题–解决:利用redis哨兵,实现健康检测和自动恢复 存储能力问题–解决:搭建分片集群,利用插槽机制实现动态扩容 1. Redis持久化Redis有两种持久化方案: RDB持久化 AOF持久化 1.1 RDB持久化RDB全称Redis Database Backup file(Redis数据备份文件),也被叫做Redis数据快照。简单来说就是把内存中的所有数据都记录到磁盘中。当Redis实例故障...
Java多线程-并发②
多线程-并发②16. 数据并发操作可能的问题? 丢失的修改 不可重复读,读第二次,数据就不对了 读脏数据 幻影读 17. 消息等待通知wait/notify具体的应用 一个线程修改了一个对象的值,另外一个线程需要感知到这个变化 Java中我们使用的对象锁以及wait/notify方法进行线程通信 等待方遵循的原则: 获取对象的锁 不满足条件 就调用wait()方法 条件满足继续执行 通知方原则: 获取对象的锁 改变条件, 然后notify 18. 线程池中 submit() 和 execute() 方法有什么区别? execute() 参数 Runna...
Java多线程-并发
多线程-并发①1.Java中的锁 乐观锁/悲观锁 共享锁/独享锁 公平锁/非公平锁 互斥锁/读写锁 可重入锁 自旋锁 分段锁 偏向锁/轻量级锁/重量级锁 2. Java线程的状态|生命周期 Java的线程状态被定义在公共枚举类java.lang.Thread.state中。一种有六种状态 新建(NEW):表示线程新建出来还没有被启动的状态,比如:Thread t = new MyThread(); 就绪/运行(RUNNABLE):该状态包含了经典线程模型的两种状态:就绪(Ready)、运行(Runnin...
nginx简介及使用进阶
1. nginx介绍 Nginx是一款轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好,中国大陆使用nginx的网站有:百度、京东、新浪、网易、腾讯、淘宝等。 Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日。nginx官网 2. 安装一般推荐安装在linux服务器,其他操作系统可查看官网网站 2.1 联网使用包管理器安装方式最简单即使用包管...
PVE虚拟化
Proxmox VEProxmox VE(PVE),开源虚拟化解决方案,如果觉得VMware的ESXI过于庞大复杂,可以尝试以下,普通PC就可安装,支持分布式。据说基于KVM,操作系统是万能的Debian。 官网:https://www.proxmox.com/en/ 中文社区:https://www.proxmox.wiki/ 很多资料都可以在社区找到,安装也及其简单快捷,只需下载镜像,刻录到U盘,在需要安装的主机引导U盘启动,安装镜像的安装指导,一步一步安装即可,安装成功后,在界面会有管理网址弹出,直接web访问管理网址即可。目前的版本是6.4,开源产品,迭代还是很快的,据说是采用的...
Java算法基础-数据结构-设计模式
Java算法基础-数据结构-设计模式1. 动态代理有几种实现? java的动态代理技术的实现主要有两种方式: JDK原生动态代理 CGLIB动态代理 JDK原生动态代理是Java原生支持的,不需要任何外部依赖,但是它只能基于接口进行代理(需要代理的对象必须实现于某个接口) CGLIB通过继承的方式进行代理(让需要代理的类成为Enhancer的父类),无论目标对象有没有实现接口都可以代理,但是无法处理final的情况。 2. 堆和栈的区别? 栈内存 栈内存首先是一片内存区域,存储的都是局部变量 凡是定义在方法中的都是局部变量(方法外的是全局变量),for循环内部定义的也是局部...
Java数组基础
数组基础1.ArrayList和LinkedList区别? 都是List接口的实现类 ArrayList基于数组,LinkedList基于链表 ArrayList3.1 查询快,增删慢3.2 往数组尾部添加元素的效率高,也就是调用add(obj),但是还是比LinkedList慢。 LinkedList4.1 数据添加删除效率高,只需要改变指针指向即可4.2 查询数据的平均效率低,需要对链表进行遍历 2.ArrayList扩容机制怎样? ArrayList每次扩容是原来的1.5倍。 数组进行扩容时,会将老数组中的元素重新拷贝一份到新的数组中,每次数组容量的增长大约是其原容量的1.5倍。...
杂谈服务器
服务器本质上也是就是加强版的计算机,服务器主要对外提供服务。但这有什么好谈论的呢?现代网络条件下,随着物联网的进一步发展,万物互联成为了趋势,那这一切服务的背后,是无数的服务器的支撑。 我曾经一度很好奇,各种云厂商,如阿里云等,巨量的服务器是如何运维的?他们的服务器安装的是什么系统,不同的架构(如X86或ARM)对前端服务有何影响?网上资料很少,我的见解也是一知半解,只当记录,留作参考。 磁盘阵列RAID谈论服务器绕不开磁盘阵列,本质上磁盘阵列是硬盘的一种冗余方式,从接触的服务器来看,大多服务器自带raid卡,可以进行硬件层面的磁盘阵列,牺牲性价比的raid1,两个磁盘互备,损失一半容量...
avatar
WinddSnow
Simple is best.
FRIENDS
friendA friendB