Windows 服务器全套部署 Java 服务 -- JDK Redis Springboot

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 Tair(兼容Redis),内存型 2GB
简介: Windows 服务器全套部署 Java 服务 -- JDK Redis Springboot

前言

最近做一个项目,实现 用户免密单点登录腾讯企业邮箱 https://exmail.qq.com/

项目是架构是 Springboot + Redis类型,部署环境是一台未配置任何开发环境的 Windows 服务器。所以需要先安装配置 JDK,安装 Redis,再将 Springboot 服务部署上去。

对腾讯企业邮箱免密单点登录感兴趣的可以到官方开发者中心研究: https://exmail.qq.com/qy_mng_logic/doc#10036

一、JDK 安装配置

因为项目用到的是 Springboot2.0 版本,所以需要 JDK1.8 以上版本。
官网下载: https://www.oracle.com/java/technologies/javase-downloads.html
百度云下载: 链接:https://pan.baidu.com/s/1fg2E2ecUziT2AgO2iit-yw 提取码:l7ju

1.1 JDK 安装

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

1.2 JDK 环境变量配置

鼠标右键桌面计算机图标,点击属性
在这里插入图片描述
选择点击高级系统设置
在这里插入图片描述
选择点击环境变量
在这里插入图片描述
新建系统变量,变量名为JAVA_HOME,变量值为你安装的JDK位置。
在这里插入图片描述
编辑系统变量Path,在变量值末尾加上;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin
在这里插入图片描述
新建系统变量,变量名为classpath,变量值为.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\toos.jar
在这里插入图片描述
最后全部保存确定。然后在cmd命令行窗口,输入 java -version 命令,出现下面结果则表示 JDK 安装并配置完成。
在这里插入图片描述

二、安装 Redis

百度云下载: 链接:https://pan.baidu.com/s/1IUz-RPXw9NmSysMDqJNPcQ 提取码:sshi

下载后解压到你想安装的目录下
在这里插入图片描述

2.1 前台启动 Redis 服务

在安装目录下启动 cmd 命令行窗口,然后输入 redis-server.exe redis.windows.conf命令,回车。如果出现一个方形图标,即服务启动成功。

不过此种启动方式,是前台启动方式,只创建 Redis 临时服务,不会在 window Service 列表出现 Redis 服务名称和状态, 此窗口关闭,Redis 服务会自动关闭。

在这里插入图片描述

通过客户端连接测试,在安装目录下再启动一个 cmd 命令行窗口,然后输入 redis-cli.exe命令,回车。如下则连接成功。

在这里插入图片描述

2.2 修改端口和密码

在Redis的安装目录下找到 redis.windows-service.conf 文件,用 文本编辑器打开。找到 port 所在行,把默认的端口更改,例如改为6380。找到 requirepass 所在行,回车另起一行,例如输入 requirepass 123456 ,这样Redis密码就为123456,设置好保存后文件,重启redis服务。

在这里插入图片描述
在这里插入图片描述

客户端连接测试。输入 redis-cli.exe -p 6380 连接,此时我们随便输入命令例如列出所有键命令 keys * ,会报错,因为我们还未输入密码验证。再输入 auth 123456 ,123456是我们刚设置的Redis密码。就可以执行命令了。

在这里插入图片描述

2.3 服务方式安装启动

前台方式启动redis服务,则需要保持打开命令行窗口启动着。窗口一关则服务停止。以下演示将 Redis 设置为 Windows下的服务,并在后台启动。

首先将 Redis 注册为服务,在 Redis 安装目录下启动一个cmd命令行窗口,然后输入 redis-server.exe --service-install redis.windows.conf --loglevel verbose 命令,回车。 注意!!!一定要把临时服务关闭,否则安装不上。

在这里插入图片描述
再输入 redis-server.exe --service-start 命令,启动服务。

在这里插入图片描述

  • 启动服务:redis-server.exe --service-start
  • 暂停服务:redis-server.exe --service-stop
  • 卸载服务:redis-server.exe --service-uninstall

三、部署 Java 服务

Java项目是通过 Springboot 开发的,然后打成 jar 包形式。

3.1 命令行临时启动服务

正常我们是通过命令 java -jar xx.jar启动Java服务,但是此方式有个缺点是要一直保持打开着窗口。

在这里插入图片描述

3.2 后台启动Java服务

新建 run.bat 文件,在文件中输入以下内容,保存。最后双击run.bat文件即可后台启动Java服务。
@echo off

title Service Run

color 3E

start javaw -jar -Xbootclasspath/a:application.yml exmail-sso-server.jar

echo ------------------------ exmail service -------------------------
echo .
echo -------------------- service start succefully -------------------
echo .
echo -----------------------------------------------------------------

timeout /t 3

