您的位置: 首页 - 站长

wordpress安装2个网站吗泉州鲤城网站建设

当前位置: 首页 > news >正文

wordpress安装2个网站吗,泉州鲤城网站建设,网站收索功能怎么做,服装网站开发的意义一#xff0c;项目总体介绍 在本项目中#xff0c;我将使用alibabba的 nacos 作为项目的注册中心#xff0c;使用 spring cloud gateway 做为项目的网关#xff0c;用 openfeign 作为服务间的调用组件。 项目总体架构图如下#xff1a; 注意#xff1a;我的Java环境是17…一项目总体介绍 在本项目中我将使用alibabba的 nacos 作为项目的注册中心使用 spring cloud gateway 做为项目的网关用 openfeign 作为服务间的调用组件。 项目总体架构图如下 注意我的Java环境是17下面的pom 中默认的是1.8大家可以自己修改一下 在这里我使用了mysql 的主从复制当然你怎么用都可以取决于你的项目或者使用 canal 更加方便当然后续我也会使用canal同步数据解决缓存一致性问题nginx这里我会使用openresty至于介绍和安装请看 openresty安装 1.1、组件介绍、安装 nacos 1.1.1、介绍 动态配置服务可以让您以中心化、外部化和动态化的方式管理所有环境的应用配置和服务配置。动态配置消除了配置变更时重新部署应用和服务的需要让配置管理变得更加高效和敏捷。配置中心化管理让实现无状态服务变得更简单让服务按需弹性扩展变得更容易。Nacos 提供了一个简洁易用的UI (控制台样例 Demo) 帮助您管理所有的服务和应用的配置。Nacos 还提供包括配置版本跟踪、金丝雀发布、一键回滚配置以及客户端配置更新状态跟踪在内的一系列开箱即用的配置管理特性帮助您更安全地在生产环境中管理配置变更和降低配置变更带来的风险。官网介绍地址官网 1.1.2、安装 这里使用 docker 安装 docker 不会安装的看我“微服务监控”第五章 1.1.2.1、docker 镜像拉取 docker pull nacos/nacos-server1.1.2.2、创建挂载目录 mkdir -p /mydata/nacos/logs/ #新建logs目录mkdir -p /mydata/nacos/conf/ #新建conf目录1.1.2.3、启动容器拷贝文件 docker run -p 8848:8848 –name nacos -d nacos/nacos-server复制文件 docker cp nacos:/home/nacos/logs/ /mydata/nacos/docker cp nacos:/home/nacos/conf/ /mydata/nacos/删除容器 docker rm -f nacos1.1.2.4、mysql 中创建 nacos 所需要的库 nacos-config随意 在拷贝的 conf 文件夹下会有 mysql 的 sql 文件执行一下就 OK 了 docker run -d –name nacos -p 8848:8848 -p 9848:9848 -p 9849:9849–privilegedtrue -e JVM_XMS1g -e JVM_XMX2g -e MODEstandalone-v /mydata/nacos/logs/:/home/nacos/logs -v /mydata/nacos/conf/:/home/nacos/conf/–restartalways nacos/nacos-server参数介绍 1、docker run -d 启动容器 -d是后台启动并返回容器id的意思 2、–name nacos 为容器指定一个名称 3、-p 8848:8848 -p 9848:9848 -p 9849:9849 指定端口映射注意这里的p不能大写大写是随机端口映射 4、–privilegedtrue 扩大容器内的权限将容器内的权限变为root权限不加的话就是普通用户权限可能会出现cannot open directory 5、-e JVM_XMS1g 为jvm启动时分配的内存 6、-e JVM_XMX2g 为jvm运行过程中分配的最大内存 7、-e MODEstandalone 使用 standalone模式单机模式,MODE值有cluster集群模式/standalone模式两种MODE必须大写 8、-v /mydata/nacos/logs/:/home/nacos/logs : 将容器的/home/nacos/logs目录挂载到 /mydata/nacos/logs 9、-v /mydata/nacos/conf/:/home/nacos/conf/ 将容器的/home/nacos/conf目录挂载到 /mydata/nacos/conf 10、–restartalways 重启docker时自动启动相关容器 注意开放端口 8848 9848 9849 1.1.2.4、修改配置文件(宿主机) vim /mydata/nacos/conf/application.propertiesspring.datasource.platformmysqldb.num1db.url.0jdbc:mysql://localhost:3306/nacos-config?characterEncodingutf8connectTimeout1000socketTimeout30000autoReconnecttrueuseUnicodetrueuseSSLfalseserverTimezoneUTCdb.userrootdb.passwordroot重启 nacos 容器 docker restart nacos安装 nacos 搞定 其他组件在使用到时会介绍 二、项目创建 2.1、在 idea 中创建一个 spring 项目删除 src 作为聚合目录这个就不过多赘述 接下来看 pom 文件的配置 ?xml version1.0 encodingUTF-8? project xmlnshttp://maven.apache.org/POM/4.0.0 xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsdmodelVersion4.0.0/modelVersiongroupIdcom.siyu/groupIdartifactIdstudy/artifactIdversion0.0.1-SNAPSHOT/versionnamestudy/name!–描述–descriptionstudy/description!– 子模块 这里你有那些子模块就有那些 moudle–modulesmodulecommon-api/modulemodulecommon-utils/modulemoduleservice/modulemodulegateway/module/modules!– 打包方式–packagingpom/packaging!– 属性配置 spring boot spring cloud spring cloud alibaba 版本一定要兼容否则会失败–propertiesjava.version1.8/java.versionproject.build.sourceEncodingUTF-8/project.build.sourceEncodingproject.reporting.outputEncodingUTF-8/project.reporting.outputEncodingspring-boot.version3.0.2/spring-boot.versionspring-cloud-alibaba.version2022.0.0.0/spring-cloud-alibaba.versionspring-cloud.version2022.0.0/spring-cloud.version/properties!–包管理–dependencyManagementdependencies!– spring boot 版本管理 –dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-dependencies/artifactIdversion\({spring-boot.version}/versiontypepom/typescopeimport/scope/dependency!-- spring cloud alibaba 版本管理 --dependencygroupIdcom.alibaba.cloud/groupIdartifactIdspring-cloud-alibaba-dependencies/artifactIdversion\){spring-cloud-alibaba.version}/versiontypepom/typescopeimport/scope/dependencydependencygroupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-dependencies/artifactIdversion\({spring-cloud.version}/versiontypepom/typescopeimport/scope/dependency/dependencies/dependencyManagementbuildpluginsplugingroupIdorg.apache.maven.plugins/groupIdartifactIdmaven-compiler-plugin/artifactIdversion3.8.1/versionconfigurationsource1.8/sourcetarget1.8/targetencodingUTF-8/encoding/configuration/pluginplugingroupIdorg.springframework.boot/groupIdartifactIdspring-boot-maven-plugin/artifactIdversion\){spring-boot.version}/versionconfigurationmainClasscom.siyu.StudyApplication/mainClassskiptrue/skip/configurationexecutionsexecutionidrepackage/idgoalsgoalrepackage/goal/goals/execution/executions/plugin/plugins/build/project 2.2、版本对应详情 在这里我给出版本对应截图一定要版本对应哦不然不兼容会报错
2.3、创建二级聚合模块 创建子模块 file —— new —— Module—— spring 脚手架创建就可以创建完成后你可以删掉 src作为二级聚合 子模块创建完毕后我们看一下pom我这里做了二级聚合在这里贴一下我的项目结构如图 首先我们看看sercvie 的 pom ?xml version1.0 encodingUTF-8? project xmlnshttp://maven.apache.org/POM/4.0.0 xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsdmodelVersion4.0.0/modelVersiongroupIdcom.siyu/groupIdartifactIdservice/artifactIdversion0.0.1-SNAPSHOT/versionnameservice/name!–描述–descriptionservice/description!–打包方式–packagingpom/packaging!–子模块–modulesmoduleuser-service/modulemodulehomework-service/modulemodulestudent-service/module/modules!–父模块–parentgroupIdcom.siyu/groupIdartifactIdstudy/artifactIdversion0.0.1-SNAPSHOT/version/parent!–版本–propertiesjava.version1.8/java.versionproject.build.sourceEncodingUTF-8/project.build.sourceEncodingproject.reporting.outputEncodingUTF-8/project.reporting.outputEncodingspring-boot.version3.0.2/spring-boot.version/propertiesdependencies!–spring boot web–dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-web/artifactId/dependency!–测试包–dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-test/artifactIdscopetest/scope/dependency!–Java 连接 mysql jar–dependencygroupIdcom.mysql/groupIdartifactIdmysql-connector-j/artifactId/dependency!–mybatis plus–dependencygroupIdcom.baomidou/groupIdartifactIdmybatis-plus-boot-starter/artifactIdversion3.5.3/version/dependency!–openfeign–dependencygroupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-starter-openfeign/artifactId/dependency!–nacos discovery–dependencygroupIdcom.alibaba.cloud/groupIdartifactIdspring-cloud-starter-alibaba-nacos-discovery/artifactIdexclusionsexclusiongroupIdcom.alibaba.nacos/groupIdartifactIdnacos-client/artifactId/exclusion/exclusions/dependency!–nacos config–dependencygroupIdcom.alibaba.cloud/groupIdartifactIdspring-cloud-starter-alibaba-nacos-config/artifactIdexclusionsexclusiongroupIdcom.alibaba.nacos/groupIdartifactIdnacos-client/artifactId/exclusion/exclusions/dependency!–nacos 客户端–dependencygroupIdcom.alibaba.nacos/groupIdartifactIdnacos-client/artifactIdversion2.3.2/version/dependencydependencygroupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-starter-loadbalancer/artifactId/dependency/dependenciesbuildpluginsplugingroupIdorg.apache.maven.plugins/groupIdartifactIdmaven-compiler-plugin/artifactIdversion3.8.1/versionconfigurationsource1.8/sourcetarget1.8/targetencodingUTF-8/encoding/configuration/pluginplugingroupIdorg.springframework.boot/groupIdartifactIdspring-boot-maven-plugin/artifactIdversion\({spring-boot.version}/versionconfigurationmainClasscom.siyu.service.ServiceApplication/mainClassskiptrue/skip/configurationexecutionsexecutionidrepackage/idgoalsgoalrepackage/goal/goals/execution/executions/plugin/plugins/build/project2.4、创建子模块 创建过程和上面创建方式一样不过多赘述。看看 user-service 的 pom ?xml version1.0 encodingUTF-8? project xmlnshttp://maven.apache.org/POM/4.0.0 xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsdmodelVersion4.0.0/modelVersiongroupIdcom.siyu/groupIdartifactIduser-service/artifactIdversion0.0.1-SNAPSHOT/versionnameuser-service/name!--描述--descriptionuser-service/description!--父模块--parentgroupIdcom.siyu/groupIdartifactIdservice/artifactIdversion0.0.1-SNAPSHOT/version/parent!--版本--propertiesjava.version1.8/java.versionproject.build.sourceEncodingUTF-8/project.build.sourceEncodingproject.reporting.outputEncodingUTF-8/project.reporting.outputEncodingspring-boot.version3.0.2/spring-boot.version/propertiesdependencies!-- user-api 在common-api中主要定义entity 和 feign接口 --dependencygroupIdcom.siyu/groupIdartifactIduser-api/artifactIdversion0.0.1-SNAPSHOT/version/dependency!--common-utils 主要定义一些公共工具--dependencygroupIdcom.siyu/groupIdartifactIdcommon-utils/artifactIdversion0.0.1-SNAPSHOT/versionscopecompile/scope/dependency/dependenciesbuildpluginsplugingroupIdorg.apache.maven.plugins/groupIdartifactIdmaven-compiler-plugin/artifactIdversion3.8.1/versionconfigurationsource1.8/sourcetarget1.8/targetencodingUTF-8/encoding/configuration/pluginplugingroupIdorg.springframework.boot/groupIdartifactIdspring-boot-maven-plugin/artifactIdversion\){spring-boot.version}/versionconfigurationmainClasscom.siyu.UserServiceApplication/mainClassskipfalse/skip/configurationexecutionsexecutionidrepackage/idgoalsgoalrepackage/goal/goals/execution/executions/plugin/plugins/build/project看看 appliction.yml (后期会迁移到 nacos) server:port: 8080 spring:config:import: nacos:user-service.yaml # nacos 中的配置文件application:name: user-service #服务名cloud:nacos:discovery:server-addr: ip:8848 #nacos地址config:server-addr: ip:8848import-check:enabled: falsefile-extension: yaml # nacos 配置文件类型datasource: # datasource 不过多解释driver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://ip:33061/study?serverTimezoneAsia/ShanghaicharacterEncodingutf8useUnicodetrueuseSSLfalseallowPublicKeyRetrievaltruepassword: rootusername: root

