![](https://img-blog.csdnimg.cn/70419b2b2a534c1f828f9c631f02d50f.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
中间件及源码
文章平均质量分 90
开发的各种中间件原理及源码分析
编程小栈
一名编程爱好者的学习记录!爱生活、爱交流、专注后台开发,希望把自己所学技术与大家分享。
展开
-
kafka消息队列
1. Kafka 概念Kafka 是一个分布式的基于发布/订阅模式的消息队列(Message Queue),主要应用于大数据实时处理领域。1.1 消息队列应用场景好处1)解耦允许你独立的扩展或修改两边的处理过程,只要确保它们遵守同样的接口约束。2)可恢复性系统的一部分组件失效时,不会影响到整个系统。消息队列降低了进程间的耦合度,所以即使一个处理消息的进程挂掉,加入队列中的消息仍然可以在系统恢复后被处理。3)缓冲有助于控制和优化数据流经过系统的速度,解决生产消息和消费消息的处理速度不一致原创 2022-04-20 10:49:43 · 4334 阅读 · 0 评论 -
apollo配置中心
文章目录1 概览1.1 什么是配置1.2 什么是配置中心2 Apollo简介2.1 主流配置中心2.1.1 功能特性对比2.1.2 总结2.2 Apollo简介2.3 Apollo特性3 Apollo快速入门3.1 执行流程3.2 安装Apollo3.2.1 运行时环境3.2.2 下载配置3.2.3 创建数据库3.2.4 启动Apollo3.3 代码实现3.3.1 发布配置3.3.2 应用读取配置3.3.3 热发布4 Apollo应用4.1 Apollo工作原理4.1.1 各模块职责4.1.2 分步执行流程原创 2022-04-20 10:39:50 · 3974 阅读 · 0 评论 -
shiro权限框架
文章目录Shiro架构与功能介绍1.认证与授权相关基本概念2.Shiro四大核心功能3.Shiro三个核心组件spring security和shiro的区别相同点:不同点:第一章 权限概述1、什么是权限2、认证概念【1】什么是认证【2】认证流程【3】关键对象3、授权概念【1】什么是授权【2】授权流程【3】关键对象第二章 Shiro概述1、Shiro简介【1】什么是Shiro?【2】Shiro 的特点2、核心组件第三章 Shiro入门1.1什么是shiro1.2shiro功能简介2.1外部来看Shiro2原创 2022-04-20 10:37:44 · 2297 阅读 · 0 评论 -
Java8函数式编程
Lambda 表达式函数式接口方法引用与构造器引用Stream API接口中的默认方法与静态方法新时间日期API其他新特性速度更快代码更少(增加了新的语法 Lambda 表达式)强大的 Stream API便于并行最大化减少空指针异常 Optional其中最为核心的为 Lambda 表达式与Stream API1、Lambda表达式1.1什么是Lambda表达式Lambda 是一个匿名函数,我们可以把 Lambda表达式理解为是一段可以传递的..原创 2022-04-20 10:34:50 · 806 阅读 · 0 评论 -
git的基本使用
git的使用方法总结以及常见错误运用git应该对GitHub有一定发了解,就不介绍了。如果有不了解的盆友们可以参考:https://github.com/AnHuiCFL/PythonRepository/tree/master一、使用git上传文件的方式0、上传文件开始你需要运行命令来配置你的用户名和邮箱:代码:$ git config --global user.name "你的Github名"$ git config --global user.email "xxxxxx@163.原创 2020-10-31 00:38:26 · 217 阅读 · 0 评论 -
elasticsearch分布式搜索引擎详细使用总结
文章目录一、初识elasticsearch1.1.ES了解1.1.1.elasticsearch的作用1.1.2.ELK技术栈1.1.3.elasticsearch和lucene1.1.4.为什么不是其他搜索技术?1.1.5.总结1.2.倒排索引1.2.1.正向索引1.2.2.倒排索引1.2.3.正向和倒排1.3.ES中的概念1.3.1.文档和字段1.3.2.索引和映射1.3.3.mysql与elasticsearch1.4.安装es、kibana1.4.1部署单点es1.1.创建网络1.2.加载镜像1.3原创 2021-07-25 15:38:37 · 2011 阅读 · 2 评论 -
RabbitMQ消息中间件快速入门
文章目录一、同步和异步通讯1. 同步通讯2. 异步通讯二、RabbitMQ1. MessageQueue对比2. RabbitMQ快速入门【1】安装与启动【2】基本结构3. 五种消息模型介绍【1】入门案例1)publisher实现2)consumer实现4. SpringAMQP实现【1】Basic Queue 基本消息队列1)消息发送2)消息接收3)测试【2】WorkQueue工作消息队列1)消息发送2)消息接收3)测试4)prefetch提前获取【3】发布订阅三种模式1)Fanout[1] 声明队列和交原创 2021-07-19 16:08:26 · 2263 阅读 · 1 评论 -
Sentinel分布式服务架构高可用流量防护组件之微服务保护
文章目录一、微服务的问题引入1. 雪崩问题2. 解决方案【1】超时处理【2】仓壁模式image-20210719093325250【3】熔断器【4】流量控制3. 服务保护技术二、Sentinel流量控制1. Sentinel介绍2. Sentinel安装3. Jmeter测试【1】安装与启动【2】基本使用三、微服务整合Sentinel1. 流量控制【1】什么是簇点链路【2】流控模式1)直接模式2)关联模式3)链路模式[1] 添加查询商品方法[2] 查询订单时,查询商品[3] 新增订单,查询商品[4]@Sen原创 2021-07-19 16:04:46 · 917 阅读 · 1 评论 -
dubbo远程调用(rpc)-->快速入门+管理控制台+整合Springboot开发
文章目录一、Apache Dubbo概述1. Dubbo简介2. Dubbo架构二、 Dubbo快速入门1. 点对点直连【1】服务提供者-service项目【2】服务消费者-web项目2. zookeeper注册中心【1】服务提供者【2】服务消费者三、 Dubbo管理控制台1. jar包部署管理平台2. war包部署管理平台四、Dubbo开发SpringBoot1. Dubbo文档查询2. 架构模型3. 代码实现五、 Dubbo配置及注册中心1. 配置2. 注册中心【1】zookeeper【2】redis【原创 2021-06-23 15:12:18 · 419 阅读 · 1 评论 -
rocketMQ安装配置+与java交互API操作+集群搭建+高级特性
文章目录一、RocketMQ1. MQ概述MQ全称 Message Queue(消息队列)MQ消息队列, 存储消息的中间件MQ 的作用MQ的缺点常见产品2. RocketMQ简介3. RocketMQ安装与启动安装启动命名服务器启动Broker测试关闭服务二、API应用1. 单生产者单消费者生产者端消费者端2. 单生产者多消费者生产者消费者负载均衡广播模式3. 多生产者多消费者生产者消费者4. 生产者三种类型发送生产者5. 延时消息生产者消费者6. 批量消息生产者消费者7. 消息过滤【1】tag过滤生产者原创 2021-06-23 14:36:47 · 808 阅读 · 0 评论 -
软件架构演变+zookeeper--->安装配置+数据模型+常用命令+与java交互
一、软件架构演进软件架构的发展经历了由单体架构、垂直架构、SOA架构到微服务架构的演进过程,下面我们分别了解一下这几个架构。可参考:阿里淘宝的 14 次架构演进之路软件架构演进概览:1. 单体架构特点:all in one① 所有功能集中在一个项目中② 所有功能都要打成war包部署到服务器③ 通过集群(session共享集群,如使用redis缓存存储session数据)来提高服务器的性能优点:①.项目架构简单,前期开发的成本低,周期短,小型企业首选.缺点:①全部的功能都集中在一个原创 2021-06-23 14:32:31 · 830 阅读 · 0 评论 -
docker安装+配置镜像+命令操作+数据卷+网络管理+DockerFile+镜像服务+项目部署+[高级使用]
文章目录Docker基础一、Docker介绍1. 什么是虚拟化2. 什么是Docker3. 容器与虚拟机比较4. Docker优势5. Docker架构【1】镜像服务(`Image`)【2】容器(`Container`)【3】镜像仓库(`Docker Registry`)6. 直击Docker的作用二、Docker安装与配置1. 卸载旧版docker2. 安装docker依赖3. 安装docker4. 启动docker服务5. 配置镜像加速三、Docker相关命令1. 镜像操作2. 容器操作3. 其他操作创原创 2021-06-23 14:20:26 · 1561 阅读 · 0 评论 -
超详细的Linux安装及配置【fastDFS+nginx】处理海量图片传输与存储【报错解决】
一、FastDFS安装安装包网盘链接提取码:pg0a1、安装fastdfs依赖包1. 解压缩libfastcommon-master.zip2. 进入到libfastcommon-master的目录中3. 执行 ./make.sh4. 执行 sudo ./make.sh install2、 安装fastdfs1. 解压缩fastdfs-master.zip2. 进入到 fastdfs-master目录中3. 执行 ./make.sh4. 执行 sudo ./make.sh inst原创 2021-01-25 20:55:30 · 502 阅读 · 0 评论 -
超详细的Linux安装及配置fastDFS+nginx处理海量图片传输与存储
一、FastDFS安装1 安装fastdfs依赖包解压缩libfastcommon-master.zip进入到libfastcommon-master的目录中执行 ./make.sh执行 sudo ./make.sh install2 安装fastdfs解压缩fastdfs-master.zip进入到 fastdfs-master目录中执行 ./make.sh执行 sudo ./make.sh install3 配置跟踪服务器trackersudo cp /原创 2021-01-12 18:05:32 · 376 阅读 · 0 评论