• BPM引擎Activiti6.0任务撤回实现方法

    当前使用的BPM引擎为Activiti6.0,客户需求是流程发起人能将整个流程撤销,对于某个流程节点,办理人可以撤回已经办理的任务,同时前提是该任务节点的下个节点未被办理。1、流程撤销首先说下发起人对整个流程的撤销,直接删除流程,传入流程实例ID,结束一个流程。执行此方法后,流程实例的当前任务act_ru_task会被删除,流程历史act_hi_taskinst不会被删除,并且...

    工作流引擎 2021年08月22日 2233 0
  • 面试官:你说说一条更新SQL的执行过程?

    在上一篇《面试官:你说说一条查询SQL的执行过程?》中描述了Mysql的架构分层,通过解析器、优化器和执行引擎完成一条SQL查询的过程,那这一篇续上继续说明一条更新SQL的执行过程。对于一个SQL语句的更新来说,前面的流程都可以说类似的,通过解析器进行语法分析,优化器优化,执行引擎去执行,这个都没有什么问题,重点在于多了一点东西,那就是redo_log、undo_log和bin...

    MySQL 2021年08月20日 1227 0
  • CKEditor 4.16.2 发布,修复浏览器兼容性问题

    CKEditor 4.16.2 维护版本已发布。此版本是一个维护版本,更新内容包括修复安全问题、修复浏览器兼容性问题、升级与 React 的集成,以及修复其他重要问题。修复安全问题修复了剪贴板插件中的安全漏洞 (CVE-2021-32809),该漏洞会引起出现滥用粘贴功能(使用格式错误的 HTML )的情况,进而导致将任意的 HTML 注入编辑器。此外,在 Widget 插件中...

    Java 2021年08月19日 1060 0
  • SpringBoot数据源配置原理

    在数据库访问过程中,“数据源”无疑是最重要的概念之一,它不仅可以对与数据库访问相关的各种参数进行封装和统一管理,还可以管理数据库连接池,提高数据库连接性能。目前,在市面上有很多优秀的开源数据源,例如DBCP、C3P0、Druid、HikariCP等等。在SpringBoot2.x中,则采用目前性能最佳的HikariCP作为其默认数据源。接下来,我们就来具体介绍下SpringBo...

    SpringBoot 2021年08月19日 1320 0
  • OAuth2.1授权服务器Spring Authorization Server正式孵化成功

    今天Spring官方宣布 Spring Authorization Server 已正式退出实验状态并进入Spring 项目的产品家族!Spring 官方声明此举恰逢本周的 0.2.0 版本发布,这是第一个正式支持的生产就绪版本。自2020 年 4 月Spring Authorization Server公布以来以来,已经实现了OAuth 2.1 授权协议的绝大部分,并为 Op...

    Java 2021年08月18日 1079 0
  • Netty 心跳检测

    1. 前言本节,我们主要讲解心跳机制 heartbeat,Netty 给我们提供了三个 Handler,分别是 IdleStateHandler、ReadTimeoutHandler、WriteTimeoutHandler,主要目的是检查对方是否有效,也就是说对方是否还在线。2. 为什么需要心跳机制了解 TCP: TCP 协议适用于客户端数量相对比较少,并且通信频繁的业务场景;...

    java技术 2021年08月18日 1640 0
  • 基于Redis消息的订阅发布应用场景

    基于Redis消息的订阅发布应用场景1.应用背景在物联网采集管控系统中,前后端隔离的情况下,前端通过表单(比如按钮,开关,表格等)输入数据到数据库(比如MySql,通过WEBAPI服务端输入),然后采集控制端到数据库里去扫表取数据,将数据下发给物联网络中的终端设备(比如风扇控制板),从而来控制风扇的开跟关。2.困境采集控制端需要到数据库中去扫表。这个扫表操作会带来几个问题:2....

    Redis 2021年08月18日 1621 0
  • 模板方法模式

    亦称: Template Method意图模板方法模式是一种行为设计模式, 它在超类中定义了一个算法的框架, 允许子类在不修改结构的情况下重写算法的特定步骤。问题假如你正在开发一款分析公司文档的数据挖掘程序。 用户需要向程序输入各种格式 (PDF、 DOC 或 CSV) 的文档, 程序则会试图从这些文件中抽取有意义的数据, 并以统一的格式将其返回给用户。该程序的首个版本仅支持 ...

    人工智能 2021年08月18日 1367 0
  • 8月份Github上Java开源项目排行

    8月份GitHub上最热门的Java开源项目排行已经出炉啦,一起来看看上榜详情吧1dataeasehttps://github.com/dataease/dataease Star 2472DataEase是开源的数据可视化分析工具,帮助用户快速分析数据并洞察业务趋势,从而实现业务的改进与优化。DataEase支持丰富的数据源连接,能够通过拖拉拽方式快速制作图表,并可以方便的与...

    Java 2021年08月18日 1154 0
  • 推荐!从零设计所见即所得的H5编辑器 PHP

    推荐!从零设计所见即所得的H5编辑器

    前言前段时间笔者一直忙于数据可视化方面的工作,比如如何实现拖拽式生成可视化大屏,如何定制可视化图表交互和数据导入方案等,这块需求在B端企业中应用非常大,所以非常有探索价值。本篇文章并非和数据可视化相关,而是通过抽象技术底层,将其应用于H5页面可视化搭建上,通过技术的手段实现拖拽式生成H5页面。这块也有非常多的应用场景,比如我们需要开发一个移动端网站,一个H5营销页面,H5活动页...

    PHP 2021年08月17日 1416 0
  • Vue.js 3.2 关于响应式部分的优化

    Vue 3 正式发布距今已经快一年了,相信很多小伙伴已经在生产环境用上了 Vue 3 了。如今,Vue.js 3.2 已经正式发布,而这次 minor 版本的升级主要体现在源码层级的优化,对于用户的使用层面来说其实变化并不大。其中一个吸引我的点是提升了响应式的性能:More efficient ref implementation (~260% faster read / ~5...

    Vue 2021年08月16日 1185 0
  • 认识工作流程引擎

    相关概念BPM:Business Process Modeling,业务管理流程,是对实现生活工作中的流程问题进行抽象建模来推导解决方案。BPMN:Business Process Model and Notation,一种流程建模描述语言,是业务流程建模的一种标准注解BPMN2.0:专业组织和团体发布的一套标准或规范,定义业务流程的符号以及模型,确保流程的定义实现可移植性Wf...

    Java 2021年08月16日 1012 0
  • 授权码模式(authorization code)获取access_token

    1.oauth2获取access_token的几种方式:简化模式(implicit):在redirect_url中传递access_token,oauth客户端运行在浏览器中。密码模式(password):将用户名和密码传过去,直接获取access_token。客户端模式(client credentials):用户向客户端注册,然后客户端以自己的名义向“服务端”获取资源。授权...

    Java 2021年08月16日 2606 0
  • Ubuntu搭建Mysql+Keepalived高可用(双主热备)

    Mysql5.5双机热备实现方案安装两台Mysql安装Mysql5.5sudo apt-get update apt-get install aptitude aptitude install mysql-server-5.5 或 sudo apt-cache search mariadb-server apt-get install -y mariadb-server-5....

    MySQL 2021年08月16日 1291 0
  • Uni-App一套代码多端(iOS、Android、H5、以及各种小程序)运行

    了解 Uni-Appuni-app 是一个使用 Vue.js 开发所有前端应用的框架,开发者编写一套代码,可发布到iOS、Android、H5、以及各种小程序(微信/支付宝/百度/头条/QQ/钉钉)等多个平台。即使不跨端,uni-app同时也是更好的小程序开发框架。uni-app 是由 DCloud 公司打造的,DCloud公司拥有340万开发者用户,旗下uni-app有5万+...

    Android 2021年08月16日 2568 0
  • Mozilla Firefox 92开始通过阻止不安全连接的下载项来增强安全性

    最近发布的Firefox 91在私人浏览模式中启用了HTTPS-only模式。随着下一个Firefox 92版本的推出,Firefox可能会通过阻止混合不安全的下载来进一步提高安全性。此前因为提供了对Google安全浏览的支持,Firefox浏览器已经阻止了危险的、潜在的不需要的和不常见的下载。现在,Mozilla正在进一步扩大Firefox浏览器的下载保护,通过直接在下载面板...

    技术资讯 2021年08月13日 1202 0
  • 高并发高性能的定时器实现

    前言我们经常都会碰到延迟任务,定时任务这种需求。在网络连接的场景中,常常会出现一些超时控制。随着连接数量的增加,这些超时任务的数量往往也是很庞大的。实现对大量任务的超时管理并不是一个容易的事情。几种定时任务的实现java.util.TimerJDK 在 1.3 的时候引入了Timer数据结构用于实现定时任务。Timer的实现思路比较简单,其内部有两个主要属性:TaskQueue...

    Java 2021年08月13日 1075 0
  • Spring 中 @Component、@Service 等注解如何被解析?

    前言@Component和@Service都是工作中常用的注解,Spring如何解析?1.@Component解析流程找入口Spring Framework2.0开始,引入可扩展的XML编程机制,该机制要求XML Schema命名空间需要与Handler建立映射关系。该关系配置在相对于classpath下的/META-INF/spring.handlers中。如上图所示 Con...

    Java 2021年08月12日 1412 0
  • SpringBoot的核心注解

    前言springboot的核心就是注解。springboot通过各种组合注解,极大地简化了spring项目的搭建和开发。在springboot中有一些注解是其中的关键,必须掌握。@Configuration@Configuration并不是一个新的注解,在Spring3.0时已经存在了。@Configuration用于定义配置类,可替换xml配置文件,被注解的类内部包含有一个或...

    SpringBoot 2021年08月12日 1252 0
  • MyBatis 执行流程及源码解析

    我们在日常工作中广泛使用mybatis作为数据持久层框架, 但是mybatis的执行流程是怎么样的,你了解过吗。本文将从源码角度,带你分析mybatis的工作原理。先看一个简单的例子,以Service调用Mapper接口为例:public interface StudentMapper { @Select("select * from student") pub...

    Java 2021年08月12日 1292 0
  • Spring Security 两种资源放行策略,千万别用错了

    事情的起因是这样,有小伙伴在微信上问了一个问题:就是他使用 Spring Security 做用户登录,等成功后,结果无法获取到登录用户信息,松哥之前写过相关的文章(奇怪,Spring Security 登录成功后总是获取不到登录用户信息?),但是他似乎没有看懂。考虑到这是一个非常常见的问题,因此我想今天换个角度再来和大伙聊一聊这个话题。Spring Security 中,到底...

    SpringBoot 2021年08月12日 1476 0
  • 线上MySQL读写分离,出现写完读不到问题如何解决

    今天我们来详细了解一下主从同步延迟时读写分离发生写后读不到的问题,依次讲解问题出现的原因,解决策略以及 Sharding-jdbc、MyCat 和 MaxScale 等开源数据库中间件具体的实现方案。写后读不到问题MySQL 经典的一主两从三节点架构是大多数创业公司初期使用的主流数据存储方案之一,主节点处理写操作,两个从节点处理读操作,分摊了主库的压力。但是,有时候可能会遇到执...

    MySQL 2021年08月11日 1161 0
  • 高性能 Nginx HTTPS 调优 - 如何为 HTTPS 提速 30%

    为什么要优化 Ngin HTTPS 延迟Nginx 常作为最常见的服务器,常被用作负载均衡 (Load Balancer)、反向代理 (Reverse Proxy),以及网关 (Gateway) 等等。一个配置得当的 Nginx 服务器单机应该可以期望承受住 50K 到 80K 左右每秒的请求,同时将 CPU 负载在可控范围内。但在很多时候,负载并不是需要首要优化的重点。比如对...

    Nginx 2021年08月11日 1234 0
  • JavaScript 中的事件委托

    JavaScript 中一个重要的方法就是事件委托(又叫事件代理)。事件委托将事件侦听器添加到一个父级元素上,这样就只用添加一次事件侦听器,可以避免向 (父级元素内)很多特定的 DOM 节点添加多个事件侦听器,减少了内存消耗,从而优化程序性能。而这个添加在父元素上的事件侦听器通过事件冒泡的事件流机制以分析查找子元素的匹配项。事件委托的概念解释并不复杂,但很多人不明事件委托到底是...

    Javascript 2021年08月11日 1232 0
  • 尤雨溪凌晨官宣:Vue 3.2 已发布 Vue

    尤雨溪凌晨官宣:Vue 3.2 已发布

    今日凌晨,尤雨溪在微博平台官宣 Vue 3.2 已发布,并表示:<script setup> + TS + Volar = 真香Vue 3.2 版本包括许多重要的新功能和性能改进,但并不包含重大更改。新的单文件组件功能:`<script setup>` 是一种编译时语法糖,可在 SFC 内使用 Composition API 时极大地提升工作效率。`&l...

    Vue 2021年08月10日 1421 0
  • idea可以打包但无法运行debug,提示找不到符号

    今天使用IDEA时遇到一个非常奇怪的问题,install和package时都正常,就是无法run或debug。弄了很久,都没有解决。直到找到这个方法,就记录下来:   1、在Idea Terminal 中 输入命令 mvn idea:idea   2、回到IDEA菜单栏,File -> Invadiate Cache/Restart ,清除缓...

    java技术 2021年07月30日 1395 0
  • idea可以install或package但不能debug或run

    今天使用IDEA时遇到一个非常奇怪的问题,install和package时都正常,就是无法run或debug。弄了很久,都没有解决。直到找到这个方法,就记录下来:   1、在Idea Terminal 中 输入命令 mvn idea:idea  2、回到IDEA菜单栏,File -> Invadiate Cache/Restart ,清除缓存,重启然...

    技术文章 2021年07月30日 130 0
  • 微服务网关如何防止雪崩?阿里开源项目之Sentinel限流、熔断

    目录前言Sentinel是什么部署Sentinel DashboardSentinel对网关的支持网关限流规则网关流控实现原理总结前言为什么需要服务熔断和降级?微服务是当前业界的一大趋势,原理就是将单一职责的功能模块独立化为子服务,降低服务间的耦合,服务间互相调用。但是这样也会出现一些问题:上图中大量微服务互相调用,存在大量的依赖关系,难免会出现某个服务故障,如ServiceD...

    微服务 2021年07月28日 1710 0
  • MySQL索引是怎么支撑千万级表的快速查找?

    前言在 MySQL 官方提到,改善操作性能的最佳方法 SELECT 在查询中测试的一个或多个列上创建索引。索引条目的作用类似于指向表行的指针,从而使查询可以快速确定哪些行与WHERE子句中的条件匹配,并检索这些行的其他列值。所有MySQL数据类型都可以建立索引。尽管可能会为查询中使用的每个可能的列创建索引,但不必要的索引会浪费空间和时间,使MySQL难以确定要使用的索引。索引还...

    MySQL 2021年07月28日 1736 0
  • 获取linux内存、cpu、磁盘IO等信息脚本及其原理详解

    一、脚本今天主要分享一个shell脚本,用来获取linux系统CPU、内存、磁盘IO等信息。#!/bin/bash # 获取要监控的本地服务器IP地址 IP=`ifconfig | grep inet | grep -vE 'inet6|127.0.0.1' | awk ...

    Linux 2021年07月28日 1349 0