- 博客(14)
- 收藏
- 关注
原创 【Java】ConcurrentHashMap 在什么情况下不能保证线程安全呢?
【代码】【Java】ConcurrentHashMap 在什么情况下不能保证线程安全呢?
2024-10-30 11:06:32 401
原创 基于SpringBoot + Redis + Vue实现图片滑动以及文字点选的人机验证服务
人机验证是一种用于区分用户是真实的人类还是自动化的软件机器人(如僵尸网络或爬虫)的技术。这种技术广泛应用于互联网服务中,以保护网站和服务免受恶意软件和垃圾信息的侵扰,同时也能够帮助网站维护者确认用户的合法性,提高账户的安全性常见的人机验证都要。
2024-10-29 11:44:00 887
原创 MySQL 死锁
数据库的死锁是指在数据库事务处理过程中,两个或多个事务因互相等待对方持有的锁而无法继续执行的现象。这种情况下,事务会无限期地等待,直到外部干预才能恢复正常。
2024-10-28 14:51:05 911
原创 【接口幂等】
接口幂等是指一个操作执行一次和执行多次的效果是一样的,那么这个操作就是幂等的。例如,在数据库操作中,删除一条记录的操作是幂等的,因为无论你执行多少次删除同一记录的操作,结果都是该记录被删除一次,查询接口也是幂等的,无论你查询多少次,查询操作也不会更改任何状态在HTTP协议中,一些方法如GET和DELETE被认为是幂等的,而POST通常不是幂等的GET:获取资源,可以安全地重复调用而不改变状态。DELETE:删除资源,也是幂等的,删除一次和多次结果相同。
2024-09-23 10:55:40 880
原创 SpringBoot结合Elasticsearch实现个性化搜索推荐模型-05【接入ALS模型和LR模型实现推荐 完结篇】
我们在第四章的时候, 完成了ALS模型和LR模型的构建,并且ALS模型我们将推荐的召回结果存储到了MYSQL当中,接下来我们将正式结合我们的ALS召回模型和LR逻辑回归模型完成推荐,在此之前首先要区分一下我们所做的搜索和推荐是独立的,搜索仍然是之前的queryByElasticSearch接口, 而推荐是一个全新的接口,也就是说用户没有指明我要搜索时,就是推荐接口返回数据,一旦用户有搜索意图了,就是搜索接口返回数据。
2024-09-20 11:03:48 376
原创 SpringBoot结合Elasticsearch实现个性化搜索推荐模型-04【推荐模型训练】
当用户在进行关键词搜索时,我们可以通过关键词找出对应的特征,然后将根据特征将数据进行召回,但是用户如果什么关键词都没有输入怎么办呢?
2024-09-18 14:14:01 1070
原创 SpringBoot结合Elasticsearch实现个性化搜索推荐模型-03
接下来就是adapter了,但是在启动前我们要想一下,我们在SpringBoot接入ElasticSearch的时候讲过,ElasticSearch对版本是很敏感的,我们使用的ElasticSearch是7.3.0,那么Canal中间件在与ElasticSearch交互式也应该是7.3.0,Canal对接ElasticSearch跟之前接入SpringBoot的方式一样,都是通过引入pom依赖来完成的,因为Canal也是java项目,那我们就得看下源代码中对应ElasticSearch声明的版本号是什么。
2024-09-13 11:02:49 848
原创 SpringBoot结合Elasticsearch实现个性化搜索推荐模型-02
试想一下,假设一个商家的评分是5分,距离用户却有20公里远,在基于位置打分的时候我们明明已经给了它一个极低的分值,但是由于他是5分商家,单个因子的权重过高了,导致它综合的分数名列前茅,直接被优先推荐了出来,这是不合理的,所以我们在带入评分的时候,会有一个归一化处理,也就是说我不管你的评分是几分,统一在1分的前提下开始计算,尽量不让评分干扰过多的综合打分的结果。上一篇文章中,我们在构建索引的时候,有一个location字段,是将经纬度以逗号拼接的方式进行了存储,这个location字段将是关键所在。
2024-09-10 09:25:21 680
原创 SpringBoot结合Elasticsearch实现个性化搜索推荐模型-01
对于我们传统的应用来说, 常见的搜索无非是用户通过前端发起请求给后端, 后端去DataBase中比如MySQL, Oracle 中完成查询,并返回,这个查询可能是精确匹配,模糊匹配等等,但是这样的搜索功能可以被称之为搜索引擎吗?
2024-09-06 16:43:35 1196 1
原创 通过Jenkins实现Java项目的构建和自动部署
我是Jenkins单独部署了一台服务器, 项目本身呢也是单独部署一台服务器, 也就是两台服务器, 这里呢举例A机器部署Jenkins,B机器部署你的项目,A机器需要JDK和MAVEN和GIT, JDK和maven都是构建项目要用的,而GIT呢是为了从你的远程仓库(Gitlab/Bitbucket等等)拉取代码, 对应B服务器你的项目部署需要什么资源你就需要安装什么, 比如最基本的jdk, 因为肯定是要启动项目的。前置脚本为了杀死原先的java进程 清理原先的旧文件。选择你项目需要的就行了我的是3.6.1。
2024-08-23 11:55:12 800
原创 【Nacos】SpringCloud连接不上远程Nacos问题排查
9848 端口: 这个端口是 Nacos 客户端(如微服务)与 Nacos 服务端之间进行 gRPC 请求和连接时使用的端口, 客户端通过此端口向服务端发起连接请求、订阅服务列表变更、获取配置更新等操作。首先应该确保Nacos的安全组端口是开放的, 在2.0.0版本之前, 只需要开放8848端口就可以, 但是2.0.0版本以上, 则需要同时开放三个端口号, 分别为8848/9848/9849。9849 端口: 用于服务端之间的gRPC通信,比如集群内节点间的数据同步和心跳检测等。ping 你的服务器ip。
2024-01-31 14:37:23 4521
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人