![](https://img-blog.csdnimg.cn/20190829090153942.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Java中间件
文章平均质量分 89
内容参照《大型网站系统与JAVA中间件实践》,主要讲述Java中间件开发
姜皓
胸藏文墨怀若谷 腹有诗书气自华
展开
-
Redis6(01) -- NoSQL数据库简介
Redis6(01) -- NoSQL数据库简介原创 2022-04-15 22:31:27 · 126 阅读 · 0 评论 -
Java 源码剖析(22)--Redis 如何实现高可用
Redis 如何实现高可用1)实现高可用的方式1.1)数据持久化1.2)Redis 主从同步1.3)Redis 哨兵模式1.4)Redis 集群2)小结1)实现高可用的方式Redis 高可用的手段主要有以下四种:数据持久化主从数据同步(主从复制)Redis 哨兵模式(Sentinel)Redis 集群(Cluster)其中数据持久化保证了系统在发生宕机或者重启之后数据不会丢失,增加了系统的可靠性和减少了系统不可用的时间(省去了手动恢复数据的过程);而主从数据同步可以将数据存储至多台服务器原创 2020-08-24 11:33:56 · 154 阅读 · 0 评论 -
Java 源码剖析(21)--Redis 如何实现消息队列
Redis 如何实现消息队列1)实现消息队列的方式2)使用 List 实现消息队列3)使用 Stream 实现消息队列1)实现消息队列的方式在 Redis 中实现消息队列的方式有几种?早在 Redis 2.0 版本之前使用 Redis 实现消息队列的方式有两种:使用 List 类型实现使用 ZSet 类型实现其中使用List 类型实现的方式最为简单和直接,它主要是通过 lpush、rpop 存入和读取实现消息队列的,如下图所示:lpush 可以把最新的消息存储到消息队列(List 集合)原创 2020-08-19 14:46:48 · 396 阅读 · 0 评论 -
Java 源码剖析(20)--Redis 怎样实现分布式锁
Redis 怎样实现的分布式锁1) 分布式锁1.1) 分布式锁的常见实现方式:2)单机锁3)使用 Redis 实现分布式锁4)锁超时如果在分布式环境下使用就会出现锁不生效的问题,需要使用分布式锁来解决。1) 分布式锁分布式锁是控制分布式系统之间同步访问共享资源的一种方式,是为了解决分布式系统中,不同的系统或是同一个系统的不同主机共享同一个资源的问题,它通常会采用互斥来保证程序的一致性,这就是分布式锁的用途以及执行原理。分布式锁示意图如下图所示:1.1) 分布式锁的常见实现方式:基于 MySQL原创 2020-08-19 11:29:53 · 154 阅读 · 0 评论 -
Java 源码剖析(19)--简述 Redis 过期策略和内存淘汰机制
简述 Redis 过期策略和内存淘汰机制1) 惰性删除和定期删除2) Redis 内存淘汰策略3) Redis 内存淘汰算法1) 惰性删除和定期删除我们在新增 Redis 缓存时可以设置缓存的过期时间,该时间保证了数据在规定的时间内失效,可以借助这个特性来实现很多功能。比如,存储一定天数的用户(登录)会话信息,这样在一定范围内用户不用重复登录了,但为了安全性,需要在一定时间之后重新验证用户的信息。因此,我们可以使用 Redis 设置过期时间来存储用户的会话信息。对于已经过期的数据,Redis 将使用两原创 2020-07-23 19:48:07 · 303 阅读 · 0 评论 -
Java 源码剖析(15)--MQ 的作用及特点
MQ 的作用及特点1) MQ 的作用1.1) 使用 MQ 实现消息通讯1.2) 使用 MQ 实现日志系统2) MQ 的特点及注意事项2.1)MQ 的特点2.2)引入 MQ 系统会带来的问题3) 常用的 MQ 中间件3.1)Redis 轻量级的消息中间件3.2)RabbitMQ3.3)Kafka3.4)Kafka VS RabbitMQ1) MQ 的作用MQ 可以用来实现削峰填谷,也就是使用它可以解决短时间内爆发式的请求任务,在不使用 MQ 的情况下会导致服务处理不过来,出现应用程序假死的情况,而使用了原创 2020-07-20 21:00:25 · 886 阅读 · 0 评论 -
JavaWeb学习(07)--HTTP&Request学习笔记
HTTP&Request学习笔记1)HTTP 概念2)Request [请求消息]数据格式请求行请求头请求空行请求体(正文)3)Request [请求消息] 原理4)Request [请求消息] 体系结构1)HTTP 概念概念:Hyper Text Transfer Protocol 超文本传输协议*传输协议:定义了,客户端和服务器端通信时,发送数据的格式特点:1. 基于TC...原创 2020-05-04 17:57:16 · 252 阅读 · 0 评论 -
JavaWeb学习(06)--Servlet学习笔记
Servlet学习笔记1)Servlet 概念2)Servlet 快速入门3)Servlet 执行原理4)Servlet 执行原理5)Servlet3.0 注解配置6)Servlet的体系结构7)Servlet的相关配置1)Servlet 概念概念:运行在服务器端的小程序Servlet就是一个接口,定义了Java类被浏览器访问到(tomcat识别)的规则;将来我们自定义一个类,实现Ser...原创 2020-05-04 16:30:25 · 231 阅读 · 0 评论 -
JavaWeb学习(05)--Tomcat学习笔记
Tomcat&Servlet学习笔记1)web相关概念回顾2)web服务器软件:3) Servlet: server applet4) IDEA与tomcat的相关配置1)web相关概念回顾1. 软件架构 1. C/S:客户端/服务器端 2. B/S:浏览器/服务器端2. 资源分类 1. 静态资源:所有用户访问后,得到的结果都是一样的,称为静态资源.静态资源可以直接被浏览器...原创 2020-05-04 14:12:17 · 246 阅读 · 0 评论 -
Docker备份迁移
Docker备份迁移6.1 容器保存为镜像可以通过以下命令将容器保存为镜像docker commit 容器名称 myredis此镜像的内容就是当前容器的内容,接下来可以用此镜像再次运行新的容器例:docker commit me_redis myredis6.2 镜像备份将镜像导成文件:docker save -o 输出的文件 镜像名例:docker save -o ...原创 2019-11-28 18:44:56 · 206 阅读 · 0 评论 -
Docker 应用部署
应用部署5.1 MySQL部署5.1.1 拉取MySQL镜像拉取命令:docker pull mysql查看命令:docker images5.1.2 创建MySQL容器查看容器:docker ps -a新建容器:docker run -di --name=me_mysql -p 33306:3306 -e MYSQL_ROOT_PASSWORD=123456 my...原创 2019-11-28 18:43:19 · 256 阅读 · 0 评论 -
Docker容器操作
Docker容器操作4.1 查看容器查看正在运行容器:docker ps查看所有的容器(启动过的历史容器):docker ps -a查看最后一次运行的容器:docker ps -l查看停止的容器:docker ps -f status=exited例:4.2 创建与启动容器4.2.1交互式容器定义:创建后就可以直接进入该容器,退出后该容器会自动关...原创 2019-11-28 18:37:51 · 410 阅读 · 0 评论 -
Docker镜像操作
Docker镜像操作3.1 Docker镜像定义Docker镜像是由文件系统叠加而成(是一种文件的存储形式),最底端是一个文件引导系统,即bootfs,这很像典型的Linux/Unix的引导文件系统。Docker用户几乎永远不会和引导系统有什么交互。实际上,当一个容器启动后,它将会被移动到内存中,而引导文件系统则会被卸载,以留出更多的内存供磁盘镜像使用。Docker容器启动是需要的一些文件,而...原创 2019-11-28 18:31:24 · 256 阅读 · 0 评论 -
Docker安装与启动
Docker安装与启动2.1 安装环境说明将Docker安装到CentOS上。注意:这里建议安装在CentOS7.x以上的版本,在CentOS6.x的版本中,安装前需要安装其他很多的环境而且Docker很多补丁不支持更新。【这里使用的服务器为CentOS7.6】2.2 安装Docker使用yum命令在线安装:yum install docker2.3 查看Docker版本doc...原创 2019-11-28 18:26:52 · 188 阅读 · 0 评论 -
Docker简介
1.Docker简介1.1 虚拟化1.1.1 什么是虚拟化在计算机中,虚拟化(英语:Virtualization)是一种资源管理技术,是将计算机的各种实体资源,如服务器、网络、内存及存储等,予以抽象、转换后呈现出来,打破实体结构间的不可切割的障碍,使用户可以比原本的组态更好的方式来应用这些资源。这些资源的新虚拟部份是不受现有资源的架设方式,地域或物理组态所限制。一般所指的虚拟化资源包括计算...原创 2019-11-28 18:22:11 · 216 阅读 · 0 评论 -
1.3分布式系统介绍--将应用从单机扩展到分布式
将应用从单机扩展到分布式计算机一共由5部分组成,探究从单机变化到分布式时,构成计算机的这5个要素的变化。一、输入设备的变化分布式系统由通过网络连接的多个节点组成,那么,输入设备其实可以分为两类:1、互相连接的多个节点,在接收其他节点传来的信息时,该节点可以看做是输入设备;2、传统意义的人机交互的输入设备了。二、输出设备的变化输出设备和输入设备相仿, 也可以看做有两种...原创 2019-08-28 21:04:07 · 977 阅读 · 0 评论 -
1.2 分布式系统介绍--网络通信基础知识
网络通信基础知识在分布式系统中, 组件分布在网络上的多个节点中, 通过消息的传递来通信并且进行动作的协调。因此网络通信在分布式系统中非常重要。一、OSI与TCP/IP网络模型【OSI网络模型】【OSI与TCP/IP模型对照】二、网络IO实现方式当我们使用Socket套接字进行网络通信开发时,有以下三种方式:BIO、NIO和AIO。1.BIO方式BIO即Blo...原创 2019-08-28 20:53:26 · 423 阅读 · 0 评论 -
1.1 分布式系统介绍--初识分布式系统
初识分布式系统一、分布式系统的定义分布式系统重点:1、组件分布在网络计算机上;2、组件之间仅仅通过消息传递来通信并协调行动。[分布式系统的示意图]用户面对的是一个服务器,提供用户需要的服务,而实际上是靠背后的众多服务器组成的一个分布式系统来提供服务。分布式系统看起来就像一个超级计算机一样。分布式系统的定义:首先分布式系统一定是由多个节点组成的系统,一般来说一个节点就...原创 2019-08-28 20:21:27 · 299 阅读 · 0 评论