Win10:SpringBoot+Vue+Nginx前后端分离

本文介绍了一个使用Vue.js前端框架与SpringBoot后端框架结合的实际项目案例,通过Nginx实现了前后端分离部署及双服务负载均衡。文章详细讲解了环境搭建过程、项目配置、代码实现等关键步骤。

环境:

Windows10家庭版+JDK1.8_x64+IDEA:2020.3+Nginx:1.22.1+Node:14.16.0+Npm:6.14.11+Vue:2.5.2;

实现:

Vue+SpringBoot前后端分离,使用Nginx做代理、双服务负载均衡,双服务权重配置,侧重主服务,副服务用于灾备。

待考量:

后续后端可增加SpringBoot Cloud Gateway微服务;跨域问题,单点设计。

源码:例子源码

目录

一、前端Vue

二、后端Springboot双服务

三、Nginx安装配置

四、启动


一、前端Vue

1、环境安装

NodeJs安装(VUE、IDEA使用)

2、创建Vue项目

 

3、使用IDEA,open 、terminal中 npm install 依赖

4、启动前端,验证是否创建初始化项目成功

可参考 NodeJs安装(VUE、IDEA使用)

5、脚手架增加依赖

npm install axios -S
npm install vue-resource -S
npm install vuex -S
npm install jquery -S
npm install bootstrap -S
npm install popper.js -S

6、修改 webpack.base.conf.js,引入Jquery

 

'use strict'
const path = require('path')
const utils = require('./utils')
const config = require('../config')
const vueLoaderConfig = require('./vue-loader.conf')
const webpack = require('webpack')

function resolve (dir) {
  return path.join(__dirname, '..', dir)
}

const createLintingRule = () => ({
  test: /\.(js|vue)$/,
  loader: 'eslint-loader',
  enforce: 'pre',
  include: [resolve('src'), resolve('test')],
  options: {
    formatter: require('eslint-friendly-formatter'),
    emitWarning: !config.dev.showEslintErrorsInOverlay
  }
})

module.exports = {
  context: path.resolve(__dirname, '../'),
  entry: {
    app: './src/main.js'
  },
  output: {
    path: config.build.assetsRoot,
    filename: '[name].js',
    publicPath: process.env.NODE_ENV === 'production'
      ? config.build.assetsPublicPath
      : config.dev.assetsPublicPath
  },
  resolve: {
    extensions: ['.js', '.vue', '.json'],
    alias: {
      'vue$': 'vue/dist/vue.esm.js',
      '@': resolve('src'),
    }
  },
  module: {
    rules: [
      ...(config.dev.useEslint ? [createLintingRule()] : []),
      {
        test: /\.vue$/,
        loader: 'vue-loader',
        options: vueLoaderConfig
      },
      {
        test: /\.js$/,
        loader: 'babel-loader',
        in
### 深圳大学 Cache 实验相关资料 深圳大学的计算机系统课程通常会涉及缓存(Cache)实验,目的是帮助学生理解计算机存储层次结构中缓存的工作原理以及性能优化方法。以下是一些可能与深圳大学 Cache 实验相关的指导资料内容[^1]。 #### 1. Cache 基本原理 缓存是计算机存储体系中的重要组成部分,用于减少访问主存的时间开销。常见的缓存组织方式包括直接映射、全相联映射组相联映射。在实验中,学生需要了解以下关键概念: - 缓存行大小(Cache Line Size) - 替换策略(如 FIFO、LRU) - 缓存命中率(Hit Rate)未命中率(Miss Rate) #### 2. 实验目标 实验的目标通常是通过模拟或实际编程来观察缓存的行为,并分析其对程序性能的影响。例如: - 使用工具(如 Valgrind 的 cachegrind 工具)测量程序的缓存命中率。 - 修改程序代码以优化缓存使用,从而提高性能。 #### 3. 实验步骤示例 以下是可能的实验步骤: - **缓存行为观察**:编写一个简单的程序,测试不同数据访问模式下的缓存命中情况。 - **性能优化**:调整数组访问顺序或数据结构布局,观察对缓存命中率的影响。 - **结果分析**:记录实验数据,绘制图表并分析缓存命中率的变化趋势。 ```python import numpy as np # 示例代码:缓存友好的矩阵访问 def cache_friendly_access(matrix): rows, cols = matrix.shape for i in range(rows): for j in range(cols): matrix[i][j] += 1 # 按行访问,缓存友好 # 示例代码:非缓存友好的矩阵访问 def non_cache_friendly_access(matrix): rows, cols = matrix.shape for j in range(cols): for i in range(rows): matrix[i][j] += 1 # 按列访问,可能导致缓存未命中 # 测试 matrix = np.zeros((1000, 1000)) cache_friendly_access(matrix) non_cache_friendly_access(matrix) ``` #### 4. 报告撰写建议 在撰写实验报告时,可以参考以下结构: - **引言**:介绍缓存的基本概念及其在计算机系统中的作用。 - **实验设计**:描述实验的目的、方法使用的工具。 - **结果与分析**:展示实验数据,并分析不同访问模式对缓存性能的影响。 - **结论**:总结实验发现,并提出改进建议。 #### 5. 参考资源 虽然没有直接提到深圳大学的具体实验指导,但可以参考以下公共资源: - 计算机组成原理教材中的缓存章节。 - 在线课程视频教程,如 MIT 或 Stanford 的公开课程。 - 工具文档,如 Valgrind cachegrind 的官方指南。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我也不清楚

有钱的捧个钱场,(~ ̄▽ ̄)~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值