自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 资源 (1)
  • 收藏
  • 关注

原创 《SpringBoot 基础架构师》

课程链接文章目录《SpringBoot入门篇》《SpringBoot 常用配置》《SpringBoot入门篇》《SpringBoot 常用配置》设置容器使用随机端口:server.port=${random.int[1024,9999]}

2020-12-31 07:06:55 220

原创 《专题四 服务化改造》之《第三章 分布式系统解耦》之《第五节 常见消息中间件介绍》、《第六节 消息队列的持久化和可靠消息与事务消息》

《3.5.1 消息中间件概念和RabbitMQ介绍》4 30 消息队列两种模式:点对点与发布订阅:RabbitMQ:26分 AMQP模型:47 30 消息:64 40 RabbitMQ的架构:66分 RabbitMQ的消息运转流程:

2020-12-30 02:32:22 413 1

原创 《专题四 服务化改造》之《第三章 分布式系统解耦》

《3.1.1 什么是耦合以及耦合带来的问题》31 46 公共库导致的耦合:解耦方案1:公共库进行业务垂直拆分; 解耦方案2:对公共库进行服务化38分 服务化不彻底导致耦合:优化方案: 业务特性代码上浮40 30 不合理同步调用导致的耦合优化方案:通过MQ实现解耦45 30 配置中的ip导致上下游耦合优化方案:用域名代替IP(可使用nginx),或者配置/注册中心...

2020-12-28 22:43:39 215 2

原创 《专题四 服务化改造》之《第二章 分布式系统拆分实战篇》之《第四节 Maven模版工程搭建》

《2.4.1 模版工程简介》使用mvn archetype:generate命令快速创建maven项目《2.4.2 搭建自己的项目模板》5 29 创建archetype:

2020-12-28 21:59:25 67

原创 《专题四 服务化改造》之《第二章 分布式系统拆分实战篇》之第一、二、三节

《2.2.1 课程说明》网易云课堂内部架构:《2.2.2 Dubbo为什么出现》7分 代码解耦: 可使用maven多模块开发《2.2.3 Dubbo应用与整体结构》Dubbo架构:@DubboService @DubboReference

2020-12-25 00:04:02 95 2

原创 《专题四 服务化改造》之《第一章 分布式系统拆分理论》

目录《1.1.1 分布式系统架构演进之路》《1.2.1 服务化理论知识》《1.3.1 服务化的意义》《1.1.1 分布式系统架构演进之路》23 10 CDN服务器部署在运营商,CDN加速适合于静态资源27 5 适合存储小文件、图片的分布式文件系统: FastDFS、TFS38分 业务拆分:42 30 公共内容服务化;配置中心46 44 两种服务框架: Dubbo、SpringCloud。配置中心有如下方案。其中Dubbo用的是zookeeper系统监控: Zabbix,或者E

2020-12-23 21:00:20 143

原创 《专题三分布式系统》之《第四章 拓展进阶(二)——搜索引擎ES》

文章目录《4.12.1 搜索引擎核心理论思想视频》《4.12.1 搜索引擎核心理论思想视频》10 45 数据库适合结构化数据的精确查询,不适合半结构化、非结构化数据的模糊查询及灵活搜索inverted index 反向索引(倒排索引)22分 中文分词器:26 17 在反向索引中包含词出现的次数及位置:30 40 搜索的步骤:对搜索的输入分词度量相关性视频中提出的度量相关性方案:统计词语在文档中出现的次数(可对在标题中出现的给予更高权重)应该还有其它方案,比如余弦相似性:htt

2020-12-21 15:25:57 190

原创 《专题三分布式系统》之《第四章 拓展进阶(一)——安全防护》

文章目录《4.11.1 常见的安全问题场景》《4.11.2 Hash算法与碰撞》《4.11.3 数字签名、数字证书》非对称加密:数字签名:数字证书《4.11.4 请求重放与中间人攻击》《4.11.5 openId、oauth》《4.11.6 单点登录》《4.11.1 常见的安全问题场景》需要输入输出验证:跨站脚本攻击(CSS or XSS)SQL注入攻击远程命令执行(code execution)目录遍历(Directory traversal)《4.11.2 Hash算法与碰撞》不可逆

2020-12-20 23:08:23 219

原创 如何实现粘性Session

nginx+tomcat关于Session的管理此文质量不错,我做个简单总结:nginx默认的负载均衡策略是轮询,其一大缺点是不能产生粘性Session;把nginx的负载均衡策略改为hash,可以产生粘性Session。但如果某tomcat下线,则粘性Session失效了;通过修改tomcat的配置,可以将session共享在redis中。文中最后的方案其实不完美,比如此Session共享机制与tomcat耦合了,如果要迁移到jetty等其它web容器呢?Spring有提供相应方案,不过我还没

2020-12-20 21:42:40 390

原创 《专题三分布式系统》之《第四章 数据存储层优化(下)——数据库集群拆分》之 《第十节 Sharding-jdbc数据库操作增强类库》

