发表于: 2018-05-19 21:49:31
1 1198
今天完成的事情:
23.将部署自己服务到服务器上,包括Maven,Mysql客户端等。直接用Maven命令跑单元测试。
linux ubuntu安装maven。
参考资料:https://jingyan.baidu.com/article/d2b1d102b9dd855c7e37d486.html
1. 复制链接地址
2. 连接linux服务器,输入wget 'url',url为之前复制的下载链接地址,通过wget命令可以直接在linux环境下载maven软件包
3. 下载完成之后,tar -xzvf apache-maven-3.5.0-bin.tar.gz解压
4. maven包解压之后直接可以使用了,但只能在bin目录下才可以运行mvn命令,为了方便使用,需要配置maven环境变量
sudo vi /etc/profile,
添加
export MAVEN_HOME=/usr/local/maven/apache-maven-3.5.3
export PATH=$MAVEN_HOME/bin:$PATH
5. 为了环境变量可以立即生效,source /etc/profile
6. 最后验证maven是否可以在任意目录正常使用了,输入mvn -version,出现如图的版本信息,表示安装成功。
linux ubuntu安装Nginx
Nginx("engine x")是一款是由俄罗斯的程序设计师Igor Sysoev所开发高性能的 Web和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。
在高连接并发的情况下,Nginx是Apache服务器不错的替代品。
什么是Nginx:参考资料:https://blog.csdn.net/kisscatforever/article/details/73129270
在传统的Web项目中,并发量小,用户使用的少。所以在低并发的情况下,用户可以直接访问tomcat服务器,然后tomcat服务器返回消息给用户。
当然我们知道,为了解决并发,可以使用负载均衡:也就是我们多增加几个tomcat服务器。当用户访问的时候,请求可以提交到空闲的tomcat服务器上。
但是这种情况下可能会有一种这样的问题:上传图片操作。
我们把图片上传到了tomcat1上了,当我们要访问这个图片的时候,tomcat1正好在工作,所以访问的请求就交给其他的tomcat操作,而tomcat之间的数据没有进行同步,所以就发生了我们要请求的图片找不到。
为了解决这种情况,我们就想出了分布式。
我们专门建立一个图片服务器,用来存储图片。这样当我们都把图片上传的时候,不管是哪个服务器接收到图片,都把图片上传到图片服务器。
图片服务器上需要安装一个http服务器,可以使用tomcat、apache、nginx。
nginx常用做静态内容服务和代理服务器(不是你FQ那个代理),直面外来请求转发给后面的应用服务(tomcat,django什么的),tomcat更多用来做做一个应用容器,让java web app跑在里面的东西,对应同级别的有jboss,jetty等东西。
根据前面的对比,我们可以了解到Nginx是一个http服务器。
是一个使用c语言开发的高性能的http服务器及反向代理服务器。
Nginx是一款高性能的http 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。
由俄罗斯的程序设计师Igor Sysoev所开发,官方测试nginx能够支支撑5万并发链接,并且cpu、内存等资源消耗却非常低,运行非常稳定。
Nginx的应用场景
1、 http服务器。Nginx是一个http服务可以独立提供http服务。可以做网页静态服务器。
2、 虚拟主机。可以实现在一台服务器虚拟出多个网站。例如个人网站使用的虚拟主机。
· 基于端口的,不同的端口
· 基于域名的,不同域名
3、 反向代理,负载均衡。当网站的访问量达到一定程度后,单台服务器不能满足用户的请求时,需要用多台服务器集群可以使用nginx做反向代理。并且多台服务器可以平均分担负载,不会因为某台服务器负载高宕机而某台服务器闲置的情况。
参考资料:https://blog.csdn.net/u014374031/article/details/73441577
1. 安装nginx的依赖包
1.1查看zlib是否安装
1.2解决依赖包openssl安装
1.3解决依赖包pcre安装
1.4解决依赖包zlib安装
2. 下载nginx
访问nginx官网,复制链接
2.1下载压缩包wget http://nginx.org/download/nginx-1.13.1.tar.gz
2.2解压nginx:tar -xzvf nginx-1.13.1.tar.gz
2.3重命名文件夹:mv nginx-1.13.1 nginx
3. 安装nginx
配置nginx
3.1进入nginx文件夹中
3.2
sudo ./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_realip_module
3.3编译nginx
sudo make
3.4安装nginx
sudo make install
4. 检查nginx是否安装成功
cd /usr/local/nginx/sbin
将java项目打成jar包
参考资料:https://www.cnblogs.com/acm-bingzi/p/6625303.html
首先是在maven项目的pom.xml中添加打包的插件,这里有很多种方式的。
最最简单的就是只使用maven-compiler-plugin、maven-jar-plugin插件,并且指定程序入口<mainClass>。相关代码如下:
<?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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>cn.wh</groupId>
<artifactId>jarTest3</artifactId>
<version>1.0-SNAPSHOT</version>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<useUniqueVersions>false</useUniqueVersions>
<classpathPrefix>lib/</classpathPrefix>
<mainClass>Test</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
</plugins>
</build>
</project>
创建入口类
public class Test {
public static void main(String[] args) {
System.out.println("hallo?");
}
}
使用maven命令打成jar包
在本地测试.jar包
将jar包导入服务器上测试
部署MYSQL
将本地mysql中的表导成.sql文件
在本地使用Navicat连接到服务器上的mysql。
参考资料:https://blog.csdn.net/nw_ningwang/article/details/76218997
设置后连接失败
查询得知:Navicat软件版本有问题,重新下载软件。
将本地数据库拷贝一份
转存SQL文件(结构和数据)
连接服务器上的MYSQL,创建一个同名的数据库
运行SQL文件
通过finalshell查询服务器上的数据库
明天计划的事情:
在服务器上使用maven、maven命令的使用
评论