- 博客(29)
- 资源 (20)
- 问答 (1)
- 收藏
- 关注
原创 Shiro学习笔记---入门Demo(JWT令牌)
前言上一篇博客采用了搭建Demo的方式说明了如何使用Shiro共享session实现分布式架构。而本篇博客将介绍Shiro与JWT结合,实现前后端分离。本Demo仍然力求简洁清晰,因此在工程代码中有与上一篇博客代码重合部分将被省略,如有不清楚的地方请先看第一篇关于Shiro基础博客然后再回来继续阅读。业务设计JWT :JSON Web Token(JWT)是一个非常轻巧的规范。这个规范允许我们使用JWT在用户和服务器之间传递安全可靠的信息。与Shiro结合主要关注的是无状态服务...
2021-05-24 15:51:37
272
2
原创 使用docker环境实现keepalived高可用
前言 最近学习docker做了一个高可用的demo,驱动我做这个试验的原因是使用keepalived需要安装多个依赖包,而我主要从事政府软件开发在内网服务器中安装非常不方便,因此想到了keepalived和docker结合解决此问题。正文 试验由分别安装了docker的A、B两台电脑完成,具体在每台电脑中运行一个docker容器并在容器中安装了keepalived组件,然后采用断网的方式测试虚拟ip的漂移情况。具体环境情况请见下表: 宿主机名 ...
2021-04-12 14:45:01
6386
3
原创 基于XA协议的分布式事务
前言 最近在项目中使用了分布式事务,就稍加整理了一下以博客的形式共享出来。目前实现分布事务有很多方式包括2PC、TCC、事务消息等。因为业务需要我项目中采用的是传统的2PC方式的解决方案。2PC既两阶段提交,又叫做 XA Transactions,MySQL从5.5版本开始支持,SQL Server 2005 开始支持,Oracle 7 开始支持,它的优点是强一直性,缺点则是降低了可用性,这里由于本篇博客以实践为主就不过多赘述理论知识了。在前一篇博客中我介分享了单体工程多数据源、多事务的实...
2020-11-26 10:59:53
743
原创 springboot配置多数据源
前言 最近因为业务需要,在项目中使用了多数据源,写这篇博客的目的是给自己留一个记录,同时也分享给有需要的同学。下面的内容是我一贯的风格以实践为主,理论部分可以自己在网上查阅。逻辑说明 下图为Demo工程的逻辑示意图,搭建多数据源的主要问题在于事务的配置和管理,幸运的是spring本身支持多事务,在工程中可以为每个数据源单独配置一个事务,但使用时需要显示声明属于哪个具体事务,在工程中同一个service内不同的方法可以运行在不同的事务中,各自独立运行互不干...
2020-11-23 14:34:23
292
原创 Docker学习笔记之---SpringBoot集成Docker最详细能跑通的demo
编写目的 最近在学习Docker 自动化打包、部署、发布,在网上看了很多千篇一律粗制滥造的文章,在走了很多弯路的同时也很气愤,写这篇文章目的有二,其一,是把完整的、正确的思路整理出来希望能够帮助同样在学习Docker的同学,其二,是记录学习过程给自己留一个备份。本篇内容仍然是以实践为主,不过多论述理论知识。实现目标使用IDEA把SpringBoot项目打包为镜像自动发布到Docker服务器。思路步骤 分析实现目标其中有三个重要参与者,分别是IDEA、Spr...
2020-10-23 17:27:47
369
原创 Docker学习笔记之---Linux服务器离线安装Docker
编写目的 最近在学习Docker看了网上很多资料自己整理了一下,分成几篇博客分享出来希望能够帮助有需要的同学也给自己留一个备份。本文重在实践理论性的内容可以到官网自行学习。基础环境1、操作系统:CentOS 7.62、Docker版本: 19.03.0Docker安装官方下载地址:https://download.docker.com/linux/static/stable/x86_64/1、将提前下载好的压缩包解压缩 tar -xvf docker-18.0...
2020-10-23 15:52:44
233
原创 Shiro学习笔记---入门Demo(共享Session)
前言 上一篇博客采用了搭建Demo的方式说明了如何使用Shiro完成最基础的“登录/登出”和“权限鉴别”功能。而本篇博客将介绍Shiro与Redis结合,加入“缓存权限”和“共享Session”功能。本Demo仍然力求简洁清晰,因此在工程代码中有与上一篇博客代码重合部分将被省略,如有不清楚的地方请先看上一篇博客然后再回来继续阅读。业务设计(1) 缓存权限:自定义realm继承了AuthorizingRealm,实际上每调用一个需要权限验证的接口,都会执行doGetAuthoriza...
2020-10-20 10:03:28
242
原创 Shiro学习笔记---入门Demo(基础权鉴)
简介 Apache Shiro 是 Java 的一个安全框架。目前,使用 Apache Shiro 的人越来越多,因为它相当简单,对比 Spring Security,可能没有 Spring Security 做的功能强大,但是在实际工作时可能并不需要那么复杂的东西,它可以帮助我们完成:认证、授权、加密、会话管理、与 Web 集成、缓存等工作,所以使用小而简单的 Shiro 就足够了。业务设计 本文内容不会叙述概念和理论本文力求简单清晰,目标读者是shiro的入门者,...
2020-10-16 16:05:02
308
原创 Kafka单机安装
一、下载安装首先访问Kafka官网(http://kafka.apache.org/downloads)选择版本下载,笔者下载的是kafka_2.13-2.6.0.tgz。kafka的运行依赖于zookeeper,topic的发布和订阅它,因此新版kafka安装程序已经将zookeeper整合在一起降低了安装复杂度。下载完成后在服务器上选择一个目录(笔者选择的是/opt目录,此为linux用户级程序目录,相当于D:\program)解压kafka,不须编译只要修改配置文件中的几个必要项后即可运行。..
2020-09-10 14:44:39
351
原创 FastDFS 6.06 学习笔记(单机版安装)
一、安装Tracker Server1.1. 安装libfastcommon依赖库 libfastcommon是FastDFS的依赖库,在libfastcommon安装之前需要检查一下生产环境中是安装过gcc,后续的编译安装全靠它[root@izm5eg3h4a24foo7fyjqalz nginx]# gcc -vUsing built-in specs.COLLECT_GCC=gccCOLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-red...
2020-08-11 14:34:47
441
原创 SpringBoot 集成 Seata 学习笔记
最近因项目需要在网上寻找分布式事务框架,发现阿里开源的Seata组件文档描述概念清晰,而且最吸引我的还是那句,经受住了十余年双十一的考验(视乎阿里开源的组件都有这句话),Seata组件包含XA、TCC、AT、Sage四种模式,其中AT模式支持无侵入集成,用起来也比较简单所以首先学习了AT模式,关于AT模式的理论部分官网写的很好我就不赘述了,本文以实践为主描述了Seata组件的基础和使用。布式事务用例:业务用例描述了一个采购过程,消费者在线下单、后台同时扣除账户金额、扣除库存。在开发中我创建了Orde
2020-07-31 16:34:55
1569
原创 Gateway学习笔记
最近在学习微服务相关组件,今天和大家分享下Gateway的基础配置也作为自己的一个学习记录。Gateway搭建其实很简单,至于它背后用了多牛逼的技术比zuul好了多少暂不讨论网上这类理论性的文章也是一把一把的,有兴趣可以自己找,今天只分析动手的过程。一、工程搭建本工程是基于springboot搭建,在一个父工程下包含两个子gateway和consume模块(module),gateway负责映射consumer html接口,以下为了使文章更简洁易懂仅给出Gateway搭建的重点步骤其余常规部分
2020-07-20 16:52:15
259
原创 Nacos 1.3.0 搭建配置中心基础入门Demo
本篇博客在上一篇《Nacos搭建服务注册中心》基础上扩展出配置中心,文章内容简洁力求清晰易懂,其中不谈理论只谈实践希望可以帮助有需要的同学快速上手。一、 扩展java工程支持配置中心其实这一步非常简单只需要对此前搭建好的工程稍加修改即可完成。(1)在子工程pom.xml中添加依赖<!-- Nacos配置中心 --><dependency> <groupId>com.alibaba.cloud</groupId> <ar
2020-07-13 14:52:45
652
原创 Nacos 1.3.0 搭建服务注册基础入门Demo
前言最近在学习Nacos看了很多文章,今天不谈理论只上干货文章内容主要是Nacos的下载安装及服务注册,在这个过程中我想要表达的不仅是过程还有更重要的方法。此外我的写作目的有二,一是作为自己学习的记录,二是针对1.3.0这个版本写一个demo帮助有兴趣的同学快速入门少走弯路。本文是基于以下环境搭建:环境 版本 JDK 1.8 SpringBoot 2.2.0.RELEASE SpringCloud Hoxton.RELEASE Nacos 1.3.0
2020-07-08 15:50:20
935
原创 论面向服务架构设计及其应用
在准备架构师考试过程中发现可供参考的论文范围非常少且内容陈旧给学习带来很大烦恼,通过考试后把我准备的论文共享出来水平有限但内容格式迎合考试,希望给大家一个参考。范文以“论面向服务架构设计及其应用”为题书写,希望对大家有所帮助。【摘要】2017年5月,我参加了某省质量技术监督局“生产制造一体化监管平台”项目(以下简称一体化平台),担任系统架构师职务,负责整体架构设计与中间件选型。该系统以监管企业生产制造为主线,旨在帮助各级监督部门解决监管企业生产、报审、送检、勘验、巡检和执法等问题。本文以一体化平台为
2020-07-02 08:54:21
3177
原创 论软件架构风格及其应用
在准备架构师考试过程中发现可供参考的论文范围非常少且内容陈旧给学习带来很大烦恼,通过考试后把我准备的论文共享出来水平有限但内容格式迎合考试,希望给大家一个参考。范文以“论软件架构风格及其应用”为题书写,希望对大家有所帮助。【摘要】2017年5月,我参加了某省质量技术监督局“生产制造一体化监管平台”项目(以下简称一体化平台),担任架构师职务负责整体架构设计与中间件选型。该系统以监管企业生产制造为主线,旨在帮助各级监督部门解决监管企业生产、报审、送检、勘验、巡检和执法等问题。本文以一体化平台为例,论述了
2020-07-01 14:47:11
4193
2
原创 论软件的可靠性设计
在准备架构师考试过程中发现可供参考的论文范围非常少且内容陈旧给学习带来很大烦恼,通过考试后把我准备的论文共享出来水平有限但内容格式迎合考试,希望给大家一个参考。范文以“论软件的可靠性设计”为题书写,希望对大家有所帮助。【摘要】2017年5月,我参加了某省质量技术监督局“生产制造一体化监管平台”项目(以下简称一体化平台),担任架构师职务负责整体架构设计与中间件选型。该系统以监管企业生产制造为主线,旨在帮助各级监督部门解决监管企业生产、报审、送检、勘验、巡检和执法等问题。本文以一体化平台为例,论述了软件
2020-06-29 10:53:47
2651
原创 论信息系统的安全性与保密性设计
在准备架构师考试过程中发现可供参考的论文范围非常少且内容陈旧给学习带来很大烦恼,通过考试后把我准备的论文共享出来水平有限但内容格式迎合考试,希望给大家一个参考。范文以“论信息系统的安全性与保密性设计”为题书写,希望对大家有所帮助。【摘要】2017年5月,我参加了某省质量技术监督局“生产制造一体化监管平台”项目(以下简称一体化平台),并担任系统架构师职务,负责整体架构设计与中间件选型。该系统以监管企业生产制造为主线,旨在帮助各级监督部门解决监管企业生产、报审、送检、勘验、巡检和执法等问题。本文以一体化
2020-06-28 10:23:32
3792
原创 OAuth2 入门---整合zuul网关实现微服务权鉴架构
最近在学习OAuth2同时也在思考将其整合入微服务架构的最佳方式。基于OAuth2剥离各微服务权限认证功能,将其单独抽象为一个权鉴服务是我比较认可的一种方式,在这个基础上个人认为对于一些权限要求简单的场景,可以使用zuul网关集成权鉴功能验证Token,好处是内网微服务可以完全抛开权限更专注于业务逻辑,而zuul网关本身就是访问入口,由它来负责鉴权工作也正为合适。基于这个设想我搭建了一套de...
2020-04-24 15:50:29
1094
原创 OAuth2 入门---采用密码模式搭建demo工程
最近在学习OAuth2,虽然网上教学例子很多但不少都存在问题给学习带来很大困扰,因今天拿出时间整理一下思路以密码模式为例写一篇记录学习的文章,希望能给有需要的同学带来些帮助。本文以实践为主默认读者对OAuth2在概念上已有一定了解。一、OAuth2 密码模式OAuth2包括授权码、简化、密码和客户端四种模式,其中密码模式比较适用于公司内部项目使用,将若干受信系统认证和授权功能抽象为独立的认...
2020-03-25 16:23:40
1076
原创 软考架构师例文-论非功能性需求对企业应用架构设计的影响
在准备架构师考试过程中发现可供参考的论文范围非常少且内容陈旧给学习带来很大烦恼,通过考试后把我准备的论文共享出来水平有限但内容格式迎合考试,希望给大家一个参考。范围以2014年试题二“论非功能性需求对企业应用架构设计的影响”为例书写,第一部分为论题要求,第二部分为论文导图(用于书写前整理思路),第三部分为范围内容。第一部分 企业应用架构(Enterprise ...
2019-12-18 14:08:42
1929
原创 最通俗易懂的海明码校验纠错讲解
一、海明码编码1.1. 求海明码位数公式:≥N+k+1,其中N为有效信息位数,K为校验码位数。例子:编码前有效信息为10011101,求校验码位数?解: 有效信息码10011101长度为8则,N=8,求K=?,可以将N带入公式≥8+k+1然后K可依次用正整数带入,取维持等式成立的最小值,解得K=4。并根据经验总结,得出信息码位与校验码位关系,如下表所示。 ...
2019-06-03 10:29:46
27494
8
原创 搭建kettle 源码工程报[ui/spoon.xul]找不到错误的解决方案
在使用kettle操作国产达梦数据库时日志模块出现了问题,因此根据网上教程搭建起了kettle源码工程方便调试,但启动工程时报了kettle org.pentaho.ui.xul.XulException: Can not locate Xul document [ui/spoon.xul]这个错误,在网上查找一番无果后只能扒源码,发现org.pentaho.di.ui.spoon...
2019-04-30 17:28:07
1612
原创 android通过webview组件实现与js相互调用
前言 由于本人也是刚刚接触android水平有限但本着分享精神写了此篇文章,所以本文侧重实用内容涉及到的相关知识这里不做过多解释。(有个鸟人说得好,当一个程序员解决了一个问题的时候在地球的某一个角落一定还有某个程序员正为此问题而苦恼)内容 最近先来闲来无事想做一款带有统计功能的app,经过综合考虑决定采用基于html5的js统计图表组件(ichartjs)来实现,
2014-01-09 17:12:17
836
原创 spring 分布式事务
最近在做一套底层数据同步对接程序,项目要求将同一笔业务数据分别在多个不同系统间流转,在这个过程中数据需要实时的跨越多个不同种类的数据库。因为觉得具有一定的代表性,所以特将此次demo程序开发过程摘录关键之处与大家共同分享。 因为之前对分布式事物了解不多,最初在网上找了些资料发现jotm(jta的开源实现)相关的文章和资料很多于是就到其官网下载了2.1.9版本的jotm进过实际测试发现其基
2013-02-05 14:18:33
1517
microapps-seata-1.2.1.zip
2020-07-31
oauth-zuul.rar
2020-04-27
oauth-zuul.rar
2020-04-24
java 多线程程序越运行越慢
2022-04-02
TA创建的收藏夹 TA关注的收藏夹
TA关注的人