置顶与热门

 2022/01/19   

Java  

示例代码: GitHub:https://github.com/Max-Qiu/demoGitee:https://gitee.com/Max-Qiu/demo 参考教程 JavaGuide:Java 并发常见知识点&面试题总结(进阶篇)JavaGuide:Atomic 原子类总结尚硅谷:互联网大厂高频重点面试题(第2季) 上文说道 volatile 关键字 不保证原子性,那么在不使用 synchronized 关键字 的情况下如何解决多线程安全问题呢?就是本文的主角:Atomic原子类 简介Atomic 中文是原子的意思。在这里指一个操作是不可中断的。即使是在多个线程一起执行的时候,一个操作一旦开始,就不会被其他线程干扰。 所以:原子类 是具有原子/原子操作特征的类。 并发包JUC(java.util.concurrent)的原子类都在java.util.concurrent.atomic中 示例运行如下代码: public class AtomicTest { @Test void test() { Date date = ne

0

 2020/02/12   

Java  Docker  

以OpenJDK8为例 仓库地址以及教程:https://hub.docker.com/_/openjdk 此镜像一般用于运行Java环境的项目 举例:有一个SpringBoot写的web项目,打包后的jar文件是demo.jar,项目使用的端口是8080 Dockerfile示例如下 ## 根据项目运行环境选择不同的jdk版 # jdk1.8 FROM openjdk:8u265-jdk # jdk11 # FROM openjdk:11.0.8-jdk # 设置容器时区 ENV TZ=Asia/Shanghai # 设置工作目录 WORKDIR / # 设置端口(非必写) EXPOSE 8080 # 拷贝程序 COPY demo.jar / # 运行 CMD java -jar demo.jar 制作镜像 docker build -t mydemo . 启动容器 docker run -d --name mydemo -p 8080:8080 mydemo

1363

 2021/08/08   

Windows  Linux  VPN  

友情提醒:按照本教程安装后 不能实现 访问外网! 情景说明 有一台或多台云服务器,且均在同一局域网内服务器内有多个服务需要访问,例如: MySQL、Redis等服务,这些服务可以设置密码,然后开放端口Nacos、Elasticsearch、zipkin等服务,这些服务无法设置密码、或者不方便设置密码,但是又想正常访问 公司电脑想访问家里电脑,但是家里电脑又没有公网IP 此时可以搭建VPN通道,使本地机器和云服务器组成局域网,云服务器的控制面板上只需要开放一个VPN的端口即可。 服务端(CentOS7环境):安装依赖yum install -y gcc-c++ openssl openssl-devel net-tools lzo lzo-devel pam pam-devel 安装OpenVPN下载 打开OpenVPN官网下载地址:https://openvpn.net/community-downloads/下载openvpn-2.5.3.tar.gz下载完成上传到服务器 或者 # 直接执行脚本下载到服务器 wget https://swupdate.openvpn.org/c

698

 2020/12/04   

Java  Elasticsearch  SpringBoot  

示例代码: GitHub:https://github.com/Max-Qiu/demo-SpringBootGitee:https://gitee.com/Max-Qiu/demo-SpringBoot 官方教程:Spring Data Elasticsearch - Reference Documentation PS:本文只是一篇极其简单的整合教程,不涉及复杂搜索示例,建议认真阅读官方文档 版本对应关系 Spring Boot Spring Data Elasticsearch Elasticsearch 2.1.18.RELEASE 3.1.21.RELEASE 6.4.3 2.2.11.RELEASE 3.2.11.RELEASE 6.8.13 2.3.6.RELEASE 4.0.5.RELEASE 7.6.2 2.4.12 4.1.1 7.9.3 2.5.7 4.2.7 7.12.1 2.6.1 4.3.0 7.15.2 本文以Spring Boot 2.6.1为例本文不介绍Reactive模式的相关代码 准备pom.xm

494

 2020/08/09   

Linux  

该教程仅适合安装在单个硬盘上的Linux系统(例如树莓派的SD卡)进行备份与恢复,且恢复时被恢复的硬盘容量大于等于备份时的硬盘容量 简介Clonezilla(再生龙)是类似于TrueImage®或NortonGhost®的分区和磁盘克隆程序。它可以帮助您进行系统部署,裸机备份和恢复。 简单点,Windows上Ghost用过吧?就是下图,但是Ghost不能用在Linux上。Clonezilla就是用于Linux系统的备份与恢复。 软件下载 以下以stable - 2.7.2-38版为例 打开官网https://clonezilla.org/点击左侧的Download点击Live release下面的stable - 2.7.2-38选择ISO版,点击Download进行下载 ISO版方便制作U盘启动盘或者放在虚拟机内使用CD/DVD驱动器启动 开始使用开始备份与恢复前,需要将ISO文件写入U盘制作启动盘,然后重启选择U盘启动进入Clonezilla系统。若要备份的系统可以将硬盘连接在其他电脑上(比如树莓派的SD卡),则可以借助虚拟机启动Clonezilla。 另外,还需要准备一

