0. 基于Redis集群解决单机Redis存在的问题单机的Redis存在四大问题:
数据丢失问题–解决:实现redis数据持久化
并发能力问题–解决:搭建主从集群,实现读写分离
故障恢复问题–解决:利用redis哨兵,实现健康检测和自动恢复
存储能力问题–解决:搭建分片集群,利用插槽机制实现动态扩容
1. Redis持久化Redis有两种持久化方案:
RDB持久化
AOF持久化
1.1 RDB持久化RDB全称Redis Database Backup file(Redis数据备份文件),也被叫做Redis数据快照。简单来说就是把内存中的所有数据都记录到磁盘中。当Redis实例故障...
多线程-并发②16. 数据并发操作可能的问题?
丢失的修改
不可重复读,读第二次,数据就不对了
读脏数据
幻影读
17. 消息等待通知wait/notify具体的应用
一个线程修改了一个对象的值,另外一个线程需要感知到这个变化
Java中我们使用的对象锁以及wait/notify方法进行线程通信
等待方遵循的原则:
获取对象的锁
不满足条件 就调用wait()方法
条件满足继续执行
通知方原则:
获取对象的锁
改变条件, 然后notify
18. 线程池中 submit() 和 execute() 方法有什么区别?
execute() 参数 Runna...
多线程-并发①1.Java中的锁
乐观锁/悲观锁
共享锁/独享锁
公平锁/非公平锁
互斥锁/读写锁
可重入锁
自旋锁
分段锁
偏向锁/轻量级锁/重量级锁
2. Java线程的状态|生命周期
Java的线程状态被定义在公共枚举类java.lang.Thread.state中。一种有六种状态
新建(NEW):表示线程新建出来还没有被启动的状态,比如:Thread t = new MyThread();
就绪/运行(RUNNABLE):该状态包含了经典线程模型的两种状态:就绪(Ready)、运行(Runnin...
1. nginx介绍
Nginx是一款轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好,中国大陆使用nginx的网站有:百度、京东、新浪、网易、腾讯、淘宝等。
Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日。nginx官网
2. 安装一般推荐安装在linux服务器,其他操作系统可查看官网网站
2.1 联网使用包管理器安装方式最简单即使用包管...
Proxmox VEProxmox VE(PVE),开源虚拟化解决方案,如果觉得VMware的ESXI过于庞大复杂,可以尝试以下,普通PC就可安装,支持分布式。据说基于KVM,操作系统是万能的Debian。
官网:https://www.proxmox.com/en/
中文社区:https://www.proxmox.wiki/
很多资料都可以在社区找到,安装也及其简单快捷,只需下载镜像,刻录到U盘,在需要安装的主机引导U盘启动,安装镜像的安装指导,一步一步安装即可,安装成功后,在界面会有管理网址弹出,直接web访问管理网址即可。目前的版本是6.4,开源产品,迭代还是很快的,据说是采用的...
Java算法基础-数据结构-设计模式1. 动态代理有几种实现?
java的动态代理技术的实现主要有两种方式:
JDK原生动态代理
CGLIB动态代理
JDK原生动态代理是Java原生支持的,不需要任何外部依赖,但是它只能基于接口进行代理(需要代理的对象必须实现于某个接口)
CGLIB通过继承的方式进行代理(让需要代理的类成为Enhancer的父类),无论目标对象有没有实现接口都可以代理,但是无法处理final的情况。
2. 堆和栈的区别?
栈内存
栈内存首先是一片内存区域,存储的都是局部变量
凡是定义在方法中的都是局部变量(方法外的是全局变量),for循环内部定义的也是局部...
数组基础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,两个磁盘互备,损失一半容量...
这是用GitHub的站点,百度了一番教程,做出来的静态blog。用hexo驱动,主题是 hexo官网里的archer。在本地编写md文件后,由hexo编译,再上传到GitHub上,完成博文更新。
1. 环境准备
hexo基于nodejs,所以需要nodejs环境
python–如果没有,安装nodejs时可以通过npm自动安装
git
nodejs官网npm下载慢的话也可以下载淘宝下载源cnpm
1npm install -g cnpm --registry=https://registry.npm.taobao.org
安装hexo12345npm install -g hexo...
像狼一样战斗
“你是一个男孩子,你的义务是让父母,所有关爱你的人为你自豪,而不是让他们一次次失望,在他们面前软弱地掉下眼泪!”
又一次哭了,原来自己是那么的脆弱,让人失望,离Man还有很长的距离!!
没有信任,没有理解,没有帮助,到处是怀疑的目光,到处是谴责的话语,因而成为另类,在黑暗的角落里,独自慢慢地咀嚼孤独与忧伤………
却不服输,带着滴血的伤口,继续疯狂地生活…………………..
终究,一次次软弱地掉下眼泪,却无法改变什么,随着孤独,一同伤怀…………
“孤独是一种境界,是一种美!”
有时真的觉得好孤独,外表的快乐和疯狂,挡不住自内心的,无穷无尽的,如落日般的孤独……
茫然地飙着自行...