中间件
文章平均质量分 76
中间件是介于应用系统和系统软件之间的一类软件,它使用系统软件所提供的基础服务(功能),衔接网络上应用系统的各个部分或不同的应用,能够达到资源共享、功能共享的目的。
Monster_起飞
代码路上的小学生,主要涉及有Java、OutSystems、分布式、微服务、低代码等,热爱技术,乐于分享,一起成长,遇见未知的自己
展开
-
Git rebase超详细解读
1. Git Rebase的介绍我们都知道,git rebase可以实现git节点或者分支的合并,但是,真正涉及到为什么要使用git rebase,它的好处又是什么等一些比较实际的问题,很多同学就搞不清楚了,本文聚焦于git rebase,着重讨论该命令的两种妙用,来帮助大家直观的理解这条命令。写在前面:如果你的分支不只有你在进行开发,那么git-rebase可能会导致提交记录的丢失,但是如果你是在自己的分支上进行开发,那么这无疑是一个很棒的选择。2. Git Rebase作用一:合并本地的多条提交(原创 2022-05-31 14:38:24 · 3345 阅读 · 2 评论 -
ElasticSearch排序引起的all shards failed异常
前言注:ElasticSearch版本为5.4。在我们的日志系统里需要一些系统索引,这些系统索引在应用初始化的时候就会被添加到ElasticSearch中去,这些在ElasticSearch中的系统索引在没有索引数据的时候,只有索引名和一些配置信息,没有mapping信息。当用户去根据时间区间排序搜索日志信息的时候,ElasticSearch就会产生all shards failed异常。具体异常信息如下:Caused by: [.alert/NXa3zq5WSb-wGBKgyZibzw] Que原创 2022-01-14 17:34:00 · 1485 阅读 · 1 评论 -
对 Websocket 完全不懂,但又想搞个聊天室,行吗?
Websocket 的客户端并没有什么技术难点,就是浏览器 API 调用。只要你把通信机制够清楚,这玩意就没有不会,因为非常简单,我们直接选择纯手写就可以了,如果你想使用 Websocket-Node 客户端,确实还会更简单。回忆以下上一篇内容:《有了 HTTP 协议,为什么还需要 Websocket?》,了解一下 Websocket 的特点和通信原理,我们接着来看 Websocket 服务端与客户端实现。Websocket 服务端与客户端实现经过前面对通信过程的梳理,我们将 WebSocket 通原创 2021-10-18 10:40:40 · 2736 阅读 · 11 评论 -
有了 HTTP 协议,为什么还需要 Websocket?
WebSocket 是一种基于 TCP 连接上进行全双工通信的协议,相对于 HTTP 这种非持久的协议来说,WebSocket 是一个持久化网络通信的协议。WebSocket 是一种基于 TCP 连接上进行全双工通信的协议,相对于 HTTP 这种非持久的协议来说,WebSocket 是一个持久化网络通信的协议。它不仅可以实现客户端请求服务器,同时可以允许服务端主动向客户端推送数据。在 WebSocket API 中,客户端和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传原创 2021-10-18 10:35:17 · 3970 阅读 · 6 评论 -
合并冲突、解决冲突
合并冲突在一个新分支上开发时,修改了一个文件内容,比如:$ git checkout -b featureSwitched to a new branch ‘feature’修改文件readme.txt最后一行,改为Creating a new branch is quick AND simple.然后在feature分支上提交$ git add readme.txt$ git commit -m “AND simple”[feature 65f1845] AND simple1 fil原创 2021-04-16 10:46:57 · 3934 阅读 · 5 评论 -
centos 利用yum更新git
#安装源yum install http://opensource.wandisco.com/centos/7/git/x86_64/wandisco-git-release-7-2.noarch.rpm#安装gityum install git#更新gityum update git原创 2021-09-24 14:55:39 · 746 阅读 · 0 评论 -
git拉取代码报错:No tracked branch configured for branch master or the branch doesn‘t exist.
No tracked branch configured for branch master or the branch doesn’t exist.错误:解决办法:按照提示在项目目录文件夹下输入git branch --set-upstream-to origin即可;还不行的话输入 git branch --set-upstream-to origin/master...原创 2021-09-28 10:55:26 · 9930 阅读 · 5 评论 -
SpringBoot整合OSS对象存储
阿里云存储OSS介绍参考文档准备工作安装前提条件安装SDK初始化新建OSSClient实现配置数据配置文件(公共配置)实现类(工具类)介绍对象存储服务(Object Storage Service,OSS)是一种海量、安全、低成本、高可靠的云存储服务,适合存放任意类型的文件。容量和处理能力弹性扩展,多种存储类型供选择,全面优化存储成本。参考文档阿里云官方API文档准备工作首先登录阿里云账号到控制台里选择对象存储OSS,开通oss,注意此服务会根据流量收取费用安装进行OSS各类操作前,您需原创 2021-06-05 16:09:09 · 3018 阅读 · 3 评论 -
Spring Boot 整合 NoSQL(一)
Spring Boot 整合 Redis1. Reids 简介2. Redis 安装3. 整合 Spring Boot3.1 创建 Spring Boot 项目3.2 配置 Redis3.3 使用RedisTemplate操作Redis4. 小结1. Reids 简介Redis是一个使用C编写的基于内存的NoSQL数据库,它是目前最流行的键值对存储数据库。Redis是由一个Key、Value映射的字典构成,与其他NoSQL不同,Redis中Value的类型不局限于字符串,还支持列表、集合、有序集合、散列原创 2020-09-08 17:40:49 · 590 阅读 · 3 评论 -
使用Redisson实现分布式锁
Redisson 实现分布式锁原理分析在了解分布式锁具体实现方案之前,我们应该先思考一下使用分布式锁必须要考虑的一些问题。互斥性:在任意时刻,只能有一个进程持有锁。防死锁:即使有一个进程在持有锁的期间崩溃而未能主动释放锁,要有其他方式去释放锁从而保证其他进程能获取到锁。加锁和解锁的必须是同一个进程。锁的续期问题。常见的分布式锁实现方案基于 Redis 实现分布式锁基于 Zookeeper 实现分布式锁本文采用第一种方案,也就是基于 Redis 的分布式锁实现方案。Redis 实现原创 2021-09-10 10:36:36 · 724 阅读 · 5 评论 -
基于Redis的分布式锁实现,赶紧收藏!
前言本篇文章主要介绍基于Redis的分布式锁实现到底是怎么一回事,其中参考了许多大佬写的文章,算是对分布式锁做一个总结分布式锁概览在多线程的环境下,为了保证一个代码块在同一时间只能由一个线程访问,Java中我们一般可以使用synchronized语法和ReetrantLock去保证,这实际上是本地锁的方式。但是现在公司都是流行分布式架构,在分布式环境下,如何保证不同节点的线程同步执行呢?实际上,对于分布式场景,我们可以使用分布式锁,它是控制分布式系统之间互斥访问共享资源的一种方式。比如说在一个原创 2021-09-28 15:07:35 · 554 阅读 · 2 评论 -
Spring Boot安全管理
Spring Boot整合Shiro1. Shiro 简介2. 整合Shiro2.1 创建项目2.2 Shiro 基本配置2.3 测试1. Shiro 简介Apache Shiro 是一个开源的轻量级的Java安全框架,它提供身份验证、授权、密码管理以及会话管理等功能。相对于Spring Security,Shiro框架更加直观、易用,同时也能提供健壮的安全性。在传统的SSM框架中,手动整合Shiro的配置步骤还是比较多的,针对Spring Boot,Shiro官方提供了 shiro-spring-bo原创 2020-09-04 13:55:00 · 412 阅读 · 5 评论