mybatis plus 不过多解释

mybatis-plus:mapper-locations: classpath:/mapper//*.xmltype-aliases-package: com.siyu.entityglobal-config:db-config:id-type: autologic-delete-value: 1 # 逻辑已删除值(默认为 1)logic-not-delete-value: 0 # 逻辑未删除值(默认为 0)configuration:map-underscore-to-camel-case: truecache-enabled: false接下来看看启动类 UserServiceApplication.java EnableDiscoveryClient //启动服务发现nacos EnableFeignClients // 启动 openfeign SpringBootApplication MapperScan(basePackages com.siyu.mapper) public class UserServiceApplication {public static void main(String[] args) {SpringApplication.run(UserServiceApplication.class, args);}}2.5、创建common-api 创建过程一样不做过多介绍删掉启动类这个模块不需要启动一起看看 common-api 的目录结构 看看 common-api 的 pom.xml ?xml version1.0 encodingUTF-8? project xmlnshttp://maven.apache.org/POM/4.0.0 xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsdmodelVersion4.0.0/modelVersiongroupIdcom.siyu/groupIdartifactIdcommon-api/artifactIdversion0.0.1-SNAPSHOT/versionnamecommon-api/namedescriptioncommon-api/descriptionpackagingpom/packagingparentgroupIdcom.siyu/groupIdartifactIdstudy/artifactIdversion0.0.1-SNAPSHOT/version/parentmodulesmoduleuser-api/modulemodulehomework-api/module/modulespropertiesjava.version1.8/java.versionproject.build.sourceEncodingUTF-8/project.build.sourceEncodingproject.reporting.outputEncodingUTF-8/project.reporting.outputEncodingspring-boot.version3.0.2/spring-boot.version/propertiesdependenciesdependencygroupIdcom.siyu/groupIdartifactIdcommon-utils/artifactIdversion0.0.1-SNAPSHOT/version/dependencydependencygroupIdorg.projectlombok/groupIdartifactIdlombok/artifactIdoptionaltrue/optional/dependencydependencygroupIdcom.baomidou/groupIdartifactIdmybatis-plus-boot-starter/artifactIdversion3.5.3/version/dependencydependencygroupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-starter-openfeign/artifactId/dependency/dependenciesdependencyManagementdependenciesdependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-dependencies/artifactIdversion${spring-boot.version}/versiontypepom/typescopeimport/scope/dependency/dependencies/dependencyManagementbuildpluginsplugingroupIdorg.apache.maven.plugins/groupIdartifactIdmaven-compiler-plugin/artifactIdversion3.8.1/versionconfigurationsource1.8/sourcetarget1.8/targetencodingUTF-8/encoding/configuration/pluginplugingroupIdorg.springframework.boot/groupIdartifactIdspring-boot-maven-plugin/artifactIdversion${spring-boot.version}/versionconfigurationskiptrue/skip/configurationexecutionsexecutionidrepackage/idgoalsgoalrepackage/goal/goals/execution/executions/plugin/plugins/build/project2.6、feign接口编写 创建 feign接口 package com.siyu.feign;import com.siyu.util.Result; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.GetMapping;FeignClient(name homework-service) //微服务服务名 public interface HomeWorkFeign {GetMapping(homework/list) // 要访问的微服务路径和请求方式Result getHomeworkList(); // 方法名和返回结果 }调用 feign 接口 RestController RequestMapping(user) public class UserController {Autowiredprivate UserService userService;Autowiredprivate HomeWorkFeign homeWorkFeign; // 导入feign 接口GetMapping(/{id})public ResultObject getUserById(PathVariable(id) Integer id){return Result.ok(查询成功,userService.getById(id));}GetMapping(/list)public ResultObject getUserById(){return Result.ok(查询成功,homeWorkFeign.getHomeworkList()); //调用feign 接口} }2.7、网关 gateway 模块 首先创建一个gateway模块 要注意的是不要导入 spring boot we 包具体原因就不解释了自行了解 看看 pom.xml ?xml version1.0 encodingUTF-8? project xmlnshttp://maven.apache.org/POM/4.0.0 xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsdmodelVersion4.0.0/modelVersiongroupIdcom.siyu/groupIdartifactIdgateway/artifactIdversion0.0.1-SNAPSHOT/versionnamegateway/namedescriptiongateway/descriptionparentgroupIdcom.siyu/groupIdartifactIdstudy/artifactIdversion0.0.1-SNAPSHOT/version/parentpropertiesjava.version1.8/java.versionproject.build.sourceEncodingUTF-8/project.build.sourceEncodingproject.reporting.outputEncodingUTF-8/project.reporting.outputEncodingspring-boot.version3.0.2/spring-boot.version/propertiesdependencies!–网关–dependencygroupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-starter-gateway/artifactId/dependency!–服务注册与发现依赖–dependencygroupIdcom.alibaba.cloud /groupIdartifactIdspring-cloud-starter-alibaba-nacos-discovery/artifactIdexclusionsexclusiongroupIdcom.alibaba.nacos/groupIdartifactIdnacos-client/artifactId/exclusion/exclusions/dependency!–nacos 客户端–dependencygroupIdcom.alibaba.nacos/groupIdartifactIdnacos-client/artifactIdversion2.3.2/version/dependency!–负载均衡–dependencygroupIdorg.springframework.cloud/groupIdartifactIdspring-cloud-starter-loadbalancer/artifactId/dependency/dependenciesbuildpluginsplugingroupIdorg.apache.maven.plugins/groupIdartifactIdmaven-compiler-plugin/artifactIdversion3.8.1/versionconfigurationsource1.8/sourcetarget1.8/targetencodingUTF-8/encoding/configuration/pluginplugingroupIdorg.springframework.boot/groupIdartifactIdspring-boot-maven-plugin/artifactIdversion${spring-boot.version}/versionconfigurationmainClasscom.siyu.gateway.GatewayApplication/mainClassskiptrue/skip/configurationexecutionsexecutionidrepackage/idgoalsgoalrepackage/goal/goals/execution/executions/plugin/plugins/build /project看看 gateway 的 application.yml server:port: 8088spring:application:name: gateway # 服务名称cloud:nacos:discovery:server-addr: ip:8848gateway:discovery:locator:enabled: falseroutes: # 网关路由配置- id: user-service # 路由id, 自定义唯一即可uri: lb://user-service # 路由的目的地lb是负载均衡后面跟服务名称predicates: # 路由断言也就是判断是否符合路由规则的条件- Path/user-service/ # path 按照路径进行匹配只要以/order-service/开头就符合规则filters:- StripPrefix1 # 过滤器去除请求的前缀路径StripPrefix1 表示去除请求路径的第一个路径片段- id: homework-serviceuri: lb://homework-servicepredicates:- Path/homework-service/**filters:- StripPrefix1在注释里基本都有详细的解释这里就不过多赘述 在这里我们给大家贴一张nacos的截图服务注册列表 至此项目搭建就完毕了