Activiti7-基本使用
参考文献
Activiti官网文档
Activiti优点
易于使用和学习:Activiti提供了易于使用的图形化设计器和Web控制台,使得工作流的设计和管理变得非常简单,同时它的文档和社区也非常齐全,可以快速解决问题和学习相关知识。
支持标准BPMN 2.0规范:Activiti完全实现了BPMN 2.0规范中的所有核心元素,可以实现复杂的业务流程,并保证了流程的可移植性和兼容性。
易于集成:Activiti可以很容易地与Spring、Hibernate、MyBatis等常用的Java开发框架进行集成,并提供了丰富的API和扩展点,可以方便地扩展和自定义工作流引擎,满足不同场景下的需求。
支持分布式部署:Activiti支持分布式部署,可以将流程引擎部署在不同的节点上,实现高可用性和水平扩展。
面向开发者:Activiti是一个面向开发者的工作流引擎框架,提供了许多与其他系统集成的插件,例如,可以集成到Liferay、Alfresco等内容管理系统中。
社区活跃:Activiti拥有庞大的开发者社区,使得开发者可以快速解决问题和分享经验
基本概念
XML
Process
id ...
RabbitMQ-开启消息追踪
开启消费记录功能
123rabbitmq-plugins enable rabbitmq_tracingrabbitmqctl trace_on
Nginx-使用实例
通过阿里云免费SSL证书配置HTTPS
登录阿里云网页端,进入SSL证书模块,选择免费证书,创建证书,填写好相关信息后,提交审核.
审核通过后,下载证书,选择Nginx,可参考阿里云帮助手册,进行部署
把下载好的证书上传至服务器,可以在nginx相关目录中新建文件夹cert用于存放证书相关信息
然后,修改nginx的配置信息,可新建一个conf.d目录里面存放单独的配置文件
1234mkdir conf.dchmod 777 conf.d# 新建配置文件vim xxx.xxx.cn.conf
12345678910111213141516171819202122232425# 注意要保持server_name的值与之前申请的证书所填写的一致,不然会出现"您与此网站之间建立的连接并非完全安全"即证书域名和设置的域名不一致问题server { listen 443 ssl; server_name xx.xxxxx.cn; #需要将yourdomain.com替换成证书绑定的域名. ssl_certificate ../.. ...
工具-Jenkins
参考文献
Jenkins进阶系列之——10Publish Over SSH插件
使用Yum安装后,默认文件目录
123456789/usr/lib/jenkins/jenkins.war WAR包/etc/sysconfig/jenkins 配置文件/var/lib/jenkins/ 默认的JENKINS_HOME目录/var/log/jenkins/jenkins.log Jenkins日志文件/etc/init.d/jenkins jenkins启动脚本
配置文件: /etc/sysconfig/jenkins
默认工作空间: JENKINS_HOME="/var/lib/jenkins"
启动目录: /usr/lib/jenkins
修改Java目录
查看Java路径: which java
12[root@holelin jenkins]# which java/usr/local/jdk1.8/bin/java
配置:
1[root@holelin jenkins]# vim /etc/rc.d/init.d/jenkins
...
网络基础-TCP协议(二)
参考文献
编程必备基础 大话HTTP协议[慕课]
趣谈网络协议
WireShark数据包分析实战(第三版)
TCP-RFC793
TCP/IP详解 卷1: 协议
图解网络-小林coding
[UDP-RFC768]
TCP重传机制
TCP实现可靠传输的方式之一是通过序列号与确认应答.
在TCP中,当发送端的数据到达接收主机时,接收端主机会返回一个确认应答消息,表示已收到消息.
常见的重传机制有:
超时重传
快速重传
SACK
D-SACK
超时重传
在发送数据时,设定一个定时器,当超过指定的时间后,没有收到对方的ACK确认应答报文,就会重发该数据.
TCP会在以下两种情况发生超时重传:
数据包丢失: 数据包未成功发送
确认应答丢失: 确认应答未成功发送
RTT(Round-Trip 往返时延): 数据从网络一端传送到另一端所需的时间,也就是包的往返时间.
超时重传时间是以RTO(Retransmission Timeout 超时重传时间)表示
在重传的情况下,超时时间RTO较长或较短会出现不同的情况
当超时时间RTO较大时,重发就慢,丢了很久才重发,没效率 ...
网络基础-HTTP协议
参考文献
编程必备基础 大话HTTP协议[慕课]
趣谈网络协议
WireShark数据包分析实战(第三版)
HTTP/1.1-RFC2616
TCP-RFC793
TCP/IP详解 卷1: 协议
图解网络-小林coding
UDP-RFC768
HTTP
历史
20世纪60年代,美国国防部高等研究计划署(ARPA)建立ARPA网,它被认为是如今互联网的始祖.
1989年,任职于欧洲核子研究中心(CERN)的Tim Berners-Lee发表了一篇论文,提出了在互联网上构建超链接文档系统的构想.这篇论文中确立了三项关键技术:
URI: 即统一资源标识符,作为互联网上资源的唯一身份.
HTML: 即超文本标记语言,描述超文本文档.
HTTP: 即超文本传输协议,用来传输超文本.
HTTP/0.9,结构比较简单,为了便于服务器和客户端处理,它也采用了纯文本格式.
HTTP/1.0,HTTP/1.0 版本在 1996 年正式发布.多方面增强了0.9版本:
增加了 HEAD、POST 等新方法;
增加了响应状态码,标记可能的错误原因;
引入了协议版本号概念;
引入了 HTTP ...
网络基础-TCP协议(一)
参考文献
编程必备基础 大话HTTP协议[慕课]
趣谈网络协议
WireShark数据包分析实战(第三版)
TCP-RFC793
TCP/IP详解 卷1: 协议
图解网络-小林coding
UDP-RFC768
计算机网络通关29讲
Does the original TCP connection still exist after disconnecting the network cable?
https://wenfh2020.com/category/#kernel
TCP协议
TCP (Transport Control Protocol)是一个传输层协议,提供 Host-To-Host 数据的可靠传输,支持全双工,是一个连接导向的协议.
TCP 提供的是 Host-To-Host 传输,一台主机通过 TCP 发送数据给另一台主机.这里的主机(Host)是一个抽象的概念,可以是手机、平板、手表等.收发数据的设备都是主机,所以双方是平等的.
TCP 要实现主机到主机通信,就需要知道主机们的 网络地址(IP 地址),但是 TCP 不负责实际地址到地址(Address-To- ...
Wireshark-网络抓包(一)
参考文献
WireShark数据包分析实战(第三版)
理论
监听网络线路
在交换式网络中进行嗅探
在一个交换式网络中从一个目标设备捕获网络流量的基本方法有四种:端口镜像,集线器接出(hubbing out),使用网络分流器和ARP缓存污染攻击.
使用端口镜像,必须能够通过命令行或Web管理界面来访问目标设备所连接的交换机,并且该种交换机必须支持端口镜像的功能以及有一个空闲的端口.
通用端口
制造商
命令
思科
set span <source port> <destination port>
凯创
set port mirroring create <source port> <destination port>
北电
port-mirroring mode mirror-port <source port> monitor-port <destination port>
集线器输出
需要将目标设备和分析系统分段到同一网络段中,然后把它们直接插入到一个集线器上.
操作步骤 ...
数据库表设计-SPU/SKU
参考文献
SKU 和 SPU 有什么区别?
名词解释
SPU
Standard Product Unit (标准产品单位);
商品信息聚合的最小单位,是一组可复用,易检索的标准化信息集合,该集合描述了一个产品的特性;
属性值,特性相同的商品就可以称为一个SPU;
SPU 是由品牌+型号+关键属性构成的
**信息聚合:**意味着有识别度的信息被用来作为不同SPU的区分点;不是所有属性,使用的属性值是能够有区分度的关键属性值;
**易检索:**信息聚合与易检索这两个说明,是通过关键属性+属性值的聚合来实现易检索这个目的;目的与使用场景相关联,并非万古不变;哪些属性和属性值会被选为区分SPU的关键属性是会随着场景变化的; 但对于一些场景,已经是共识;比如电商销售,对于标品基本都会选择品牌+型号+关键属性;这也是很多年前我所得到的解释。
标准化的信息集合:说明SPU的本质是信息集合,是一个抽象概念,并非是看得见的东西。比如格力空调 KFR-25GW/E;
SKU
Stock Keeping Unit 库存量单位;
库存进出计量的单位,可以是以件,盒,托盘等为单位;
物理上不可分割 ...
MyBatis(三)-数据类型映射
参考文献
深入剖析 MyBatis 核心原理 – 杨四正
数据类型映射
数据库类型
Java类型
VARCHAR
java.lang.String
CHAR
Java.lang.String
BLOB
java.lang.byte[]
INTEGER UNSIGNED
java.lang.Long
TINYINT UNSIGNED
java.lang.Integer
SMALLINT UNSIGNED
java.lang.Integer
MEDIUMINT UNSIGNED
java.lang.Integer
BIT
java.lang.Boolean
BIGINT UNSIGNED
java.math.BigInteger
FLOAT
java.lang.Float
DOUBLE
java.lang.Double
DECIMAL
java.math.BigDecimal
TypeHandler
MyBatis 中的类型转换器就是 TypeHandler 这个接口,其定义如下:
12345678910111 ...