自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(44)
  • 收藏
  • 关注

原创 Spring Cloud异步场景分布式事务怎样做?试试RocketMQ

在微服务架构中,我们常常使用异步化的手段来提升系统的吞吐量和解耦上下游,而构建异步架构最常用的手段就是使用消息队列(MQ),那异步架构怎样才能实现数据一致性呢?本文主要介绍如何使用RocketMQ的事务消息来解决一致性问题

2019-09-23 10:24:13 1863 1

原创 Spring Cloud同步场景分布式事务怎样做?试试Seata

在微服务架构下,虽然我们会尽量避免分布式事务,但是只要业务复杂的情况下这是一个绕不开的问题,如何保证业务数据一致性呢?本文主要介绍同步场景下使用Seata的AT模式来解决一致性问题。

2019-09-16 08:34:10 10086 1

原创 如何基于Security框架兼容多套用户密码加密方式

本文分享基于Security的PasswordEncoder来实现兼容多套用户密码加密方式。

2023-03-20 08:52:20 498 2

原创 基于Kubernetes(k8s)部署Dubbo+Nacos服务

本文介绍基于 Kubernetes(k8s) 环境集成阿里云私有镜像仓库来部署一套 Dubbo + Nacos 的微服务系统,并使用 Kubernetes DNS 以及 port-forward 的方式来打通网络访问。

2023-03-13 08:41:38 1609

原创 基于Docker部署Dubbo+Nacos服务

本文介绍基于 Docker 部署一套 Dubbo + Nacos 的微服务环境,并解决容器里的 IP 及端口的访问问题。

2023-02-27 09:19:24 709

原创 基于jib-maven-plugin快速构建微服务docker镜像

本文介绍基于 Maven 插件 jib-maven-plugin 实现快速构建 Spring Boot 程序镜像,并推送到远程仓库中,且无需安装 Docker 环境 。

2023-02-22 08:51:43 718

原创 基于minikube快速搭建kubernetes单节点环境

本文主要介绍在 Centos7 环境下基于 Minikube 来快速部署 Kubernetes 单节点集群环境,并在浏览器上访问部署在 k8s 上的 dashboard 服务。

2023-02-20 08:49:42 599 1

原创 隐私计算FATE-多分类神经网络算法测试

本文分享基于Fate使用横向联邦神经网络算法对多分类的数据进行模型训练,并使用该模型对数据进行多分类预测。

2022-07-07 08:54:16 720

原创 隐私计算FATE-离线预测

Fate的模型预测有离线预测和在线预测两种方式,两者的效果是一样的,主要是使用方式、适用场景、高可用、性能等方面有很大差别;本文分享使用Fate基于纵向逻辑回归算法训练出来的模型进行离线预测实践。...

2022-06-27 09:02:12 455

原创 隐私计算FATE-模型训练

本文分享基于Fate自带的测试样例,进行纵向逻辑回归算法的模型训练,并且通过FATE Board可视化查看结果。

2022-06-20 09:04:48 1347

原创 隐私计算FATE-核心概念与单机部署

隐私计算与传统数据使用方式相比,它不需要聚合各方数据搭建数据仓库,联邦学习在联合的过程中,多方机构之间的数据是不会进行共享的,实现数据的可用不可见;本文主要分享隐私计算平台Fate的相关基本概念,以及基于Docker的单机部署。...

2022-06-13 09:02:58 436

原创 联盟链 Hyperledger Fabric 应用场景

本文主要通过一个例子分享以Hyperledger Fabric为代表的联盟链应用场景。

2022-05-23 08:41:05 4079

原创 Hyperledger Fabric 核心概念

Fabric是一个企业级的分布式账本技术平台,也是目前应用最广泛的区块链项目;本文将梳理区块链技术平台Fabric的核心概念与关键功能。

2022-05-16 09:03:02 3221

原创 Hyperledger Fabric 2.x Java区块链应用

在上一篇文章中分享了智能合约的安装并使用cli客户端进行合约的调用;本文将使用Java代码基于fabric-gateway-java进行区块链网络的访问与交易,并集成SpringBoot框架。

2022-02-22 08:53:48 9260

原创 Hyperledger Fabric 2.x 动态更新智能合约

在上一篇文章中分享了智能合约的安装与使用,如果业务有变更代码需要修改怎么办呢?本文分享如何对已安装的合约进行版本更新。

2022-02-21 09:11:12 7717

原创 Hyperledger Fabric 2.x 自定义智能合约

本文分享如何使用 Java 语言开发智能合约,以及合约的安装与使用。

2022-02-16 09:00:48 10762 1

