小滴课堂-学习笔记:前端-后端项目云服务器生产环境部署核心知识

logo 愿景:"让编程不再难学,让技术与生活更加有趣"


更多架构课程请访问 xdclass.net

目录

第1集 小滴课堂互联网架构之应用部署上线核心知识

第2集 云服务器介绍和阿里云服务器ECS服务器选购

第3集 阿里云服务器远程登录和常用工具

生产环境Linux CentOS云服务器常见相关软件安装

第1集 阿里云Linux服务器Centos7 安装JDK8环境

第2集 生产环境Linux服务器上Nginx介绍和安装

第3集 生产环境Linux服务器上Mysql安装和导入数据

小滴课堂综合项目实战-前端-后端集群部署线上Linux云服务器

第1集 前后端项目总体部署架构和阿里云域名解析A记录配置

第2集 后端Java API项目阿里云服务器部署安装

第3集 前后端分离-前端项目打包上传阿里云服务器

第4集 线上部署之前端项目接入Nginx代理服务器

第5集 高可用处理之后端API多节点集群部署

第6集 小滴课堂前端-后端项目阿里云服务器部署总结

新版SSM课程零基础到项目实战总结和学习路线规划

第1集 新版SSM零基础到项目实战课程总结和学习路线推荐

干货文档


 

第1集 小滴课堂互联网架构之应用部署上线核心知识

简介:讲解应用部署到可以公网访问需要的知识

  • 一个http请求基本流程

    • 客户端通过发起域名资源请求 -> DNS解析获得IP -> 寻找服务器获得资源
  • 域名和ip的关系,DNS作用

    • DNS:Domain Name Server 域名服务器 域名虽然便于人们记忆,但网络中的计算机之间只能互相认识IP地址,它们之间的转换工作称为域名解析,域名解析需要由专门的域名解析服务器来完成,DNS 就是进行域名解析的服务器
  • 什么是cname和a记录

    • a记录

      • 用户可以在此设置域名并指向到自己的目标主机地址上,从而实现通过域名找到服务器(也叫ip指向域名配置)
    • cname

      • 别名指向,可以为一个主机设置别名。比如设置open1024.com,用来指向一个主机 xdclass.net 那么以后就可以用open1024.com来代替访问 xdclass.net 了
      • http://www.xdclass.net --> xdclass.net
  • 购买服务器,阿里云,腾讯云,亚马逊云aws

  • 购买域名,备案

    • 阿里云 备案地址:https://beian.aliyun.com/
  • 安装项目依赖的基本环境,比如java、nginx等软件(看项目)

  • 配置域名解析到服务器

  • 备注:后端项目一般部署Linux服务器,前端静态资源可以部署Linux也可以部署在CDN上

 

第2集 云服务器介绍和阿里云服务器ECS服务器选购

简介:什么是云服务器及目前主要的几个厂商介绍

  • 演示本地例子,部署阿里云
  • 阿里云、腾讯云、亚马逊云 阿里云:https://www.aliyun.com/ 腾讯云:https://cloud.tencent.com/ 亚马逊云:https://aws.amazon.com/
  • 阿里云新用户地址(如果地址失效,联系我或者客服即可) https://www.aliyun.com/minisite/goods?userCode=r5saexap&share_source=copy_link

 

第3集 阿里云服务器远程登录和常用工具

简介:讲解阿里云服务器登录使用和常见终端工具

  • 备注:(服务器、域名等使用你们自己购买的哈,上面有提供低价购买链接,失效找我)

    • 阿里云新用户地址 https://www.aliyun.com/minisite/goods?userCode=r5saexap&share_source=copy_link
  • 控制台修改阿里云远程连接密码

  • windows工具 putty,xshell, security 参考资料: https://jingyan.baidu.com/article/e75057f210c6dcebc91a89dd.html https://www.jb51.net/softjc/88235.html

​​

  • 苹果系统MAC : 通过终端登录

  • linux图形操作工具(用于远程连接上传文件)

    • mac: filezilla

      • sftp://112.74.55.160
    • windows: winscp

    • 资料:https://jingyan.baidu.com/article/ed2a5d1f346fd409f6be179a.html

  • 可以尝试自己通过百度进行找文档, 安装mysql jdk nginx maven git redis等,也可以看我们的课程

 

 

 

logo 愿景:"让编程不再难学,让技术与生活更加有趣"

生产环境Linux CentOS云服务器常见相关软件安装

 

第1集 阿里云Linux服务器Centos7 安装JDK8环境