《4.10.1-Sharding-JDBC概览》8分 架构图:

2020-12-19 18:08:03 96 1

原创 解决因权限问题导致binlog的设置无效问题

整个一天为了这个问题,撞了各种墙,现在总算是暂时解决了。一开始我为了配mysql的主服务器,按教程配置/etc/my.cnf :log_bin=/var/log/mysql5-bin.logserver_id=1但发现配置死活不生效。最后我发现不仅是这log_bin的配置无效,连my.cnf这文件里的其它配置似乎也没有生效。然后我发现这跟linux的用户权限有关,装mysql时不知怎的似乎自动有了个叫mysql的linux用户,mysql的文件目录的文件所有者和group都是这个mysql。然后我

2020-12-19 00:56:44 1193 2

原创 《专题三分布式系统》之《第四章 数据存储层优化(下)——数据库集群拆分》之 《第九节 Mycat数据库集群中间件》

《4.9.1-Mycat入门》15分 Mycat架构:《4.9.2-Mycat读写分离》逻辑概念:schema->table的needAddLimit属性默认为true:14 50 childTable标签,避免跨库join19 40 使用jdbc的话要准备jar包:dataHost中与读写分离、负载均衡相关的几个配置:17 50 balance,负载均衡:18 15 writeType:23分 writeHost与re

2020-12-18 02:17:54 233 1

原创 在Centos7上安装Mycat

安装jdk1.8下载jdk安装包到linux机器上root用户身份安装,命令:rpm -ivh jdk-8u162-linux-x64.rpm jdk被安装在 /usr/java目录下配置JAVA环境变量,命令:vi /etc/profile在文件末尾追加:export JAVA_HOME=/usr/java/latestexport CLASSPATH=.:$JAVA_HOME/libexport PATH=$JAVA_HOME/bin:$PATH保存退出后,用命令:source /

2020-12-17 23:28:24 174

原创 《专题三分布式系统》之《第四章 数据存储层优化(下)——数据库集群拆分》之 《第八节 数据库中间件设计篇》

《4.8.1-数据库中间件设计核心理念篇》阿里云Mysql性能测试结果 :《4.8.2 数据库中间件设计要点》9 30 水平拆分的分片规则:数据库中间件的两种实现模式:客户端模式:服务端(代理)模式:常用数据库中间件:...

2020-12-17 17:22:55 71

原创 《专题三分布式系统》之《第四章 数据存储层优化(上)-数据库优化》之 《第六节 数据变更注意事项》

《4.6.2-生产环境改表结构》pt-online-schema-change:《4.6.3-insert导致的死锁》视频里的死锁成因没讲清楚,三个事务都在insert,应该申请X锁,怎么就成了S锁?这里的“五、insert死锁场景分析”解释了:事务T1成功插入记录,并获得索引id=6上的排他锁。紧接着事务T2、T3也开始插入记录,申请排他锁,但由于唯一索引冲突,各自请求的排他锁转成共享锁。(但是为什么排他锁会转成共享锁?这是什么机制?)T1回滚释放索引id=6上的排他锁,T2和T3都要请求索引

2020-12-16 20:11:54 93 1

原创 《专题三分布式系统》之《第四章 数据存储层优化(上)-数据库优化》之 《第五节 详解数据库锁》

《4.5.1-MVCC多版本并发控制》InnoDB MVCC的实现基于Undo log?《4.5.2.1-数据库-行级锁》读锁与写锁行共享锁、 排他锁(X锁,写锁,独占锁)数据行被事务添加 S 锁后,其他事务可以添加 S 锁,但是不能添加 X 锁select… lock in share mode;insert into select …语句,对SELECT的表上扫描到的数据加LOCK_S锁X 锁允许持有锁的事务更新或删除行。例:update、delete、select … from up

2020-12-16 03:15:47 243

原创 《专题三分布式系统》之《第四章 数据存储层优化(上)-数据库优化》之 《第三节 SQL查询定位和优化》、《第四节 SQL查询技巧分析》

《4.3.1-慢SQL日志分析》0:40 慢查询日志的相关配置:

2020-12-14 22:35:32 79

原创 解决因用户权限而无法连接MySQL5.7/8.0

完全参考https://www.cnblogs.com/xujingyang/p/9479811.html的授权法:GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'MyNewPass4!' WITH GRANT OPTION;FLUSH PRIVILEGES;就可以使用该账号从任何主机连接到此mysql服务器

2020-12-14 16:10:26 430

原创 telnet linux某接口不通,通过开启防火墙的端口开放解决

症状:telnet 不到 192.168.1.114(包含了redis的虚拟机linux的ip) 的端口6379按照虚拟机能ping通,但是telnet某个端口却不行一文的思路,修改防火墙的规则:通过命令firewall-cmd --list-port查看防火墙下可以访问的端口,结果为空。通过命令firewall-cmd --zone=public --permanent --add-port=6379/tcp增加一个持久访问端口通过命令 firewall-cmd --reload重启防火墙此时启

