当前位置:   article > 正文

谷粒商城_谷粒商城软件下载

谷粒商城软件下载
  1. 软件准备

下载、安装Virtual Box https://www.virtualbox.org/wiki/Downloads

下载、安装Vagrant https://www.vagrantup.com/downloads.html
2. vagrant:查看是否安装成功
在这里插入图片描述
img
3. vagrant init centos/7:初始化

这里有各种 Linux 镜像 https://app.vagrantup.com/boxes/search,选择自己需要的版本下载即可

初始化后,在当前用户文件夹下会有一个 Vagrantfile 文件
  • 1
  • 2
  • 3

在这里插入图片描述
4. vagrant up:启动虚拟机

(第一次运行会下载)
vagrant 下载很慢

使用迅雷下载,然后执行


  • 1
vagrant box add centos/7 /Users/taylor/personal/setups/CentOS-7-x86_64-Vagrant-1905_01.VirtualBox.box
  • 1

  • 1

在这里插入图片描述

然后再执行 vagrant up即可,启动完成看到下面的内容,就可以愉快的vagrant ssh登录了

image-20200404210510030
5.修改VB网络地址

  1. 创建一个网卡

    在这里插入图片描述

image-20200404210656606

2.修改Vagrantfile,使在一个网段,比如改成56.10
  • 1

image-20200404210744952配置镜像加速器

针对Docker客户端版本大于 1.10.0 的用户

您可以通过修改daemon配置文件/etc/docker/daemon.json来使用加速器

第一步```java
sudo mkdir -p /etc/docker
第二步
sudo tee /etc/docker/daemon.json <<-‘EOF’
{
“registry-mirrors”: [“https://lg4db837.mirror.aliyuncs.com”]
}
EOF
第三步
sudo systemctl daemon-reload
第四步
sudo systemctl restart docker



然后宿主机和虚拟机互ping通即可

ping -c 3 xxx.xxx.xxx.xxx
6.docker 安装mysql

sudo docker pull mysql:5.7

```java
  docker run -p 3306:3306 --name mysql \
  -v /mydata/mysql/conf:/etc/mysql/ \
  -v /mydata/mysql/log:/var/log/mysql \
  -v /mydata/mysql/data:/var/lib/mysql \
  -e MYSQL_ROOT_PASSWORD=root \
  -d mysql:5.7
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16

[client]
default-character-set = utf8

[mysql]
default-character-set = utf8

[mysqld]
init_connect=’ SET collation_connection = utf8_unicode_ci’
init_connect=’ SET NAMES utf8’
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve

7.docker 安装redis

docker pull redis

mkdir -p /mydata/redis/conf

docker run -p 6379:6379 --name redis \
-v /mydata/redis/data:/data \
-v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf \
-d redis redis-server /etc/redis/redis.conf
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

开发环境
maven配置
搭建工程
添加模块
配置.ignore

image-20200405141657464

数据库设计
Mac上的数据库设计工具

DBeaver
Docker上开机启动

sudo docker update mysql --restart=always
renren-fast数据库
前端环境准备
安装nodejs
在这里插入图片描述

image-20200405161809174

npm config set registry http://registry.npm.taobao.org/
在这里插入图片描述

image-20200405161858004
报错

gyp: No Xcode or CLT version detected!
gyp ERR! configure error
gyp ERR! stack Error: gyp failed with exit code: 1
gyp ERR! stack at ChildProcess.onCpExit (/Users/arproject/renren-fast-vue/node_modules/node-gyp/lib/configure.js:345:16)
gyp ERR! stack at ChildProcess.emit (events.js:311:20)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_process.js:275:12)
gyp ERR! System Darwin 19.3.0
gyp ERR! command “/usr/local/bin/node” “/Users/arproject/renren-fast-vue/node_modules/node-gyp/bin/node-gyp.js” “rebuild” “–verbose” “–libsass_ext=” “–libsass_cflags=” “–libsass_ldflags=” “–libsass_library=”
gyp ERR! cwd /Users/arproject/renren-fast-vue/node_modules/node-sass
gyp ERR! node -v v12.16.1
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok

https://zhuanlan.zhihu.com/p/105526835

1.安装xcode

2.删除node_modules

3.删除高版本nodejs,安装10.X版本,10.19.0是没问题的