247

 2020/12/02   

Linux  Elasticsearch  

官方教程:Install Elasticsearch from archive on Linux or MacOSDocker环境教程:docker常用镜像:ElasticsearchSpringBoot整合示例:SpringBoot2.6.1整合Elasticsearch7.15.2 下载Elasticsearch全版本下载地址:https://www.elastic.co/cn/downloads/past-releases#elasticsearch 因为Spring Boot 2.6.1对应的Spring Data Elasticsearch 4.3.0对应的Elasticsearch的版本为7.15.2,所以本文以此版本为例 打开历史版本下载地址,Versions选择7.15.2,点击Download,再点击LINUX X86_64下载即可 PS:为啥不用rpm包?因为rpm包安装好之后文件散落在不同的文件夹内,虽然官方详细介绍了各个文件夹在哪以及干嘛用的。rpm包官方教程:Install Elasticsearch with RPM elasticsearch-ana

229

 2019/07/28   

Linux  RabbitMQ  

官方教程:Installing on RPM-based Linux (RedHat Enterprise Linux, CentOS, Fedora, openSUSE) 注:下文中,会看到安装包内的el7、el8之类的缩写 EL 是 Red Hat Enterprise Linux 的缩写。EL7 是 Red Hat 7.x,CentOS 7.xEL8 是 Red Hat 8.x,CentOS 8.x 安装依赖Erlang 根据官网的版本要求文档:RabbitMQ Erlang Version Requirements,RabbitMQ 3.9.x最低的Erlang版本为23.2 CentOS7环境推荐使用官方打包的Zero dependency Erlang RPM,打开下载地址:https://github.com/rabbitmq/erlang-rpm/releasesErlang 24.x.x版本没有CentOS7对应的安装包,只能下载Erlang 23.x.x中CentOS7对应的安装包,例如:erlang-23.3.4.7-1.el7.x86_64.rpm,下载

167

 2021/01/06   

Java  UML  

示例代码:GitHub:https://github.com/Max-Qiu/demo/tree/main/demo-UML-ClassGitee:https://gitee.com/Max-Qiu/demo/tree/main/demo-UML-Class PS:本文档为个人整理,学艺不精,如有错误,请留言指出。部分内容整理自视频教程:尚硅谷_图解Java设计模式 安装UML插件 idea安装PlantUML插件,idea插件市场:PlantUML integrationeclipse安装PlantUML插件,官方教程:Integration with Eclipse 基础语法PlantUML语法官方文档:类图的语法和功能 定义类/接口/抽象类/枚举/属性/方法public class Person { private Integer id; public Integer getId() { return id; } public void setId(Integer id) { this.id = id;

165

 2020/03/28   

Java  Tomcat  

介绍IBM上的介绍:https://www.ibm.com/developerworks/cn/java/j-lo-jpda3/index.html 官方教程:https://docs.oracle.com/javase/8/docs/technotes/guides/troubleshoot/introclientissues005.html 实战debug普通jar项目demo准备使用Springboot搭建demo pom.xml如下 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.ap

77

 2021/03/01   

Windows  MySQL  

单独安装教程: Windows安装MySQL 0 需求说明Windows上已经安装了一个MySQL,需要再安装一个MySQL 1 安装第一个MySQL按照单独安装教程执行。强烈建议都按照下面的说明进行修改,这样切换环境变量后不会导致服务无法启动 2 安装第二个MySQL部分按照单独安装教程执行,并将其安装到另一个文件夹内。 比如:第一个MySQL文件夹为mysql,第二个MySQL文件夹为mysql2 安装时每一步都要注意路径,遇到如下步骤时需要修改 4 配置mysql.ini文件:端口号修改为3307或者其他不冲突的端口5 配置环境变量:跳过,不进行配置6 注册服务: 以管理员打开cmd后,先进入到第二个MySQL的bin目录下,即:cd C:\development\mysql2\bin安装服务脚本需要添加默认配置文件路径,且mysqld需要添加当前路径,即:.\mysqld install mysql2 --defaults-file="C:\development\mysql2\my.ini"检查注册表,ImagePath值应当如下:C:\developme

76

© 2019-2021 maxqiu.com
苏ICP备17051071号
备案苏公网安备 32090302000299号

L I F E
D
W
M
Y