原创 Hyperledger Fabric 2.x 环境搭建

本文分享在 Centos下搭建 Hyperledger Fabric 2.4 环境并进行简单的网络测试。

2022-01-24 09:03:21 2668

原创 Spring Boot 如何热加载jar实现动态插件?

一、背景动态插件化编程是一件很酷的事情,能实现业务功能的 解耦 便于维护,另外也可以提升 可扩展性 随时可以在不停服务器的情况下扩展功能,也具有非常好的 开放性 除了自己的研发人员可以开发功能之外,也能接纳第三方开发商按照规范开发的插件。常见的动态插件的实现方式有 SPI、OSGI 等方案,由于脱离了 Spring IOC 的管理在插件中无法注入主程序的 Bean 对象,例如主程序中已经集成了 Redis 但是在插件中无法使用。本文主要介绍在 Spring Boot 工程中热加载 jar 包并注册成.

2021-10-18 09:52:26 2032

原创 如何基于Security实现OIDC单点登录?

本文主要是给大家介绍 OIDC 的核心概念以及如何通过对 Spring Security 的授权码模式进行扩展来实现 OIDC 的单点登录。

2021-09-28 08:36:02 750 3

原创 第三方API对接如何设计接口认证?

一、前言在与第三方系统做接口对接时,往往需要考虑接口的安全性问题,本文主要分享几个常见的系统之间做接口对接时的认证方案。 二、认证方案例如订单下单后通过 延时任务 对接 物流系统 这种 异步 的场景,都是属于系统与系统之间的相互交互,不存在用户操作;所以认证时需要的不是用户凭证而是系统凭证,通常包括 app_id 与 app_secrect。app_id与app_secrect由接口提供方提供2.1. Baic认证这是一种较为简单的认证方式,客户端通过明文(Base64编码格式.

2021-07-02 08:34:28 1514 2

原创 免费正版 IntelliJ IDEA license 详细指南

一、前言 IntelliJ IDEA 一直是我非常喜欢的 IDE 自从用上之后就回不了头了,但是 Ultimate 版本的费用十分昂贵,其实 JetBrains 自己就提供了6种免费申请授权的方式;本文主要介绍 通过开源项目免费申请 这种方式。我使用的项目为:https://github.com/zlt2000/microservices-platform  二、基本要求获得免费许可证,需要满足以下条件:关于开源项目要求满足开源定义。正在积极开发,即在过去3个月内定期提.

2021-04-12 09:02:48 10625

原创 ClickHouse性能优化?试试物化视图

本文主要分享物化视图的特性与如何使用它来优化ClickHouse的查询性能。

2021-04-07 08:54:58 3861 2

原创 全量同步Elasticsearch方案之Canal

一、前言Canal 是阿里的一款开源项目,纯 Java 开发。基于数据库增量日志解析,提供增量数据订阅&消费,目前主要支持了 MySQL(也支持 mariaDB)。Canal 除了支持 binlog 实时 增量同步 数据库之外也支持 全量同步 ,本文主要分享使用Canal来实现从MySQL到Elasticsearch的全量同步;可通过使用 adapter 的 REST 接口手动触发 ETL 任务,实现全量同步。在执行全量同步的时候,同一个 destination 的增量同步任务会被 阻.

2021-03-29 07:49:03 1894 2

原创 Canal高可用架构部署

一、前言canal 是阿里的一款开源项目,纯 Java 开发。基于数据库增量日志解析,提供增量数据订阅&消费,目前主要支持了 MySQL(也支持 mariaDB)。canal 模拟 mysql slave 的交互协议,伪装自己为 mysql slave,向 mysql master发送 dump 协议;mysql master 收到 dump 请求,开始推送binary log给 slave(也就是canal)canal 解析 binary log对象(原始为byte流)。&nbs.

2021-03-22 08:52:29 1562 1

原创 大数据量查询容易OOM?试试MySQL流式查询

一、前言程序访问 MySQL 数据库时,当查询出来的数据量特别大时,数据库驱动把加载到的数据全部加载到内存里,就有可能会导致内存溢出(OOM)。其实在 MySQL 数据库中提供了流式查询,允许把符合条件的数据分批一部分一部分地加载到内存中,可以有效避免OOM;本文主要介绍如何使用流式查询并对比普通查询进行性能测试。 二、JDBC实现流式查询使用JDBC的 PreparedStatement/Statement 的 setFetchSize 方法设置为 Integer.MIN_VALUE.

2021-01-04 09:33:18 1566 1

原创 Elasticsearch索引生命周期管理方案

一、前言在 Elasticsearch 的日常中,有很多如存储 系统日志、行为数据等方面的应用场景,这些场景的特点是数据量非常大,并且随着时间的增长 索引 的数量也会持续增长,然而这些场景基本上只有最近一段时间的数据有使用价值或者会被经常使用(热数据),而历史数据几乎没有作用或者很少会被使用(冷数据),这个时候就需要对 索引 进行一定策略的维护管理甚至是删除清理,否则随着数据量越来越多除了浪费磁盘与内存空间之外,还会严重影响 Elasticsearch 的性能; 在 Elastic Sta.

2020-12-30 08:42:10 3788

原创 ELK多租户方案

一、前言日志分析是目前重要的系统调试和问题排查的重要手段之一,而目前分布式系统由于实例和机器众多,所以构建一套统一日志系统是非常必要的;ELK提供了一整套解决方案,并且都是开源软件,之间互相配合使用,完美衔接,高效的满足了很多场合的应用,是目前的主流选择之一。本文主要介绍如何实现一套 ELK日志系统 同时给 多套环境 、多个系统 共同使用/测试,并实现相互之间的数据与视图相互 隔离 互不影响。 二、隔离方式常见的 ELK 架构如下图所示,分别由 Elasticsearch、Logsta.

2020-12-07 08:57:00 1037 1

原创 如何实现对ELK各组件的监控?试试Metricbeat

一、前言开发排查系统问题用得最多的手段就是查看系统日志,ELK 是 Elastic 公司开源的实时日志处理与分析解决方案,已经为日志处理方案的主流选择。而在生产环境中,如何针对 ELK 进行监控,保证各个组件正常运行?如何知道目前的资源是否能承受线上的压力呢?本文主要是以 Elastic Stack 7.x 版本为例,介绍如何监控 ELK 自身的各个组件。 二、总体架构常见的 Elastic Stack 日志系统架构如下其中可使用 Metricbeat 组件作为轻量级监视代理,通过.

2020-11-30 09:28:09 789

原创 Dubbo日志链路追踪TraceId选型

一、目的开发排查系统问题用得最多的手段就是查看系统日志,但是在分布式环境下使用日志定位问题还是比较麻烦,需要借助 全链路追踪ID 把上下文串联起来,本文主要分享基于 Spring Boot + Dubbo 框架下 日志链路追踪ID 的实现方案选型思路。 目前大多数分布式追踪系统的思想模型都来自 Google's Dapper 论文全链路追踪的核心思想:为每条请求都单独分配一个唯一的 traceId 用来标识一条请求链路,该 traceId 会贯穿整个请求处理过程的所有服务.

2020-09-27 08:58:37 1426

原创 Spring Security如何优雅的增加OAuth2协议授权模式

一、什么是OAuth2协议?OAuth 2.0 是一个关于授权的开放的网络协议,是目前最流行的授权机制。数据的所有者告诉系统,同意授权第三方应用进入系统,获取这些数据。系统从而产生一个短期的进入令牌(token),用来代替密码,供第三方应用使用。由于授权的场景众多,OAuth 2.0 协议定义了获取令牌的四种授权方式,分别是:授权码模式:授权码模式(authorization code)是功能最完整、流程最严密的授权模式。它的特点就是通过客户端的后台服务器,与"服务提供商"的.

2020-09-02 10:25:00 1857 4

原创 Dubbo想要个网关怎么办?试试整合Spring Cloud Gateway

在以Dubbo框架体系来构建的微服务架构下想要增加API网关,如果不想自研开发的情况下在目前的开源社区中几乎没有找到支持dubbo协议的主流网关,但是Spring Cloud体系下却有两个非常热门的开源API网关可以选择;本文主要介绍如何通过Nacos整合Spring Cloud Gateway与Dubbo服务。

2020-06-28 09:46:13 14684 10

原创 前后端分离基于Oauth2的SSO单点登录怎样做?

一、说明单点登录顾名思义就是在多个应用系统中,只需要登录一次,就可以访问其他相互信任的应用系统,免除多次登录的烦恼;本文主要介绍跨域间的 前后端分离 项目怎样实现单点登录,并且与 非前后端分离 的差异在那里?需要解决什么问题?。前后端分离的核心概念是后端仅返回前端所需的数据,不再渲染HTML页面,前端HTML页面通过AJAX调用后端的RESTFUL API接口并使用JSON数据进行交互...

2020-03-17 10:23:34 5760 4

原创 Spring Security基于Oauth2的SSO单点登录怎样做?一个注解搞定

一、说明单点登录顾名思义就是在多个应用系统中,只需要登录一次,就可以访问其他相互信任的应用系统,免除多次登录的烦恼。本文主要介绍 同域 和 跨域 两种不同场景单点登录的实现原理,并使用 Spring Security 来实现一个最简单的跨域 SSO客户端 。 二、原理说明单点登录主流都是基于共享 cookie 来实现的,下面分别介绍 同域 和 跨域 下的两种场景具体怎样实现共享...

2020-03-02 10:35:38 1764

原创 微服务业务监控和行为分析怎么做?试试日志埋点

一、说明互联网公司一般都会有专门的数据团队对公司的一些业务指标负责;为了拿到这些基本的业务指标,一般也要工程团队去配合做一些数据采集工作,于是埋点诞生了。 埋点的方式有很多种,本文主要介绍 日志埋点 这种方式以及实现思路和案例。日志埋点 就是通过程序打印 log 日志的方式进行业务/行为数据的记录 二、总体架构通过 日志埋点 来实现业务监控和行为分析主要...

2019-11-11 11:58:19 2383

原创 Spring Cloud Gateway的动态路由怎样做?集成Nacos实现很简单

一、说明网关的核心概念就是路由配置和路由规则,而作为所有请求流量的入口,在实际生产环境中为了保证高可靠和高可用,是尽量要避免重启的,所以实现动态路由是非常有必要的;本文主要介绍 Spring Cloud Gateway 实现的思路,并且以Nacos为数据源来讲解PS:关于 Spring Cloud Zuul 的动态路由请看文章《Spring Cloud Zuul的动态路由怎样做?集成Naco...

2019-10-21 13:02:36 4529 1

原创 Apache RocketMQ 消息队列部署与可视化界面安装

一、介绍Apache RocketMQ是一个分布式、队列模型的消息中间件,具有低延迟、高性能和高可靠、万亿级容量和灵活的可扩展性。核心组件由四部分组成:Name Servers,Brokers,Producer 和 Consumer;它们中的每一个都可以水平扩展,而没有单一的故障节点。NameServer:是一个几乎无状态的节点,可集群部署,节点之间无任何信息同步Broker:部署相对...

2019-09-17 10:00:38 1364 2

转载 实施微服务架构的关键技术

本文来自CCTC2017大会孙玄的演讲。大家都在提微服务架构,微服务架构到底是什么?它有哪些特点和设计模式?我们在打造微服务架构过程中,这些设计模式在实战当中如何应用?数据的一致性应该如何保证?今天我将针对上述疑问分享一下我的思考。微服务架构特点什么是微服务架构?看下图的这段英文,这是Martin Fowler 在2014年提出来的,微服务架构是一种架构模式,既然是架构模式,那...

2019-09-09 14:57:52 2080

原创 Spring Cloud开发人员如何解决服务冲突和实例乱窜?(IP实现方案)

一、背景在我上一篇文章《Spring Cloud开发人员如何解决服务冲突和实例乱窜?》中提到使用服务的元数据来实现隔离和路由,有朋友问到能不能直接通过IP来实现?本文就和大家一起来讨论一下这个问题 二、可行性分析要实现通过IP来隔离和路由的话有一个非常关键的点需要解决,就是怎样实现IP可辨识,意思就是如何区分那个IP是服务器上的,那个IP是开发人员本机的如上图所示其实我们还...

2019-09-06 13:23:20 2215

原创 Spring Cloud开发人员如何解决服务冲突和实例乱窜?

一、背景在我们开发微服务架构系统时,虽然说每个微服务都是孤立的可以单独开发,但实际上并非如此,要调试和测试你的服务不仅需要您的微服务启动和运行,还需要它的上下文服务、依赖的基础服务等都要运行;但如果你的系统服务数和依赖比较多呢,那就是一个比较棘手的问题!有没有办法能提高开发效率呢?如上图所示,我们能不能用服务器把所有的服务都部署起来,然后开发只在本地运行自己所负责开发的服务,因为需要依赖其...

2019-09-04 15:12:44 1599 2

原创 Spring Cloud Zuul的动态路由怎样做?集成Nacos实现很简单

一、说明网关的核心概念就是路由配置和路由规则,而作为所有请求流量的入口,在实际生产环境中为了保证高可靠和高可用,是尽量要避免重启的,所以实现动态路由是非常有必要的;本文主要介绍实现的思路,并且以Nacos为数据源来讲解 二、实现要点要实现动态路由只需关注下面4个点网关启动时,动态路由的数据怎样加载进来静态路由与动态路由以那个为准,ps:静态路由指的是配置文件里写死的路由配置...

2019-08-29 10:10:06 3499 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除