- 博客(63)
- 资源 (7)
- 收藏
- 关注
原创 抽丝剥茧 分布式服务框架设计 实战落地篇
我们完成了 cheese 的设计和开发,Jerry 通过它找到了想要吃的奶酪,但是你肯定会存在一些疑问。比如 Cheese 每次都会先去Zookeeper 查一下Tom的位置在进行调用,这样Tom和Jerry 之间的沟通效率会很低,并且如果多个服务这么玩 zookeeper 就会有很大访问压力。关于这些问题后面我们会进行一步一步的优化。cheese 是一个粗糙的开始,也是一个最好的开始,我们后面一起加油。
2024-10-31 11:53:39 811
原创 抽丝剥茧 分布式服务框架设计 理论设计篇
Cheese 是本篇文章的主角,关于她的雏形和项目架构相信大家已经有了很清晰的认知了,目前的设计虽然十分简陋,但我们的目标是先把Cheese生产出来,然后用起来,后续我们在使用的过程中发现了问题 在逐步的解决,让Cheese 持续的演进。
2024-10-31 09:38:56 1102
原创 Zookeeper客户端工具 Apache Curator 最佳实践
本篇文章给大家详细的介绍了Curator 这个Zookeeper的客户端工具,从API的使用,到Watch机制的实现方案,都给出了相应的代码,最后带着大家实现了一个分布式队列的案例,希望对大家有所帮助,有疑问的小伙伴欢迎留下自己的问题,或者在公众号留言均可。
2024-10-25 19:25:01 866
原创 Zookeeper实战 集群环境部署
本篇文章主要给家介绍Zookeeper集群环境的搭建以及相关的异常情况产生的效果,大家可以根据本文中提供的命令进行实操。最后还闲聊了一下Zookeeper强一致性的特性,建议大家可以去官方文档上查阅相关的内容,相信一定会有不同 的收获。
2024-10-25 18:09:02 1042
原创 Zookeeper 快速入门到实战
Zookeeper 的 Watch 机制主要是用于监控节点状态变化的机制。简而言之就是它允许客户端在zookeeper上注册某个节点的事件监听器,当该节点发生了变更的时候Zookeeper会通知到该客户端。这个功能就很厉害了,我们先来做一个小案例,体会下这个过程,之后那你就能很快的理解这个机制的工作原理了。
2024-10-20 13:45:04 1280
原创 消息中间件 Kafka 快速入门与实战
最近感觉上班实在是太无聊,打算给大家分享一下Kafka的使用,本篇文章首先给大家分享三种方式搭建Kafka环境,接着给大家介绍kafka核心的基础概念以及Java API的使用,最后分享一个SpringBoot的集成案例,希望对大家有所帮助。
2024-09-28 10:50:23 1255
原创 Apache POI Excel 处理最佳实践
问题的背景是在需求设计的时候 ,我们在业务专家的配合下设计了一些表,但是为了方便的和他们讨论我们把表结构的描述通过Excel文件的方式记录了下来,然后我们需要根据excel文件中的内容生成对应的DDL。今天就给大家分享一下我们的解决方案
2024-06-30 13:43:42 993
原创 CentOS 环境下 PostgreSQL 在线安装和源码安装详解
昨天给大家简单的介绍了一下 PostgreSQL,并且在Windows系统上通过图形化界面的方式搭建好了环境,今天我们就来学习一下如何在Linux 系统上搭建 PostgreSQL环境,我会给大家介绍在线安装、离线源码安装以及Docker 安装三种方式。
2024-06-06 13:06:19 1411
原创 Windows 下 PostgreSQL 图形化界面安装、配置详解
这里给大家解释一下这几个组件,首先 PostgreSQL Server 相信大家都知道,这个就是数据库的服务端程序,所以我们肯定要安装,后续的数据都是通过这个组件组织存放的。接着是pgAdmin4 这个组件,顾名思义它是PG的 一个图形化界面管理工具,可以链接PG的服务端,也就类似navicat那种,至于Stack Builder 组件是用来下载额外需要的扩展包的。好了,关于PG 在Windows 下的环境搭建 就先到这里了,后面给大家继续介绍在Linux环境上搭建PG服务,以及PG的一些基本的用法。
2024-06-01 10:45:47 2503 3
原创 SpringBoot2 极简开发 -- 核心配置详解
昨天给大家介绍了SpringBoot官方文档的入门案例,相信大家现在已经可以使用SpringBoot开发一些简单的小demo了,那么今天我们就来学习一下SpringBoot的一些常用的配置,首先我们先来创建一个项目,项目结构如下: 关于这几个目录先给大家介绍下 ,首先大家肯定知道我们编写的代码都是在src/main/java路径下,test包下是存放测试的代码,那么毫无疑问resources目录下 存放的肯定就是项目需要用到的一些配置文件,我们发现其中有一个appl...
2021-04-07 21:50:26 478 1
原创 SpringBoot2 极简开发 -- 官方文档解读
这几天学习(上班摸鱼)的时候突然发现官网上SpringBoot 已经更新到了2.4.2的版本了。好吧,很久都没碰Spring家族的东西了,新入职的这家公司自己的技术栈严重的滞后,今天就抽空回忆一下SpringBoot的基本使用 。 首先按照惯例我们打开官网(spring.io)。我们发现截止到目前最新的稳定版是SpringBoot2.4.2。如下图所示:我们可以发现 最新的GA版本就是2.4.2 ,所以我们今天使用的版本也是2.4.2。首先我们打开文档https://docs.spr...
2021-01-30 15:49:46 1078 3
原创 深入学习消息中间件 -- RabbitMQ高级应用
前面给大家讲解了RabbitMQ的环境搭建以及工作模式和一些基本的用法,今天就来给大家讨论一下RabbitMQ的高级用法。在讨论之前先给大家讲解一下SpringBoot整合RabbitMQ,后面的示例代码我们也使用SpringBoot了,不再使用main方法来演示了。 首先创建一个空的项目,在空的项目中创建模块。如下图所示:创建完成之后我们首先创建一个module ,如下图所示:然后填写项目名以及左边等信息,首先我们创建消息生产者,创建完成之后项目结构如下: ...
2020-09-13 23:44:36 339
原创 深入学习消息中间件 -- RabbitMQ工作模式详解以及使用场景简介
在之前的博客中给大家介绍了CentOS7环境下搭建RabbitMQ,今天就来和大家详细的讨论一下RabbitMQ的几种工作模式。 首先我们来看最简单一个入门案例,打开idea,新建一个工程,项目结构如下所示:pom文件中加入AMPQ的客户端: <dependency> <groupId>com.rabbitmq</groupId> <artifactId>amqp-cl...
2020-09-12 19:49:52 246
原创 Elastic Stack核心技术实战02--Elasticsearch中的Domain Specific Language详解
上一篇博客中给大家介绍了Elasticsearch单机版的环境搭建以及简单的增删改查,今天我们就来学习一下Elasticsearch的Domain Specific Language,也就是我们常说的DSL查询。在es中以JSON的格式出现。 在此之前先给大家介绍一下分词器,首先...
2020-08-01 21:23:39 472
原创 Elastic Stack核心技术实战03--Elasticsearch中的JavaAPI详解
@RunWith(SpringRunner.class)@SpringBootTestpublic class GmallSearchServiceApplicationTests { @Reference SkuService skuService;// 查询mysql @Autowired JestClient jestClient; @Test public void contextLoads() throws IOException {.
2020-07-28 08:21:38 292
原创 Elastic Stack核心技术实战01--Elasticsearch环境搭建与基础入门
相信大家对于ELK并不陌生吧,大家在工作中一定都接触过Elasticsearch这个搜索引擎,ELK技术栈就是Elasticsearch和Logstash以及Kibana三个组件共同组成的,但是随着后来又有新组件Beats的加入,于是就形成了Elastic Stack。因此作为一个优秀的程序开发者,我们现在在和别人条田的时候不应该再说ELK了(过时了),而是称之为Elastic Stack。关于两者的区别,如下图所示: 好了,今天就给大家介绍一下第一个组件Elast...
2020-07-27 00:07:48 243
原创 深入学习消息中间件 -- CentOS7下RabbitMQ环境搭建以及工作机制简介
前几天给大家介绍了一下Redis的基本使用以及主从复制的集群搭建,今天来给大家介绍 一下RabbitMQ的基本使用,首先我们来搭建环境,本次教程是在CentsOS7下搭建,首先准备好虚拟机 打开虚拟机,我们知道RabbitMQ是使用Erlang语言开发的,因此我们在使用RabbitMQ之前必须要安装一个Erlang的环境,这就类似于我们想要运行Java应用,就必须要安装一个Java的运行环境是一样的。首先准备好安装包,如下图所示:这里我使用的是RabbitMQ的版本是3.7...
2020-06-01 09:43:17 281
原创 Redis主从复制集群部署
昨天给大家介绍了以下Redis的一些基础知识、常用的数据类型以及数据持久化的两种方式。同时对于Redis中的事务也做了一个简单的介绍,相信大家对Redis已经有了一个全面的认识。今天我们就来学习一下Redis的集群部署。 首先我们先来准备好虚拟机,这里使用的CentOS7环境。下面来看具体的操作。首先我们准备号配置文件。这里先来说明一下...
2020-05-27 20:09:51 281
原创 Redis环境搭建以及基础入门
今天我们来学习一下Redis相关的内容,相信作为一名优秀的程序员,我们对Redis肯定不陌生,所以就不多废话了,我们直接来开干,首先准备一台虚拟机,这里我是用的是CentOS7的环境,准备好了之后我们准备好安装包,并上传至虚拟机我们都知道,redis是使用C语言编写的,因此我们在安装之前需要检查一下gcc的编译环境,如果没有的话,就需要使用yum install -y gcc-c++ 命令进行安装 好了,安装完成之后我们解压redis的包,进入解压目录,修改一下src...
2020-05-26 20:52:35 324
原创 Web全栈工程师修炼之路 -- Tomcat架构解析以及源码构建
作为一个优秀的程序开发者,我们不仅需要对自己编写的程序有深刻的理解和认识,同样的我们还需要对我们编写的程序的运行环境有一个彻底的认识,这样我们在能在这条路上走的更远。相信大家对tomcat都很熟悉,目前也是大陆使用的较多的一种开源的Web容器。对于Tomcat的基本使用这里不做过多的介绍。具体的下载和使用可以查看我在2018年写的https://blog.csdn.net/qq_38701478/article/details/85003063这篇文章。 好了今天我们进入主题,我们首...
2020-05-25 20:55:59 605
原创 开启DevOps之旅--Docker入门与实践
前几年一直流传这一句话,虚拟机已死,容器才是未来! 这句话听起来似乎不可思议,很显然有的事容器并不能取代虚拟机,但是从这句话可以看得出来,某些领域容器技术已经逐渐的成为主流了,尤其是微服务架构已经成为一种潮流的今天,我们作为技术人员也应该努力的追上技术的发展。关于虚拟机和容器的相关概念大家可以自己去查询相关的资料(自己太菜了,怕把你们带偏)。 看到标题大家可能会对DevOps这个名词很好奇,这里给出百度百科的解释。 看起来很不错吧,不过这里先不对De...
2020-05-25 19:14:35 436
原创 CentOS7环境下Mysql5.7的用户远程登录配置(用户与权限管理)
昨天给大家介绍了怎么在Linux 环境下安装Mysql5.7,今天给大家介绍一下Mysql5.7d的用户与权限管理,首先我们先来登录到mysql中,并且先来创建一个数据库,接着我们创建一张数据表,好了,我们先来看看能不能往里面插入数据,我们发现可以正常的数读写数据,接下来我们来试试中文,我们发现中文依然是可以的,这里需要说明一下,如果你在插入中文报...
2020-05-17 12:17:19 681
原创 CentOS7下搭建MySql5.7环境
上次教大家在Windows上安装了一次mysql5.5的教程,今天就给大家介绍一下如何在Linux环境下搭建MySql的环境,首先我们准备好一台虚拟机,由于之前安装了5.5的版本,因此我先卸载掉之前的版本接着我们将官网上下载的安装包上传到linux环境中。关于MySql的下载大家可以自行去官网下载, 这里给出官网地址(https://dev.mysql.com/downloads/)...
2020-04-23 15:26:58 302
原创 解决异常org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type XXXX
今天在撸码的时候碰到了一个小小的问题,具体的异常信息如下Description:Field pmsBaseCatalog1Mapper in com.wcan.gmall.manager.service.CatalogServiceImpl required a bean of type 'com.wcan.gmall.manager.mapper.PmsBaseCatalo...
2020-04-19 18:45:06 1392
原创 解决Idea下创建Maven项目出现Cannot resolve plugin org.apache.maven.plugins:maven-surefire-plugin:2.18.1异常
今天自己在撸码的时候发现了一个很迷的问题,更新了一下maven项目,突然出现了某个插件异常,控制台提示信息Cannot resolve plugin org.apache.maven.plugins:maven-surefire-plugin:2.18.1如下图所示:从上面的信息我们知道是maven的一个插件没找到,导致更新项目的时候发生错误,好了,按照一贯的思路,我们先在本地仓库找到...
2020-04-17 21:34:34 16499 4
原创 探索Java14新特性
2020年3月17号oracle发布了Java14,今天我们来尝尝鲜,看看新发布的版本都有一些什么新特性,首先我们在oracle官方网站上下载JDK14,(https://www.oracle.com/java/technologies/javase-downloads.html),进入之后如下图所示:我们点击下载,即可下载JDK14,下载完成之后点击安装即可,需要要注意的...
2020-04-16 21:37:34 421
原创 Dubbo2.7.5整合SpringBoot构建分布式系统详解
相信大家对于Dubbo都不陌生吧,前段时间看到Dubbo的官网上放出了最新的2.7.5的版本,发现新增了不少特性,这也是自从阿里将Dubbo交给apache维护之后迎来的首次比较大的更新。官网http://dubbo.apache.org。 进入官网之后我们查看文档(http://dubbo.apache.org/zh-cn/docs/user/new-featu...
2020-04-11 21:20:47 1348
原创 解决异常-nested exception is org.apache.ibatis.binding.BindingException: Parameter 'XXX' not found
今天自己在撸代码的时候一时手误,出现了异常,异常信息是:org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.binding.BindingException: Parameter 'roleIdList' not found. Available parameters are [...
2020-02-28 18:48:54 80423 12
原创 Linux实用技能图解教程---VMware下CentOS7的网络配置
上一篇博客中给家大家介绍了怎么安装CentOS7,相信大家已经学会了如何去创建虚拟机并安装CentOS7系统了,但是安装成功了之后我们在本机上是不能直接访问虚拟机的,因为我们还没有配置网络,今天就给大家讲解一下怎么配置CentOS7的网络,让虚拟机可以和本机进行通讯。 首先大家先要知道几种网络连接的方式,先来看一下这张图:先来说第一种方式,桥接。大家可...
2019-12-25 23:01:08 255
原创 Linux实用技能图解教程 -- VMware下虚拟机的创建以及CentOS7的安装详解
大家都知道,我们开发的程序最终是要部署在服务器上运行的,我们普通的个人电脑上运行的系统大多数是windows或者Mac,但是在服务器端使用频率最高的OS 是Linux,关于Linux和特点本文就不做过多的介绍了,今天首先来给大家介绍一下Linux的安装。 首先我们下载好linux的镜像文件,由于使用的较多的Linux发型版CentOS,因此本文使用CentOS7作为示例...
2019-12-19 22:09:15 292
原创 深入理解MyBatis核心技术01 --- MyBatis的2种基本使用方式详解(基于注解和xml)
在我们的日常开发中MyBatis是使用的比较多的orm框架之一,以前本患者仅仅停留在会用的层面上,但是对于一些原理性的东西基本都是知其然不知其所以然。所以最近这段时间打算和大家一起讨论一下MyBatis的一些核心原理。 首先今天先和大家分享一下本人使用MyBatis框架的两种方法,一种是基于注解的方式,另外一种是编写xml映射文件,首次我们来到官网:https://...
2019-11-23 00:11:53 436
原创 MySQL 用户管理详解 ---创建用户并修改权限
昨天晚上给大家讲解了一下MySQL安装和卸载以及配置的一些问题,今天我,就给大家讲解一下用户管理,也就是使用root用户给MySQL创建普通用户、管理用户权限等等。 首先我们打开黑窗口,输入 mysql -uroot -p 然后按回车键 根据体提示输入root用户的密码。如下图所示:也可以使用mysql -uroot -p密码 的方式登陆。登录成功之后 我...
2019-10-13 19:47:29 473
原创 win10环境下MySQL5.5安装和配置详解
有很多小伙伴在学习MySQL的时候总是碰到了一堆问题,其中频率最高的就是第一次安装失败了,然后卸载不干净,导致后来的安装报错,接着永远卡在了第一步。针对这种问题今天就给大家讲解一下MySQL的安装以及配置,以及怎么卸载干净的方法。好了,关于MySQL的介绍(懒得码字了)就省略了。 首先我们在官网(https://dev.mysql.com/downloads/mys...
2019-09-08 00:15:33 742 2
原创 Spring项目实战01----SSM框架整合详解
在前面的几篇博客中给大家介绍了Spring框架,并且简单的分析了一下IOC和AOP的实现原理以及手动的实现了一个简单的demo。由于小风这段时间一直在写C语言的项目,所以博文连续断更几个月了。刚好最近不忙,准备继续开始分享一些常用的技术了。 今天主要给大家介绍Spring框架整合其他技术的解决方案。现如今使用的最多的组合框架就是Spring+MyBatis了。前段时间给大家介绍的...
2019-07-27 17:47:21 442
原创 解决异常Error creating bean with name ‘xxxxxController‘: Unsatisfied dependency expressed through field
今天来聊一下常见的异常,异常信息如下图所示: 错误信息如下:Error creating bean with name 'helloController': Unsatisfied dependency expressed through field 'userService'; nested exception is org.springframework.beans...
2019-03-25 23:20:04 236462 60
原创 解决The origin server did not find a current representation for the target resource or is not导致的404问题
今天脑子可能犯浑了,部署项目的时候一直报404,找遍了各种原因,甚至想砸电脑,结果突然发现自己犯了一个非常low 的错误,真的像一头撞死在豆腐上,好了,看下面的报错信息:如图所示:The origin server did not find a current representation for the target resource or is not willing to dis...
2019-03-02 21:28:27 106531 44
原创 Web服务器简介----Tomcat从认识到下载安装到配置使用
上一篇博客中给大家介绍了一下服务器和Web服务器的相关概念,今天就来给大家介绍一下Web服务器的具体使用,由于只有tomcat是免费的所以这里就用汤姆猫作为演示。既然要学习tomcat,毫无疑问我们先要找到他的官网,先来百度一下如下图所示:大家可以看到,汤姆猫是apache软件基金会的项目,所以接下来我们就要去apache的官网了。apache的官网链接http://www.ap...
2018-12-14 15:35:24 498
原创 认识服务器&&常见的Web服务器
今天带大家来认识一下常用的web服务器,先来解释一下,什么是web服务器,所谓的web服务器就是针对Web应用软件提供运行服务的容器,当我们开发好了自己的一个web应用软件的时候他是需要一个容器才能运行的,而这个容器就是就是我们常说的web服务器。 好了,简单的介绍了下web服务器,那么什么是服务器呢?上面的一段话中说到了,Web服务器就是针对Web应用提供服务支持的...
2018-12-14 14:15:12 428
Java图形用户界面的简易计算器
2018-03-24
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人