2020-12-14 15:22:26 5143

原创 《专题三分布式系统》之《第四章 数据存储层优化(上)-数据库优化》之 第一、二节

《4.2.1-Mysql运行结构视频》9:50 各存储引擎:

2020-12-11 19:38:11 76

原创 一些linux命令和快捷键

在GNOME 里面,当拖动文件时,同时按下Ctrl+Shift 按键会创建一个链接,而不是复制(或移动)文件。

2020-12-10 23:56:22 91

原创 《专题三分布式系统》之《第三章 【拓展进阶】Redis》之 《第五节 Redis实战》

《3.5.1 实现定时消息通知》9 20 简单定时任务通知:利用redis的keyspace notifications开启办法:在配置文件中把notify-keyspace-events修改为 “Ex” (键过期事件)我的总结: 用Spring的@Scheduled(需要用@EnableScheduling修饰Springboot的主程序)周期性set带过期时间的键, 这里它相当于消息发布者。而实现了KeyExpirationEventMessageListener的类会在键过期时调用onMes

2020-12-10 21:10:10 115 2

原创 《专题三分布式系统》之《第三章 集中式缓存Redis》之 《第四节 Memcached》

《3.4.1 Memcached协议》Memcached相对于Redis的特点:没有redis的复杂数据结构;多线程(Redis6.0之后有多线程的io);CAS?《3.4.2 Memcached工作原理及优缺点》LIbevent库,IO多路复用Memcached vs Redis:比较项MemcachedRedis多线程单线程(6.0以前)高可靠官方支持主从,哨兵,集群等数据持久化更完备存储语义只支持String更丰富数据

2020-12-09 18:03:35 140

原创 《专题三分布式系统》之《第三章 集中式缓存Redis》之 《第三节 Redis底层原理分析》

《3.3.1 redis数据结构原理(1) – string,hash,list》19:35 用Redis实现分布式排他锁。https://redis.io/commands/set页的下部有详细说明《3.3.2 redis数据结构原理(2) – set,zset,stream》20:00 redis的zset的数据结构:跳表(skiplist)+hash。可参考blog.csdn.net/zjwendy/article/details/90173855做范围查找时,平衡树(如AVL,红黑树

2020-12-08 02:21:53 225

原创 在centos7上安装redis5.0.4

参考redis-5.0.5.tar.gz 安装:去http://download.redis.io/releases/,选择redis-5.0.4.tar.gz下载tar -zxvf redis-5.0.4.tar.gz ,解压会生成一个redis-5.0.4的目录 ,进入此目录安装GCC依赖: yum install gcc gcc-c++此时试图用make命令安装redis仍然出错:参考zmalloc.h:50:31: 致命错误:jemalloc/jemalloc.h:没有那个文件或目录解

2020-12-04 10:18:47 92

原创 VMware14安装CentOS7、使用阿里云的yum源、安装chrome

一开始花了快半天试图在centos6上弄,但在yum源这个阶段怎么都弄不好,最后在阿里云的centos6镜像的readme上看到说,centos6 is deprecated,不再推荐使用,也不再维护,终于放弃了,转而使用centos7。在centos7上也很费了一番周折,终于弄好了。也不明白装个chrome怎么这么费劲,最后还是sandbox的。记录整个步骤如下:VMware14安装CentOS7镜像源用的是阿里云提供的centos7-dvd版,步骤基本参考VMware14安装CentOS7超详细步

2020-12-04 08:38:27 378

原创 为VMware虚拟机上的centOS的配置无线/有线网络

主要参考VMware虚拟机上centOS的WIFI配置的前半部分。虚拟网络编辑器:上图的网卡参考的是本机无线网卡:将虚拟机的网络设置为桥接模式:我的到这里就可以上网了,且可以与本机ip互相ping通...

2020-12-03 16:21:10 437

原创 《专题三分布式系统》之《第三章 集中式缓存Redis》之 第一、二节

《第一节 导学引入课》Redis学习资料和工具:22:30 Redis的部署

2020-12-03 03:27:21 337

原创 《专题三分布式系统》之《第二章 【拓展进阶】Nginx》之 第六、八节

《2.6.1 lvs+keepalived+nginx+tomcat实现高性能负载均衡集群-1》《2.6.2 lvs+keepalived+nginx+tomcat实现高性能负载均衡集群-2》10 用lvs实现nginx高可用的集群lvs好像用的DR模式,DR模式可参考LVS-DR原理介绍和配置实践...

2020-12-01 22:17:49 93

原创 2019年CVTE凉

spring的特点mysql oracle区别redis,数据库不一致的情况redis的持久化策略登陆模块怎么实现,登陆到一台服务器,另外两台怎么知道了注册中心分布式?paxo算法?rcp一个报表的sql联表查询...

2020-12-01 02:09:05 115

Pro Git 第2版英文

Pro Git 第2版英文

2019-03-07

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除