简介:Linux云服务器安装JDK1.8

  • 官方地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

  • 本地上传JDK1.8到服务器(课程提供安装包,对应章集的资料里面)​

  • 配置全局环境变量

    • 解压:tar -zxvf jdk-8u171-linux-x64.tar.gz

    • 重命名

    • vim /etc/profile

    • 配置

      JAVA_HOME=/usr/local/software/jdk1.8
      CLASSPATH=$JAVA_HOME/lib/
      PATH=$PATH:$JAVA_HOME/bin
      export PATH JAVA_HOME CLASSPATH

       

    • 环境变量立刻生效

      • source /etc/profile
  • 查看安装情况 java -version

第2集 生产环境Linux服务器上Nginx介绍和安装

简介:介绍什么是nginx服务器和快速安装

  • 什么是Nginx服务器

    • 一个高性能的HTTP和反向代理web服务器
  • 安装依赖

    • yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel​
  • 创建一个文件夹,上传本地提供的nginx包

    • tar -zxvf nginx-1.13.7.tar.gz ​

      //执行命令
      ./configure
      make
      make install 
      
      ​

       

  • 默认安装路径

    • /usr/local/nginx
  • 访问配置

    cd /usr/local/nginx/sbin   
    ./nginx
    

     

  • 防火墙开放端口,阿里云网络安全组配置80端口

 

第3集 生产环境Linux服务器上Mysql安装和导入数据

简介:阿里云 Linux CentOS7 快速安装 Mysql

  • 安装Mysql 5.7 (注意,Mysql和系统务必保持一致,不然存在不一致)
  • 开启mysql远程连接(如果是准线上,建议不要开启远程连接)
  • 开放阿里云网络安全组配置 3306 端口
  • 导入测试数据到Mysql

#下载mysql的Yum仓库
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

yum -y install mysql57-community-release-el7-10.noarch.rpm

#安装 mysql服务
yum -y install mysql-community-server

#启动数据库服务, systemctl 该命令可用于查看系统状态和管理系统及服务,centos7上开始使用
systemctl start  mysqld.service

#查看状态
systemctl status mysqld.service

#在日志文件中查看初始密码
grep "password" /var/log/mysqld.log

#进入修改Mysql密码

mysql -uroot -p

#新密码设置必须由大小写字母、数字和特殊符号组成
ALTER USER 'root'@'localhost' IDENTIFIED BY 'Xdclass.net168';

#开启mysql的远程访问, %是指全部
grant all privileges on *.* to 'root'@'%' identified by 'Xdclass.net168' with grant option;

#刷新权限
flush privileges; 

小滴课堂综合项目实战-前端-后端集群部署线上Linux云服务器

 

第1集 前后端项目总体部署架构和阿里云域名解析A记录配置

简介:前端、后端项目总体部署架构和A记录配置

  • 后端接口地址 api.16web.net

    • 阿里云机器:112.74.55.160

     

  • 前端接口地址 web.16web.net

    • 阿里云机器:112.74.55.160

     

  • 前端部署nginx上

    • 后端部署多个节点,同过nginx反向代理做集群

 

 

 

第2集 后端Java API项目阿里云服务器部署安装

简介:SpringBoot项目部署阿里云服务器

  • 打包上传

    • 打包命令,各个系统通用,只要按照maven​

    • mvn install -Dmaven.test.skip=true

      • 修改配置文件:数据库连接,账户密码
  • 启动应用指定外部文件

  • nohup java -jar -Dspring.config.location=./application.properties online_xdclass-0.0.1-SNAPSHOT.jar &

  • 测试访问接口是否畅通

    curl 127.0.0.1:8089/api/v1/pub/video/list_banner
    
    112.74.55.160:8089/api/v1/pub/video/list_banner
    
    112.74.55.160:8088/api/v1/pub/video/list_banner
    
    
    

     

 

第3集 前后端分离-前端项目打包上传阿里云服务器

简介:前端项目打包上传阿里云服务器

  • 本地vue项目进行打包

    • cnpm run build
  • 上传dist目录到Centos系统某个目录

 

第4集 线上部署之前端项目接入Nginx代理服务器

简介:讲解前后端应用部署和配置nginx访问

  • 后端接口地址 api.16web.net

    • 阿里云机器:112.74.55.160
  • 前端接口地址 web.16web.net

    • 阿里云机器:112.74.55.160
  • 注意:配置A记录后不会立刻生效,且如果二次修改存在本地dns缓存,应该清除本地dns缓存,才可以访问​
  • 前端配置Nginx

    location / {
            root   /usr/local/software/front_end/dist;
            index  index.html index.htm;
        }
    
  • 重启nginx

    • ./nginx -s reload

 

 

 

第5集 高可用处理之后端API多节点集群部署

