- 博客(361)
- 收藏
- 关注
原创 数字签名与非对称加密的区别
数字签名的公钥本身无法直接判断数据在传输过程中是否被篡改,但结合数字签名和散列函数,可以验证数据的完整性。- **数字签名**:验证信息的完整性和来源,确认信息由私钥持有者发送,且未被篡改。- **非对称加密**:保证信息的机密性,只有持有私钥的人才能解密信息。- **数字签名**:身份认证、防止抵赖,确保信息的真实性和完整性。- **非对称加密**:安全地交换密钥,保护敏感信息的传输。- **数字签名**:用私钥对信息进行签名,公钥验证签名。- **非对称加密**:用公钥加密信息,私钥解密。
2025-03-16 17:23:25
277
原创 手搓规则引擎
亮点:支持Jexl 和 Groovy ,有需要其它动态脚本解析 还可以自己实现扩展。核心代码 :定义工作流环节 和实现业务逻辑,也是主要开发地方。大概架构是这样,实际有些不同。核心代码:从工厂规则脚本解析器。核心代码:加载规则文件。核心代码:运行工作流。
2025-03-02 05:26:29
289
原创 Jexl 表达式语言引擎
**规则引擎**:规则引擎是一种软件组件,它允许将业务规则从应用程序代码中分离出来,使得这些规则可以在不修改应用程序代码的情况下进行管理和修改。- **与规则引擎的集成**:JEXL可以与各种规则引擎集成,为这些规则引擎提供强大的表达式评估功能。因此,JEXL与规则引擎之间的关系是相辅相成的,JEXL为规则引擎提供了表达和执行规则的能力,而规则引擎则为JEXL提供了一个应用场景,使得这些表达式能够在复杂的业务逻辑中发挥作用。- JEXL可以作为规则引擎的一部分,用于表达和执行这些规则。
2025-02-27 01:33:40
219
原创 SpringBoot项目打war包要点
1.修改pom文件packaging。5.修改nginx配置文件,构建集群。4.修改外部tomcat配置文件。2.不使用内置tomcat。
2025-01-18 22:40:42
348
原创 限流算法再回顾
总结:限流算法用于控制系统在特定时间窗口内的请求数量,以保持系统的可用性和稳定性;不同的限流算法各有优缺点,选择合适的算法需要根据具体应用场景和需求来决定。
2025-01-18 07:58:18
388
原创 Linux查看日志命令
1.cat命令适合查看简短的文件,如配置文件application.properties,当然也可以看日志。首先cd进入服务容器里文件所在目录。3.vi+/(推荐)2.tail-f命令。
2025-01-18 04:52:35
932
原创 Docker 搭建mysql 连接超时问题,xxl-job启动mysql连接报错,禁用dns
2.启动xxl-job会报错,网上有人mysql驱动与数据库不匹配,可以忽略,因为我尝试修改连接超时由原来的10秒改成60秒,虽然慢但不报错了,说明问题是连接尝试导致的。首先找到docker启动mysql容器的脚本,确定外部挂载配置目录(没有挂载目录,需要进入mysql容器修改,这里不赘述,自行百度)1.本地连接Navicat报错信息,猜测是navicat默认连接超时导致的,后面换成idea一个插件虽然慢但连接上了。修改mysql配置,skip-name-resolve禁用dns解析。
2025-01-18 03:15:29
1206
原创 余弦相似度
余弦相似度(Cosine Similarity)是n维空间中两个n维向量之间角度的余弦。它等于两个向量的点积(向量积)除以两个向量长度(或大小)的乘积。第一步,分词。句子A:这只/皮靴/号码/大了。那只/号码/合适。句子B:这只/皮靴/号码/不/小,那只/更/合适。第二步,列出所有的词。这只,皮靴,号码,大了。那只,合适,不,小,很第三步,计算词频。句子A:这只1,皮靴1,号码2,大了1。那只1,合适1,不0,小0,更0句子B:这只1,皮靴1,号码1,大了0。那只1,合适1,不1,小1,更1。
2024-12-29 17:33:01
538
原创 mybatis-flex
MyBatis-Flex 采用独特的技术架构、相比同类框架(比如 MyBatis-Plus),MyBatis-Flex 的在增删改查等方面的。MyBatis-Flex 整个框架只依赖 MyBatis,再无其他任何第三方依赖。、批量操作,但不丢失 MyBatis 原有的任何功能。MyBatis-Flex 支持 CRUD、分页查询、性能均超越其 5~10 倍或以上。补充:mapper装配。
2024-11-17 19:50:05
427
原创 git 提交代码流程
缺点:多了一个步骤,就多了一次申请时间,首先在公仓申请合并到私仓,私仓同意合并,获取到公仓最新版本;缺点:因为放开了公仓的权限,如果直接push到公共仓库躲过代码公审,容易造成公仓污染。优点:简化操作,因为每次都可以直接pull都是最新代码。优点:不容易污染公仓。
2024-11-06 23:25:54
354
原创 HDFS上传下载命令
hadoop - /path1/test.txt / path2。上传:hadoop fs -put /path1/test.txt / path2。下载:hadoop fs -get /path2/test.txt / path3。
2024-10-19 09:34:33
516
原创 Hadoop集群搭建
================================ 进入正题=======================克隆剩下两台,安装第一台配置好ip ,检查机器之间的联同ping 一下。上传hadoop安装包 jdk安装包,这里安装jdk忽略不讲。先准备1台机器,配置好后再克隆2台,配置一样。建议配置ssh免密登录,参考。
2024-10-15 19:57:24
594
原创 ssh免密登录
4、slave1收到连接请求后,去授权文件里查找master的公钥,找到之后会随机生成一个id,并用公钥加密发送给master。5、master收到来自slave1加密的密文后,会用私钥解密,并把解密的结果返回给slave1。2、执行ssh-copy-id root@slave1 ,将公钥拷贝到slave1节点(6、slave1收到解密的结果后,会与之前生成的字符串比较,如果相同,则可以登陆成功。3、请求时:master向slave1发送连接请求时,会附带主机名、ip地址等信息。
2024-10-15 08:37:38
277
原创 linux jdk环境变量变量新配置方式
后面修改安装的目录 名称,让原来找不到开始配置java8,再source /etc/profile就好了。修改环境变量后 ,一直显示java8,无论怎么 source /etc/profile都用!
2024-10-14 16:46:17
425
原创 Zookeeper
管理肯定涉及一些操作,当记录的数据发生变化时,是不是要调用相应的回调函数;因为服务一般是集群部署,有时候不需要所有机器同时触发某逻辑,是不是需要。支持,所以Zookeeper自己也实现一套分布式锁。: 管理前是不是要先登记信息呀,所以它有服务注册发现功能(Zookeeper是基于观察者模式设计的分布式服务。),存储服务之间的数据;
2024-10-12 23:48:48
633
原创 服务端负载均衡和客户端负载
客户端的负载均衡还需要从注册中心获取集群部署的服务地址,其中客户的负载均衡器定时读取注册中心的IP和端口,然后缓存起来,这样以后可以先判断缓存IP和端口是否可用,可用就远程调用注册中心服务,从而减少网络IO的开销。
2024-10-11 23:57:59
447
原创 K8S真正删除pod
kubectl delete pod nginx-2756690723-hllbp 结果显示这个pod 是删除了,但k8s很快自动创建新的pod,但是新生成的pod还是会因为镜像拉取失败而无法启动。假设k8s的某个命名空间如(default)有一个运行nginx 的pod。真正删除pod应该是deployment。
2024-09-28 19:27:51
791
原创 SpringBoot项目定义Bean常见方式
2. @Component 及其衍生注解 (@Controller、@Service、@Repository)4.2 实现 ImportBeanDefinitionRegistrar 接口。1. spring原生的xml 配置bean 现在几乎淘汰,忽略!4.1 实现 ImportSelector接口。
2024-08-25 04:36:36
431
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人