springboot集成junit
mono是gateway使用的一种reactor响应式框架,用于异步编程
lombok有构造者模式的逐渐@Builder
文件操作包括hutool以及path类
包括字节流和字符串,每一种流又包括节点流和处理流
http库包含restTemplate,okhttp3,以及httpclient
excel操作包括easyDB
ftp操作包括jsch
摘要算法用于密码保存,不可能所以服务端也不知道原密码
数字签名是数字证书的应用之一,签名是将明文进行摘要,再进行私钥加密以防止数据被篡改
对称加密速度比非对称快
base64编码的作用是将字节流编码为ASCII字符串方便网络传输
后端服务自启动可以在system路径写service脚本
jwt和session是实现免登陆的两种方案,jwt的优势在于服务端无状态,以及不依赖cookie通过localStorage存储移动端友好,缺点是无法对发出去的token自由变更权限,现在常用的方案为jwt替代cookie生成不可篡改的token,redis替代session实现分布式状态存储
常用的授权模型为RBAC基于角色的权限访问控制
多后端单点登录使用redis或IP哈希实现
各服务域名不同时,单点登录需要一个认证中心服务,客户端请求认证并校验通过后返回带有效期的ticket,客户端再通过ticket向认证中心请求用户信息
oAuth2是SSO的统一解决方案
jenkins新建任务有freestyle和pipeline两种类型,pipeline通过git中的jenkinsfile定义流水线
git cherry pick可以重复某次提交
ssh实现免登陆推送时,在本地生成公钥后复制到github上
svn通过checkout检入文件
逆向工程用于自动生成前后端代码
jackson通过TypeReference解决泛型擦除问题
yaml文件可以java对象互转
logback-spring.xml可以设置日志级别,日志格式化,日志的滚动策略
maven仓库包括本地,私服以及中央仓库
pom对象中properties标签对变量进行管理
打包时通过resource标签配置需要打包的resource路径下的文件
打包时,package到target,install到本地仓库,deploy到私服
SOA定义为将程序不同功能通过中立协议链接,分类为rest以及SOAP即webService
knife4j继承了spring的swagger
参数校验规则遵循JSR303规范,包括非空,分组以及自定义校验
ng的作用是负载均衡以及静态资源代理,nginx.conf配置文件包含了http块,upstream定义了负载均衡,location定义url匹配规则
keepalive是的高可用方案,在keepalive脚本里检查ng状态并重启
接口幂等可以通过update乐观锁以及防重token实现
本地调度通过cron表达式实现,springTask支持cron表达式,并且通过建表shedlock支持数据库分布式锁
xxl-job可以实现分布式调度,调度中心路由策略一般是第一个,也有分片广播执行策略
当然也可以通过MQ的延时队列或者redis的发布订阅机制实现延时调度
canel是一个mysql实时数据同步的ETL库
jfrog是一个统一存放jar包或镜像的制品库
easyRules是一个规则引擎
jmx工具包括jconsole,jvisualvm以及arthas,jcstress以及jmeter是压测工具
吞吐量包括qps,tps以及hps
常见的流程引擎包括camunda,activity以及flowable。camunda包含一个bpmn流程设计器以及一个platform服务端。设计器设计任务节点如服务任务和用户任务,服务端包括运行时服务和任务服务,服务端通常嵌入java程序。