简介:讲解springboot应用多节点部署和配置nginx访问

  • 多节点启动 节点1:112.74.55.160:8088 节点2:112.74.55.160:8089​
  • 配置nginx集群访问
upstream lbs {
   server 112.74.55.160:8089;
   server 112.74.55.160:8088;
}
 location /api/ {
    proxy_pass http://lbs;
    proxy_redirect default;
}
  • 重启nginx命令

    • ./nginx -s reload

      http { include mime.types; default_type application/octet-stream;

      log_format main 'remote_addr - remote_user [time_local] "request" '

      'status body_bytes_sent "$http_referer" '

      '"http_user_agent" "http_x_forwarded_for"';

      access_log logs/access.log main;

      sendfile on;

      tcp_nopush on;

      keepalive_timeout 0;

      keepalive_timeout 65;
      
      upstream lbs { server 112.74.55.160:8089; server 112.74.55.160:8088; }

      gzip on;

      server { listen 80; server_name localhost;
      
      #charset koi8-r;
      
      #access_log  logs/host.access.log  main;
       location /api/ {
                      proxy_pass http://lbs;
                      proxy_redirect default;
          }
       location / {
              root   /usr/local/software/vue/dist;
              index  index.html index.htm;
          }
      
      ​ #error_page 404 /404.html;​
      # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root html; }
      
          # proxy the PHP scripts to Apache listening on 127.0.0.1:80
          #
          #location ~ \.php$ {
          #    proxy_pass   http://127.0.0.1;
          #}
      
          # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
          #
          #location ~ \.php$ {
          #    root           html;
          #    fastcgi_pass   127.0.0.1:9000;
          #    fastcgi_index  index.php;
          #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
          #    include        fastcgi_params;
          #}
      
          # deny access to .htaccess files, if Apache's document root
          # concurs with nginx's one
          #
          #location ~ /\.ht {
          #    deny  all;
          #}
      }
      

       

第6集 小滴课堂前端-后端项目阿里云服务器部署总结

简介:小滴课堂前端后端项目部署总结

  • 项目总体体验

  • 遇到问题怎么解决?

    • 分析日志和链路,结合搜索引擎
  • 前端、后端项目会一直存在github,地址: https://github.com/jackxy/new-ssm

  • 不做“有人生,没人养”的教程和项目,如果是我这边的课程的项目,有问题直接问我就可以,也会一直维护下去

 

logo 愿景:"让编程不再难学,让技术与生活更加有趣"

新版SSM课程零基础到项目实战总结和学习路线规划

 

第1集 新版SSM零基础到项目实战课程总结和学习路线推荐

简介:课程总结和学习路线建议

  • 课程总结

    • SpringBoot2.X零基础到高手系列
    • Mybatis3.x零基础到高手系列
    • Spring5.X零基础到高手系列
    • 新版Vue2.X急速入门+ES6语法
    • 小滴课堂在线教育系统后端开发
    • 小滴课堂在线教育系统前端开发
    • 前后端项目部署上线阿里云服务器

 

  • 后端开发人在公司核心工作:

    • 是否需要掌握前端,从开发人员职责来看,前后端分离是趋势。
    • 专业的人做专业的东西,前端工程师负责页面,后端工程师负责接口,效率更高,你是老板怎么考虑?
    • 新的一个方向:全栈工程师,必须把前端和后端方向一起掌握,才能全栈

 

  • 高级全栈/java工程师成长路径

    初级: javaese -> javaweb -> Mysql -> html/css/js->Maven+nexus私有仓库 -> idea -> Linux基础 -> 新版SSM+前后端综合实战 -> 微信支付项目实战 -> git代码管理+Jenkins持续集成
    
    
    
    中级:springcloud微服务 -> 分布式缓存Redis一期二期-> 分布式框架Dubbo+Zookeeper -> 分布式消息队列RocketMQ -> Jmeter压力测试 ->优惠券系统综合实战->Shiro权限框架->
    
    
    
    高级:ElasticSearch搜索引擎->Shell脚本 ->Docker容器->JDk8~13新特性->JVM虚拟机->Netty百万连接实战->面试专题第一季->秒杀系统综合实战->Nginx高性能服务-> 服务性能调优实战->拼团项目实战->服务监控和自动化扩容
    
    
    
    技术总监:网络安全和攻击->分布式事务实战->k8s+devops实战->Serverless无服务->服务网格和云原生->面试专题第二季 -> 软件架构教程 -> 团队合作和OKR考核-> 产品思维+商业化能力探索

     

 

  • 学习靠自律,一定要多做笔记

干货文档

                                                        关注公众号发送:“CSDN干货文档”  即可领取

你可能感兴趣的:(HTTP,网站架构,JAVA,分布式,大数据,linux,java,编程语言)