TypechoJoeTheme

王子博客

用户名
密码
用户名
邮箱
搜索到 18 篇与 Java 的结果 ———
2023-07-20

ES的集群部署

ES的集群部署
一、集群部署操作1、先下载ES安装包到一台服务器上2、配置文件详解2.1、elasticsearch.yml配置2.1.1、cluster.name与node.name2.1.2、node.master与node.data2.1.3、network.host2.1.3、path.data(要加上全路径/usr/local/elasticsearch-7.6.2,否则会找不到路径)2.1.3、path.logs(要加上全路径/usr/local/elasticsearch-7.6.2,否则会找不到路径)2.1.4、discovery.seed_hosts 2.1.5、action.destructive_requires_name2.1.6、gateway.recover_after_nodes2.1.7、cluster.initial_master_nodes2.1.8、http.port2.2、elasticsearch-env配置2.3、jvm.options配置2.4、Linux服务器的一些硬件配置2.4.1、/etc/sysctl.conf配置vm.max_map_cou...
王子
2023-07-20

Elasticsearch

143 阅读
0 评论
2023年07月20日
143 阅读
0 评论
2022-09-21

RABC权限系统,你会设计吗,老王教你设计

RABC权限系统,你会设计吗,老王教你设计
RBAC权限分析RBAC 全称为基于角色的权限控制,本段将会从什么是RBAC,模型分类,什么是权限,用户组的使用,实例分析等几个方面阐述RBAC思维导图绘制思维导图如下什么是RBACRBAC 全称为用户角色权限控制,通过角色关联用户,角色关联权限,这种方式,间阶的赋予用户的权限,如下图所示对于通常的系统而言,存在多个用户具有相同的权限,在分配的时候,要为指定的用户分配相关的权限,修改的时候也要依次的对这几个用户的权限进行修改,有了角色这个权限,在修改权限的时候,只需要对角色进行修改,就可以实现相关的权限的修改。这样做增加了效率,减少了权限漏洞的发生。模型分类对于RBAC模型来说,分为以下几个模型 分别是RBAC0,RBAC1,RBAC2,RBAC3,这四个模型,这段将会依次介绍这四个模型,其中最常用的模型有RBAC0.RBAC0RBAC0是最简单的RBAC模型,这里面包含了两种。用户和角色是多对一的关系,即一个用户只充当一种角色,一个角色可以有多个角色的担当。用户和角色是多对多的关系,即,一个用户可以同时充当多个角色,一个角色可以有多个用户。 此系统功能单一,人员较少,这里举个栗...
王子
2022-09-21

Java,springboot,技术与技巧

222 阅读
0 评论
2022年09月21日
222 阅读
0 评论
2022-09-21

为了使用新技术,我从 Java8 升到了 Java11

为了使用新技术,我从 Java8 升到了 Java11
把一个项目从 Java 8 迁移到 Java 11,我该怎么办呢?最简单的办法,当然是直接强行升级,遇到一个错就改一个错,别看它 low,但是对于一个小型且非核心的项目来说,已经足够了。当然,对于比较重要的项目,且代码行数不少的情况,最标准的姿势就是对着官方文档,就是这份 Java 11 的迁移说明文档。https://docs.oracle.com/en/java/javase/11/migrate/index.html里面详细说明了 Java 8 到 Java 11 可能出现的兼容性问题,并给出了修改措施或建议。理论上来说,对着官方文档一个字一个字去读,并且把代码的每一行都肉眼扫描一遍,该修改的地方就做出修改,肯定是可以完美迁移的。但人毕竟不是机器,自己写的代码可能就有上千甚至上万行,还得算上引入的第三方类库,这显然就不是人干的事情了。所以,就有一款神奇的工具,可以帮我们自动扫描 JDK 升级过程中需要修改或注意的地方,并直接生成一个可视化的 HTML 报告,厉害了!它是什么这款工具的名字叫做 EMT4J,即 Eclipse Migration Toolkit for Jav...
王子
2022-09-21

Java,技术与技巧

372 阅读
0 评论
2022年09月21日
372 阅读
0 评论
2022-09-14

使用Spring AOP实现异步文件上传

使用Spring AOP实现异步文件上传
背景相信很多系统里都有这一种场景:用户上传 Excel,后端解析 Excel 生成相应的数据,校验数据并落库。这就引发了一个问题:如果 Excel 的行非常多,或者解析非常复杂,那么解析+校验的过程就非常耗时。如果接口是一个同步的接口,则非常容易出现接口超时,进而返回的校验错误信息也无法展示给前端,这就需要从功能上解决这个问题。一般来说都是启动一个子线程去做解析工作,主线程正常返回,由子线程记录上传状态+校验结果到数据库。同时提供一个查询页面用于实时查询上传的状态和校验信息。进一步的,如果我们每一个上传的任务都写一次线程池异步+日志记录的代码就显得非常冗余。同时,非业务代码也侵入了业务代码导致代码可读性下降。从通用性的角度上讲,这种业务场景非常适合模板方法的设计模式。即设计一个抽象类,定义上传的抽象方法,同时实现记录日志的方法。例如://伪代码,省略了一些步骤 @Slf4j public abstract class AbstractUploadService<T> { public static ThreadFactory commonThreadFactor...
王子
2022-09-14

Java,技术与技巧

192 阅读
0 评论
2022年09月14日
192 阅读
0 评论
2022-09-05

一道面试题,GET 请求能传图片吗?

一道面试题,GET 请求能传图片吗?
从一道面试题说起:GET 请求能传图片吗?「前言」曾经遇到的面试题,觉得挺有意思,来说下我的答案及思考过程。首先,我们要知道的是,图片一般有两种传输方式:base64 和 file对象。base64 图片图片的base64编码想必大家都见过:base64 的本质是字符串,而 GET 请求的参数在 url 里面,所以直接把图的 base64 数据放到 url 里面,就可以实现 GET 请求传图片。input 输入框拿到的图是 file 对象,图片 file 对象转 base64 :// img参数:file文件或者blob const getBase64 = img => { return new Promise((resolve,reject) => { const reader = new FileReader(); reader.onload = e => { resolve(e.target.result); }; reader.onerror = e => reject(e); reader....
王子
2022-09-05

Java

119 阅读
0 评论
2022年09月05日
119 阅读
0 评论