exit
title Service Run:是为启动窗口设置窗口名称 Service Run
color 3E:设置窗口颜色为3E
-Xbootclasspath/a:application.yml:启动服务使用外部配置文件 application.yml,这里是使用相对路径,application.yml 文件和 exmail-sso-server.jar 文件在同一目录下。如果不使用外部配置文件,这串命令可以去除。
echo:打印我们想在控制台输出的内容,也可去除。
timeout /t 3:窗口在多久后自动关闭,这里设置3秒。

双击 run.bat 文件启动服务后,显示如下窗口则代表服务启动成功。
在这里插入图片描述

但是如果我们想要终止删除这个Java后台服务呢,可以按如下方式终止:

  • 首先通过服务端口号找到服务进程ID,命令为netstat -ano |findstr 端口号,也可以通过命令tasklist在进程列表中查找。
  • 杀死进程,命令为 taskkill /pid 进程号。如果报【错误:无法种子PID为xxxx的进程】错误,则需要使用taskkill -F /pid 进程号命令强制杀死进程。

查看杀进程命令的帮助命令为taskkill /?

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

也可以通过 system idle process 杀掉进程,例如我们这是使用 javaw 命令启动服务的,所以可以使用 taskkill -f -t -im javaw.exe 杀死进程。

例如,我的关闭服务脚本文件 shutdown.bat 文件内容如下
@echo off

title Service Shutdown

color 3E

taskkill -f -t -im javaw.exe

echo ------------------------ exmail service ------------------------
echo .
echo -------------------- service stop succefully -------------------
echo .
echo ----------------------------------------------------------------

timeout /t 3

exit

双击 shutdown.bat 文件后,显示窗口如下
在这里插入图片描述

我的服务文件路径位置存放如下
在这里插入图片描述

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
30天前
|
Apache 数据中心 Windows
将网站迁移到阿里云Windows系统云服务器,访问该站点提示连接被拒绝,如何处理?
将网站迁移到阿里云Windows系统云服务器,访问该站点提示连接被拒绝,如何处理?
|
30天前
|
域名解析 缓存 网络协议
Windows系统云服务器自定义域名解析导致网站无法访问怎么解决?
Windows系统云服务器自定义域名解析导致网站无法访问怎么解决?
|
1月前
|
弹性计算 安全 Windows
通过远程桌面连接Windows服务器提示“由于协议错误,会话将被中断,请重新连接到远程计算机”错误怎么办?
通过远程桌面连接Windows服务器提示“由于协议错误,会话将被中断,请重新连接到远程计算机”错误怎么办?
|
1月前
|
弹性计算 数据安全/隐私保护 Windows
阿里云国际版无法远程连接Windows服务器的排查方法
阿里云国际版无法远程连接Windows服务器的排查方法
|
前端开发 JavaScript 关系型数据库
前后端分离 -- SpringBoot + Vue实战项目 部署至阿里云服务器
前后端分离 -- SpringBoot + Vue实战项目 部署至阿里云服务器
3255 2
前后端分离 -- SpringBoot + Vue实战项目 部署至阿里云服务器
|
6月前
|
Java 关系型数据库 MySQL
保姆级教程——将springboot项目部署到阿里云服务器包含环境配置(小白包会)
本文档详细介绍了将SpringBoot项目部署到阿里云服务器的步骤。首先,通过Xshell连接服务器,使用公网IP地址。接着,下载JDK的Linux版本,使用XFTP上传并解压,配置环境变量。然后,安装MySQL 5.7,包括下载YUM源、安装、启动服务以及修改root密码和开启远程访问。最后,将SpringBoot项目打包成jar,上传至服务器,使用`java -jar`命令运行,通过`nohup`确保服务持续运行。配置安全组以允许远程访问。
1001 0
|
Java 关系型数据库 MySQL
将springboot项目部署到阿里云服务器
将springboot项目部署到阿里云服务器
|
弹性计算 前端开发 Java
将springboot项目部署到阿里云服务器
项目前后端分离,前端使用Android,后端使用springboot,项目部署在阿里云服务器上。
|
1月前
|
JavaScript 安全 Java
如何使用 Spring Boot 和 Ant Design Pro Vue 实现动态路由和菜单功能,快速搭建前后端分离的应用框架
本文介绍了如何使用 Spring Boot 和 Ant Design Pro Vue 实现动态路由和菜单功能,快速搭建前后端分离的应用框架。首先,确保开发环境已安装必要的工具,然后创建并配置 Spring Boot 项目,包括添加依赖和配置 Spring Security。接着,创建后端 API 和前端项目,配置动态路由和菜单。最后,运行项目并分享实践心得,包括版本兼容性、安全性、性能调优等方面。
143 1
|
17天前
|
JavaScript 安全 Java
如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个具有动态路由和菜单功能的前后端分离应用。
本文介绍了如何使用 Spring Boot 和 Ant Design Pro Vue 构建一个具有动态路由和菜单功能的前后端分离应用。首先,创建并配置 Spring Boot 项目,实现后端 API;然后,使用 Ant Design Pro Vue 创建前端项目,配置动态路由和菜单。通过具体案例,展示了如何快速搭建高效、易维护的项目框架。
95 62