sudo rm -rf /usr/local/{bin/{node,npm},lib/node_modules/npm,lib/node,share/man//node.}

4.npm install chromedriver --chromedriver_cdnurl=http://cdn.npm.taobao.org/dist/chromedriver

5.npm install
代码生成器
80端口被占用

sudo lsof -n -P | grep :80

sudo apachectl stop
谷粒框架
在这里插入图片描述

image-20200406011419045
Nacos配置启动
报错

https://juejin.im/entry/5cd39b4de51d453a59418b8e

删除报错信息中的’/data/nacos/data/derby-data’目录,重新启动。
注册中心 服务发现
1.添加pom依赖

放在gulimall-common中,作为公共服务

com.alibaba.cloud spring-cloud-starter-alibaba-nacos-discovery

2.在application.yml中添加nacos配置
在这里插入图片描述

image-20200406172113014
3.将服务注册的注册中心
在这里插入图片描述

配置中心

com.atguigu.gulimall.coupon.GulimallCouponApplication

  • 一、如何使用nacos作为配置中心统一管理配置
  • 1.在common中引入依赖
  •     <groupId>com.alibaba.cloud</groupId>
    
    • 1
  •     <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
    
    • 1
  • 2.创建配置文件 bootstrap.properties
  • spring.application.name=gulimall-coupon
  • spring.cloud.nacos.config.server-addr=192.168.0.100:8848
  • 3.在nacos客户端,给配置中心添加一个数据集
  • gulimall-coupon.properties
  • 格式为 应用名称.properties
  • 4.在 应用名称.properties中添加所需要的配置
  • 5.动态获取配置
  • 添加注解
  • @RefreshScope:动态刷新并获取配置
  • @Value("${配置项名称}")
  • 如果配置中心和当前应用的配置文件中配置了相同的配置项,优先使用配置中心的配置
  • 二、细节
  • 1.命名空间:作用 做配置隔离
  • 默认:public(保留空间);默认新增的所有配置都在public空间内
  • ①开发、测试、生产 分别配置
  • 在bootstrap.properties里配置想要使用的命名空间的配置项
  • spring.cloud.nacos.config.namespace=8a4f21ba-3ef2-4754-8b2f-ef3b3c2ed8c8
  • ②每一个微服务之间相互隔离,每一个微服务创建自己的命名空间,只加载自己命名空间下的所有配置
  • 2.配置集
  • 3.配置集ID
  • 4.配置分组
  • 一般实践:
  • 每个微服务创建自己的命名空间,使用配置分区区分环境:dev、test、prod

命名空间

在nacos界面添加新命名空间
默认使用public命名空间
修改使用命名空间
  • 1
  • 2
  • 3

image-20200406181100706

image-20200406181128637
Feign远程调用

com.atguigu.gulimall.member.GulimallMemberApplication

image-20200406175610142
调用方

com.atguigu.gulimall.member.controller.MemberController

image-20200406175658034

image-20200406172954644

image-20200406175250497
服务方

com.atguigu.gulimall.coupon.controller.CouponController

image-20200406175829343
网关
性能对比

image-20200406191638203
引入common时排除数据库相关

@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class})

报错
spring initializr error

取消代理即可

image-20200406221702649
包冲突

image-20200406221402005

网上查是gateway和web包冲突,解决方案:common的pom替换掉

<?xml version="1.0" encoding="UTF-8"?>



gulimall
com.atguigu.gulimall
0.0.1-SNAPSHOT

4.0.0

<artifactId>gulimall-common</artifactId>
<description>每一个微服务公共的依赖,bean,工具类等</description>

<dependencies>
    <!--        mybatis-plus-->
    <dependency>
        <groupId>com.baomidou</groupId>
        <artifactId>mybatis-plus-boot-starter</artifactId>
        <version>3.2.0</version>
    </dependency>

    <dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
        <version>1.18.8</version>
    </dependency>

    <!-- https://mvnrepository.com/artifact/org.apache.httpcomponents/httpcore -->
    <dependency>
        <groupId>org.apache.httpcomponents</groupId>
        <artifactId>httpcore</artifactId>
        <version>4.4.12</version>
    </dependency>


    <dependency>
        <groupId>commons-lang</groupId>
        <artifactId>commons-lang</artifactId>
        <version>2.6</version>
    </dependency>

    <!--    导入mysql驱动    -->
    <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>8.0.17</version>
    </dependency>

    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>servlet-api</artifactId>
        <version>2.5</version>
        <scope>provided</scope>
    </dependency>

    <!--        服务注册/发现-->
    <dependency>
        <groupId>com.alibaba.cloud</groupId>
        <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
    </dependency>

    <!--        配置中心来做配置管理-->
    <dependency>
        <groupId>com.alibaba.cloud</groupId>
        <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
    </dependency>

    <dependency>
        <groupId>javax.validation</groupId>
        <artifactId>validation-api</artifactId>
        <version>2.0.1.Final</version>
    </dependency>


</dependencies>

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-alibaba-dependencies</artifactId>
            <version>2.1.0.RELEASE</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78

路由示例

image-20200407002155467
前端学习

image-20200407002329992

image-20200407002343508

image-20200407002421689

image-20200407002438242

image-20200407002507460
网关路由与路径重写
跨域问题

端口及之前的内容【协议、域名、端口】有任何不同,就不允许获取数据

image-20200407003836180
解决方案

通过Nginx反向代理,转化为同一个域

image-20200407004335000

通过gateway的filter

image-20200407005119095
分类: 分布式高并发实践

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/315285?site
推荐阅读
相关标签
  

闽ICP备14008679号