- 博客(133)
- 收藏
- 关注
转载 【Java并发】线程安全和内存模型
一、概述1.1 什么是线程安全?1.2 案例1.3 线程安全解决办法:二、synchronized2.1 概述2.2 同步代码块2.3 同步方法2.4 静态同步函数2.5 总结三、多线程死锁3.1 什么是死锁3.2 如何避免四、Threadlocal4.1 什么是Threadlocal...
2019-10-05 17:07:00
217
转载 【Java并发】基础
一、概述1.1 线程与进程区别1.2 多线程引发的性能问题二、多线程创建方式2.1 第一种-继承Thread类2.2 第二种-实现Runnable接口2.3 第三种-实现Callable接口2.4 常用线程构造函数2.5 使用继承Thread类还是使用实现Runnable接口好?三、线程基础知识3.1 常用线程API...
2019-10-05 12:40:00
244
转载 【Redis】基本数据类型及命令操作(超详细)
一、String1.1 概述1.2 相关命令列表1.3 命令示例二、List2.1 概述:2.2 相关命令列表:2.3 命令示例:2.4 链表结构的小技巧:三、Hashes3.1 概述3.2 相关命令列表3.3 命令示例四、Set4.1 概述:4.2 相关命令列表:4.3 命令...
2019-09-26 22:42:00
226
转载 【MySQL】SQL语句基础
一、操作数据库1.1 创建数据库1.2 查看数据库1.3 修改数据库1.4 删除数据库1.5 选择数据库二、操作表2.1 创建表2.2 查看表2.3 修改表2.4 删除表三、操作表记录CRUD3.1 INSERT3.2 UPDATE3.3 DELETE3.4 SELECT四、备...
2019-09-23 10:39:00
160
转载 【SpringBoot】Web开发
一、简介1.1 引入SpringBoot模块1.2 SpringBoot对静态资源的映射规则二、模版引擎2.1 简介2.2 引入thymeleaf2.3 Thymeleaf使用一、简介1.1 引入SpringBoot模块 在介绍Web开发模块之前,先总结一下SpringBoot中如何引入某一个模块,我们知道,Spring...
2019-09-21 11:35:00
70
转载 【SpringBoot】整合日志框架
一、日志框架概述1.1 日志框架的产生1.2 市面上的日志框架二、SLF4j 使用与整合2.1 如何在系统中使用SLF4j2.2 如何整合日志框架2.3 SpringBoot中的日志关系三、日志使用3.1 默认配置3.2 日志格式3.2 指定配置四、切换日志框架一、日志框架概述1.1 日志框架...
2019-09-21 01:22:00
184
转载 【SpringBoot】自动配置
一、取值1.1 @Value1.2 ConfigurationProperties二、导入配置文件2.1 @PropertySource三、配置文件的加载3.1 默认的加载顺序3.2 外部配置加载顺序四、自动配置的原理4.1 原理4.2 补充一、取值1.1 @Value使用@Value赋值;...
2019-09-20 22:47:00
113
转载 【SpringBoot】入门程序和机制分析
一、初建项目首先要导入SpringBoot的Maven依赖<!-- Inherit defaults from Spring Boot --><!-- 这是SpringBoot的核心依赖,所有的项目都要导入此依赖,SpringBoot通过此依赖管理SpringBoot的依赖关系,以及版本--> <parent> &l...
2019-09-20 22:46:00
86
转载 【Distributed】分布式解决方案【汇总】
一、问题引出二、分布式Session问题三、网站跨域问题四、分布式任务调度平台五、分布式配置中心六、分布式锁解决方案七、缓存技术一、问题引出【Distributed】分布式系统中遇到的问题二、分布式Session问题【Redis】分布式Session三、网站跨域问题【Distributed】网站跨域解决方案四、分布...
2019-09-18 18:08:00
128
转载 【Distributed】分布式锁
一、概述1.1 分布式解决的核心思路1.2 分布式锁一般有三种实现方式二、基于Redis的分布式锁2.1 使用常用命令2.2 实现思路2.3 核心代码Maven依赖信息LockRedisService测试代码三、三种分布式对比一、概述1.1 分布式解决的核心思路在多台服务器中,只能保证一台...
2019-09-18 17:57:00
150
转载 【Distributed】分布式配置中心
一、概述1.1 什么是分布式配置中心常用分布式配置中心框架二、Apollo阿波罗2.1 Apollo特点2.2 Apollo整体架构原理2.3 Apollo Portol 环境搭建Linux上创建数据库确保端口未被占用执行启动脚本使用Apollo配置中心2.4 Apollo配置中心客户端集成打入...
2019-09-18 15:41:00
185
转载 【Distributed】分布式任务调度平台
一、概述什么是定时任务二、Java实现定时任务方式2.1 Thread2.2 TimerTask2.3 ScheduledExecutorService2.4 Quartz引入maven依赖任务调度类启动类Quartz表达式三、分布式情况下定时任务会出现哪些问题?四、分布式定时任务解决方案...
2019-09-18 12:46:00
237
转载 【Zookeeper】集群环境搭建
一、概述1.1 Zookeeper的角色1.2 Zookeeper的读写机制1.3 Zookeeper的保证1.4 Zookeeper节点数据操作流程二、Zookeeper 集群环境搭建 2.1 安装jdk运行jdk环境2.2 安装jdk1.8环境变量2.3 安装配置Zookeeper2.4 克隆虚拟机2.5 运行测试...
2019-09-17 15:23:00
84
转载 【Distributed】网站跨域解决方案
一、概述1.1 什么是网站跨域1.2 网站跨域报错案例二、五种网站跨域解决方案三、使用JSONP解决网站跨域[1]3.1 前端代码3.2 后端代码四、使用设置响应头允许跨域[2]4.1 前端代码4.2 后端代码五、使用HttpClient进行内部转发[3]5.1 前端代码5.2 后端代码六、...
2019-09-17 13:20:00
236
转载 【Zookeeper】实现哨兵机制(选举策略)
一、Master选举使用场景及结构二、代码实现2.1 Maven依赖信息2.2 IndexController2.3 MyApplicationRunner2.4 ElectionMaster一、Master选举使用场景及结构现在很多时候我们的服务需要7*24小时工作,假如一台机器挂了,我们希望能有其它机器顶替它继续工作。此类问题现在...
2019-09-16 22:58:00
468
转载 【Distributed】分布式Session一致性问题
一、概述1.1 什么是Session1.2 Session实现原理1.3 Session常见问题Session 保证在那里?关闭浏览器Session会失效吗服务器集群之后,Session产生的问题1.4 NginxNginx配置负载均衡Upstream Server配置负载均衡算法二、Session 相关代...
2019-09-16 22:53:00
127
转载 【Distributed】分布式系统中遇到的问题
一、概述 大型互联网公司公司一般都采用服务器集群,这样就要实现多个服务器之间的通讯,在nginx实现负载均衡(分布式解决方案)服务器集群会产生那些问题? 分布式锁(基本)单纯的Lock锁或者synchronized只能保证单个jvm中线程安全问题分布式Sessin一致性问题分布式全局id (也可以使用分布式锁)分布式配置中心分布式日志收集系统分布式任务调度...
2019-09-16 21:26:00
132
转载 【Redis】分布式Session
一、问题引出1.1 Session的原理1.2 问题概述二、解决方案三、代码实现-使用Token代替Session3.1 Service3.2 TokenController一、问题引出1.1 Session的原理//默认创建一个session,默认值为true没有找到对应的session 自动创建sessionHttp...
2019-09-16 21:25:00
121
转载 【Zookeeper】应用场景概述
一、数据发布与订阅(配置中心)二、负载均衡三、命名服务(Naming Service)四、分布式通知/协调五、集群管理与Master选举六、分布式锁七、分布式事务一、数据发布与订阅(配置中心)发布与订阅模型,即所谓的配置中心,顾名思义就是发布者将数据发布到ZK节点上,供订阅者动态获取数据,实现配置信息的集中式管理和动态更新。例如全局...
2019-09-15 00:08:00
64
转载 【Zookeeper】 在Java中的操作
一、基本功能演示1.1 Maven依赖信息1.2 代码演示方法说明1.3 创建Zookeeper节点信息二、Watcher2.1 什么是Watcher接口2.2 Watcher代码一、基本功能演示1.1 Maven依赖信息<dependency> <groupId>...
2019-09-15 00:04:00
114
转载 【Zookeeper】实现负载均衡原理
一、思路使用Zookeeper实现负载均衡原理,服务器端将启动的服务注册到,zk注册中心上,采用临时节点。客户端从zk节点上获取最新服务节点信息,本地使用负载均衡算法,随机分配服务器。服务端启动的时候 会想注册中心Zookeeper中添加节点,(注意这个节点是临时的,目的是如果服务端关闭连接的时候,该结点会自动删除)客户端会查询注册中心里面的节点信息,拿到对应的地址和端口号,使...
2019-09-11 22:20:00
307
转载 【Zookerper】 安装开启
一、Windows环境1.1 下载和安装:1.2 开启1.3 关闭1.4 用客户端连接二、Linux 环境一、Windows环境1.1 下载和安装:环境要求:必须要有jdk环境1、安装JDK2、安装Zookeeper 。在官网http://zookeeper.apache.org/ 下载zookeeper,这里下载的zook...
2019-09-11 22:18:00
309
转载 【Redis】缓存穿透与缓存雪崩
一、缓存雪崩1.1 缓存雪崩产生的原因1.2 解决方案1.3 锁的方式1.4 消息中间件1.5 一级和二级缓存1.6 均摊分配redis key 失效时间二、缓存穿透一、缓存雪崩1.1 缓存雪崩产生的原因 缓存雪崩通俗简单的理解就是:由于原有缓存失效(或者数据未加载到缓存中),新缓存未到期间(缓存正常从Redis中获取...
2019-09-10 21:00:00
103
转载 【Redis】集群方式
一、概述1.1 Redis3.0版本之前1.2 常见集群方案二、Redis-Cluster原理三、搭建集群方案3.1 准备工作3.2 创建模拟集群的文件夹3.3 复制脚本3.4 复制一个新 Redis 实例3.5 再复制出五个新 Redis 实例3.6 修改 9002-9006 的 redis.conf 文件3.7...
2019-09-10 17:45:00
109
转载 【Linux】一些常用命令(待整理)
一、关机重启命令二、查询ip三、查询杀死进程四、CentOS7 关闭防火墙五、vim常用5.1 搜索5.2 设置行号5.3 剪切5.4 替换六、查看某个端口号被那个进程占用6.1 lsof -i6.2 lsof -i:端口号6.3 netstat -tunlp6.3 netstat -tunlp|gre...
2019-09-10 17:42:00
114
转载 【Redis】SpringBoot+Redis+Ehcache实现二级缓存
一、概述1.1 一些疑惑?1.2 场景1.3 一级缓存、两级缓存的产生1.4 流程分析二、项目搭建一、概述1.1 一些疑惑?Ehcache本地内存Redis 分布式缓存可以共享一级(redis) 和二级概念(Ehcache )目的是当redis挂的之后,有备台(本地JVM缓存)一级(Ehcache )和二级概念(redis)...
2019-09-10 02:54:00
352
转载 【Redis】持久化
一、概述1.1 什么是Redis持久化二、RDB持久化2.1 简介2.2 配置三、AOF持久化3.1 简介3.2 配置四、AOF与RDB区别一、概述1.1 什么是Redis持久化什么是Redis持久化,就是将内存数据保存到硬盘。Redis 持久化存储 (AOF 与 RDB 两种模式)二、RDB持久...
2019-09-10 00:30:00
56
转载 【Redis】哨兵机制
一、概述什么是哨兵机制二、环境配置2.1 虚拟机2.2 安装Redis2.3 配置主从复制2.4 配置哨兵2.5 测试2.6 疑惑(待解决)一、概述什么是哨兵机制Redis的哨兵(sentinel) 系统用于管理多个 Redis 服务器,该系统执行以下三个任务:监控(Monitoring): 哨兵(sen...
2019-09-10 00:29:00
83
转载 【Redis】主从复制
一、概述1、redis的复制功能是支持多个数据库之间的数据同步。一类是主数据库(master)一类是从数据库(slave),主数据库可以进行读写操作,当发生写操作的时候自动将数据同步到从数据库,而从数据库一般是只读的,并接收主数据库同步过来的数据,一个主数据库可以有多个从数据库,而一个从数据库只能有一个主数据库。2、主从复制应用场景:集群(多台服务器)、读写分离3、通过redi...
2019-09-09 23:45:00
57
转载 【Redis】发布订阅
一、概述Redis 发布订阅(pub/sub)是一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息。Redis 客户端可以订阅任意数量的频道。下图展示了频道 channel1 , 以及订阅这个频道的三个客户端 —— client2 、 client5 和 client1 之间的关系:155609当有新消息通过 PUBLISH 命令发送给频道 c...
2019-09-09 22:45:00
203
转载 【Distributed】缓存技术
一、缓存概述1.1 缓存技术分类1.2 缓存框架分类1.3 Session理解的误区二、基于Map集合实现本地缓存2.1 定义Map缓存工具类2.2 使用案例三、Ehcache 缓存框架四、分布式缓存Redies一、缓存概述1.1 缓存技术分类1.客户端缓存页面缓存浏览器缓存App客户端缓存2.网...
2019-09-09 22:26:00
110
转载 【Redis】基本数据类型
一、概述二、String(字符串)三、List(列表)四、Hash(字典)五、Set(集合)六、Sorted Set(有序集合)一、概述 * Redis目前支持5种数据类型,分别是:String(字符串)List(列表)Hash(字典)Set(集合)Sorted Set(有序集合)下面就分别介绍这五种数据类型及其相应的...
2019-09-09 22:16:00
101
转载 【Redis】安装、开启以及关闭
一、Linux环境的操作1.1 下载安装1.2 启动1.3 连接Redis客户端1.4 关闭二、Windows和Mac下的操作2.1 下载安装2.2 启动2.3 连接客户端2.4 关闭三、Redis 管理工具一、Linux环境的操作1.1 下载安装1.下载Redis安装包wget http:...
2019-09-09 22:16:00
93
转载 【Ehcache】基础知识学习
一、Ehcache概述1.1 简介1.2 Ehcache的主要特性二、Ehcache使用介绍2.1 Ehcache缓存过期策略2.2 如何解决缓存与db不同步的问题。三、Ehcache 基本项目演示3.1 Maven环境依赖3.2 YML配置文件信息3.3 App启动方式3.4 项目使用3.5 EhCache配...
2019-09-09 18:20:00
140
转载 【Hystrix】实现服务隔离和降级
一、背景1.1 服务熔断1.2 服务降级1.3 服务隔离1.4 总结二、使用Hystrix实现服务隔离和降级2.1 Hytrix 简介2.2 线程池方式2.3 信号量三、项目搭建3.1 订单工程1. 引入Maven依赖2. Service3.Controller4.工具类3.2 会员...
2019-09-08 21:28:00
87
转载 【Nginx】实现动静分离
一、概述1.1 动态页面与静态页面区别1.2 什么是动静分离1.3 为什么要用动静分离二、Nginx实现动静分离2.1 架构分析2.2 配置三、动静分离与前后分离区别:四、一些问题一、概述1.1 动态页面与静态页面区别静态资源: 当用户多次访问这个资源,资源的源代码永远不会改变的资源。动态资源:当用户多次访...
2019-09-06 17:00:00
126
转载 【Mac】快速复制文件路径
一、使用Automator新建服务二、配置三、使用四、创建快捷键一、使用Automator新建服务 在应用程序文件夹里打开Automator,选择文件菜单,新建一个服务,如下二、配置 在左侧操作栏找到拷贝至剪贴板操作,拖到右侧,一定要将下图中的一拖到四处!!!,还有两个地方需要修改,下图中的 三和四,见下图:  然后Cm...
2019-09-06 16:41:00
1202
转载 【Nginx】(主从热备)LVS+Keepalived+Nginx实现高性能负载均衡集群
一、LVS1.1 概述1.2 Nginx与LVS区别什么二、Keepalived2.1 概述2.2 keepalived和其工作原理三、LVS+Keepalived+Nginx 搭建双机主从热备3.1 问题引出3.2 架构流程图3.3 环境搭建1).环境服务配置2).下载并编译keepalived3).把...
2019-09-06 03:07:00
428
转载 【Nginx】四层负载均衡配置
一、概述二、配置2.1 环境准备2.2 安装及配置1).下载Nginx2).下载nginx_tcp_proxy_module 插件3).编译Nginx4).修改Nginx.conf配置文件5).测试一、概述 Nginx1.9之后,开始支持四层负载均衡,需要引入额外的模块二、配置2.1 环境准备#测试环...
2019-09-05 17:45:00
195
转载 【Nginx】 中的配置命令
一、location1.1 概述1.2 location的语法1.3 Location正则案例二、nginx rewrite2.1 rewrite全局变量2.2 判断IP地址来源2.3 限制浏览器访问一、location1.1 概述 location指令的作用是根据用户请求的URI来执行不同的应用,也就是根据用户请...
2019-09-05 15:21:00
119
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人