# RocketMQ 实战:模拟电商网站场景综合案例(二)

RocketMQ 实战:模拟电商网站场景综合案例(二)

===========================================================

一、SpringBoot 整合 Dubbo :dubbo 概述

1、dubbo 概述

Dubbo :是阿里巴巴公司开源的一款高性能、轻量级的 Java RPC 框架,它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。

2、下载 SpringBoot 集成 Dubbo 的依赖包:dubbo-spring-boot-starter

https://github.com/alibaba/dubbo-spring-boot-starter

rocketmq-spring-rocketmq-spring-all-2.0.3.zip

3、将 dubbo-spring-boot-starter 安装到本地仓库。


mvn install -Dmaven.skip.test=true 

4、Dubbo 使用流程图

在这里插入图片描述


二、SpringBoot 整合 Dubbo :zookeeper 集群搭建

1、zookeeper 集群搭建:准备工作

1.1 安装 JDK

sudo apt install jdk-8
1.2 将 Zookeeper 上传到服务器上 /usr/local/zookeeper/
# 建议下载 zookeeper-3.5 以上完全版本/usr/local/zookeeper/zookeeper-3.4.6.tar.gz /usr/local/zookeeper/apache-zookeeper-3.5.6-bin.tar.gz
1.3 解压 Zookeeper,并创建 data 目录,将 conf 下的 zoo_sample.cfg 文件改名为 zoo.cfg

# 切换目录:
cd /usr/local/zookeeper/# 解压:
sudo tar -zvxf zookeeper-3.4.6.tar.gz# 创建 data 目录:
mkdir ./zookeeper-3.4.6/data/# 将 conf 下的 zoo_sample.cfg 文件改名为 zoo.cfg
mv ./zookeeper-3.4.6/conf/zoo_sample.cfg ./zookeeper-3.4.6/conf/zoo.cfg 
1.4 建立 /usr/local/zookeeper-cluster 文件夹,将解压后的 Zookeeper 复制到三个目录。

# 切换目录:
cd /usr/local/zookeeper/# 创建 zookeeper-cluster 目录:
mkdir /usr/local/zookeeper/zookeeper-cluster/# 将解压后的 Zookeeper 复制到三个目录
cp -rf /usr/local/zookeeper/zookeeper-3.4.6  /usr/local/zookeeper/zookeeper-cluster/zookeeper-1
cp -rf /usr/local/zookeeper/zookeeper-3.4.6  /usr/local/zookeeper/zookeeper-cluster/zookeeper-2
cp -rf /usr/local/zookeeper/zookeeper-3.4.6  /usr/local/zookeeper/zookeeper-cluster/zookeeper-3
1.5 配置一个 zookeeper 的 dataDir ( zoo.cfg ) , clientPort 分别为:2181, 2182, 2183

# 修改  /usr/local/zookeeper/zookeeper-cluster/zookeeper-1/conf/zoo.cfg 
cd /usr/local/zookeeper/zookeeper-cluster/
sudo vim ./zookeeper-1/conf/zoo.cfg clientPort=2181
dataDir=/usr/local/zookeeper/zookeeper-cluster/zookeeper-1/data# 修改  /usr/local/zookeeper/zookeeper-cluster/zookeeper-2/conf/zoo.cfg 
cd /usr/local/zookeeper/zookeeper-cluster/
sudo vim ./zookeeper-2/conf/zoo.cfg clientPort=2182
dataDir=/usr/local/zookeeper/zookeeper-cluster/zookeeper-2/data# 修改  /usr/local/zookeeper/zookeeper-cluster/zookeeper-3/conf/zoo.cfg 
cd /usr/local/zookeeper/zookeeper-cluster/
sudo vim ./zookeeper-3/conf/zoo.cfg clientPort=2183
dataDir=/usr/local/zookeeper/zookeeper-cluster/zookeeper-3/data

2、zookeeper 集群搭建:配置集群

2.1 在每一个 zookeeper 的 data 目录下创建一个 myid 文件,内容分别为 1、2、3。这个文件就是记录每个服务器的 ID。

# 切换目录:
cd /usr/local/zookeeper/zookeeper-cluster/# 创建并编辑 myid 文件:
sudo vim ./zookeeper-1/data/myid 
1# 创建并编辑 myid 文件:
sudo vim ./zookeeper-2/data/myid 
2# 创建并编辑 myid 文件:
sudo vim ./zookeeper-3/data/myid 
3
2.2 在每一个 zookeeper 的 zoo.cfg 配置客户端访问端口(clientPort)和集群服务器 IP 列表。

# 切换目录:
cd /usr/local/zookeeper/zookeeper-cluster/#  编辑 zoo.cfg 文件:
sudo vim ./zookeeper-1/conf/zoo.cfg # 配置样例:server.服务器 ID = 服务器 IP 地址 :服务器之间通信的端口 :服务器之间投票选举的端口
server.1=192.168.25.140:2881:3881
server.2=192.168.25.140:2882:3882
server.3=192.168.25.140:2883:3883# 或者:(填写你自己虚拟机的IP地址)
server.1=172.18.30.110:2881:3881
server.2=172.18.30.110:2882:3882
server.3=172.18.30.110:2883:3883#  编辑 zoo.cfg 文件:
sudo vim ./zookeeper-2/conf/zoo.cfg # 配置样例:server.服务器 ID = 服务器 IP 地址 :服务器之间通信的端口 :服务器之间投票选举的端口
server.1=192.168.25.140:2881:3881
server.2=192.168.25.140:2882:3882
server.3=192.168.25.140:2883:3883# 或者:(填写你自己虚拟机的IP地址)
server.1=172.18.30.110:2881:3881
server.2=172.18.30.110:2882:3882
server.3=172.18.30.110:2883:3883#  编辑 zoo.cfg 文件:
sudo vim ./zookeeper-3/conf/zoo.cfg # 配置样例:server.服务器 ID = 服务器 IP 地址 :服务器之间通信的端口 :服务器之间投票选举的端口
server.1=192.168.25.140:2881:3881
server.2=192.168.25.140:2882:3882
server.3=192.168.25.140:2883:3883# 或者:(填写你自己虚拟机的IP地址)
server.1=172.18.30.110:2881:3881
server.2=172.18.30.110:2882:3882
server.3=172.18.30.110:2883:3883

3、zookeeper 集群搭建:启动集群


# 切换目录:
cd /usr/local/zookeeper/zookeeper-cluster/# 启动 zookeeper 
./zookeeper-1/bin/zkServer.sh start # 启动 zookeeper 
./zookeeper-2/bin/zkServer.sh start # 启动 zookeeper 
./zookeeper-3/bin/zkServer.sh start # 查看 zookeeper 启动状态
./zookeeper-1/bin/zkServer.sh status # 查看 zookeeper 启动状态
./zookeeper-2/bin/zkServer.sh status # 查看 zookeeper 启动状态
./zookeeper-3/bin/zkServer.sh status 

三、SpringBoot 整合 Dubbo :dubbo 服务接口开发

1、打开 idea 创建 springboot-dubbo-interface 项目,并在项目 pom.xml 中添加 依赖。

--> idea --> File --> New --> Project --> Maven Project SDK: ( 1.8(java version "1.8.0_131" ) --> Next --> Groupld : ( djh.it )Artifactld : ( springboot-dubbo-interface )Version : 1.0-SNAPSHOT--> Name: ( springboot-dubbo-interface )Location: ( ...\springboot-dubbo-interface\ )	--> Finish

2、在 springboot-dubbo-interface 项目中,创建 接口类 IUseService.java


/***   springboot-dubbo-interface\src\main\java\djh\it\shop\service\IUseService.java**   2024-6-4 创建 接口类 IUseService.java*/package djh.it.shop.service;public interface IUseService {public String sayHello(String name);
}

3、把 springboot-dubbo-interface 项目 install 安装一下,让它生成 引用 .jar 包。


右键 springboot-dubbo-interface 项目 ---》Run Maven ---》clean Install 
---》target 目录会生成 springboot-dubbo-interface-1.0-SNAPSHOT.jar或者:
idea 右边 Maven ---》springboot-dubbo-interface 项目 ---》lifecycle ---》install 
---》target 目录会生成 springboot-dubbo-interface-1.0-SNAPSHOT.jar

4、打开 idea 创建 springboot-dubbo-provider 项目,并在项目 pom.xml 中添加 接口工程 依赖。

--> idea --> File --> New --> Project --> Maven Project SDK: ( 1.8(java version "1.8.0_131" ) --> Next --> Groupld : ( djh.it )Artifactld : ( springboot-dubbo-provider )Version : 1.0-SNAPSHOT--> Name: ( springboot-dubbo-provider )Location: ( ...\springboot-dubbo-provider\ )	--> Finish

<?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>djh.it</groupId><artifactId>springboot-dubbo-provider</artifactId><version>1.0-SNAPSHOT</version><dependencies><dependency><groupId>djh.it</groupId><artifactId>springboot-dubbo-interface</artifactId><version>1.0-SNAPSHOT</version></dependency></dependencies></project>
<!-- D:\Java\java-test\idea\springboot-dubbo-provider\pom.xml -->

5、打开 idea 创建 springboot-dubbo-consumer 项目,并在项目 pom.xml 中添加 接口工程 依赖。

--> idea --> File --> New --> Project --> Maven Project SDK: ( 1.8(java version "1.8.0_131" ) --> Next --> Groupld : ( djh.it )Artifactld : ( springboot-dubbo-consumer )Version : 1.0-SNAPSHOT--> Name: ( springboot-dubbo-consumer )Location: ( ...\springboot-dubbo-consumer\ )	--> Finish

<?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>djh.it</groupId><artifactId>springboot-dubbo-consumer</artifactId><version>1.0-SNAPSHOT</version><dependencies><dependency><groupId>djh.it</groupId><artifactId>springboot-dubbo-interface</artifactId><version>1.0-SNAPSHOT</version></dependency></dependencies></project>
<!-- D:\Java\java-test\idea\springboot-dubbo-consumer\pom.xml -->

四、SpringBoot 整合 Dubbo :dubbo 服务提供方

1、打开 springboot-dubbo-provider 项目 pom.xml 完善 依赖。


<?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>djh.it</groupId><artifactId>springboot-dubbo-provider</artifactId><version>1.0-SNAPSHOT</version><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.0.1.RELEASE</version></parent><dependencies><dependency><groupId>djh.it</groupId><artifactId>springboot-dubbo-interface</artifactId><version>1.0-SNAPSHOT</version></dependency><!--  dubbo --><dependency><groupId>com.alibaba.spring.boot</groupId><artifactId>dubbo-spring-boot-starter</artifactId><version>2.0.0</version></dependency><!--  spring-boot-stater --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter</artifactId><exclusions><exclusion><artifactId>log4j-to-slf4j</artifactId><groupId>org.apache.logging.log4j</groupId></exclusion></exclusions></dependency><!--  zookeeper --><dependency><groupId>org.apache.zookeeper</groupId><artifactId>zookeeper</artifactId><version>3.4.10</version><!--  依赖排除,避免多个日志冲突 --><exclusions><exclusion><groupId>org.slf4j</groupId><artifactId>slf4j-log4j12</artifactId></exclusion><exclusion><groupId>log4j</groupId><artifactId>log4j</artifactId></exclusion></exclusions></dependency><!--  zkclieng --><dependency><groupId>com.101tec</groupId><artifactId>zkclient</artifactId><version>0.9</version><exclusions><exclusion><artifactId>slf4j-log4j12</artifactId><groupId>org.slf4j</groupId></exclusion></exclusions></dependency></dependencies>
</project>
<!-- D:\Java\java-test\idea\springboot-dubbo-provider\pom.xml -->

2、在 springboot-dubbo-provider 项目中,创建 配置文件 application.properties


##  D:\Java\java-test\idea\springboot-dubbo-provider\src\main\resources\application.propertiesspring.application.name=dubbo-demo-provider
spring.dubbo.application.id=dubbo-demo-provider
spring.dubbo.application.name=dubbo-demo-provider
# spring.dubbo.registry.address=zookeeper://192.168.25.140:2181;zookeeper://192.168.25.140:2182;zookeeper://192.168.25.140:2183
spring.dubbo.registry.address=zookeeper://172.18.30.110:2181;zookeeper://172.18.30.110:2182;zookeeper://172.18.30.110:2183spring.dubbo.server=true
spring.dubbo.protocol.name=dubbo
spring.dubbo.protocol.port=20880

3、在 springboot-dubbo-provider 项目中,创建 启动类 ProviderApplication.java


/***   springboot-dubbo-provider\src\main\java\djh\it\shop\springboot\dubbo\ProviderApplication.java**   2024-6-4 创建 启动类 ProviderApplication.java*/package djh.it.shop.springboot.dubbo;import com.alibaba.dubbo.spring.boot.annotation.EnableDubboConfiguration;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplication
@EnableDubboConfiguration
public class ProviderApplication {public static void main(String[] args) {SpringApplication.run(ProviderApplication.class, args);}
}

4、在 springboot-dubbo-provider 项目中,创建 接口服务实现类 UserServiceImpl.java 。


/***   springboot-dubbo-provider\src\main\java\djh\it\shop\springboot\dubbo\service\impl\UserServiceImpl.java**   2024-6-4 创建 接口服务实现类 UserServiceImpl.java*/package djh.it.shop.springboot.dubbo.service.impl;import com.alibaba.dubbo.config.annotation.Service;
import djh.it.shop.service.IUseService;
import org.springframework.stereotype.Component;@Component
@Service(interfaceClass = IUseService.class)
public class UserServiceImpl implements IUseService {@Overridepublic String sayHello(String name) {return "hello: " + name;}
}

五、SpringBoot 整合 Dubbo :dubbo-admin 管理平台搭建

1、下载并上传 tomcat 到服务器上。


# 切换目录
cd /usr/local/zookeeper/ # 上传 tomcat : apache-tomcat-7.0.52.tar.gz 

2、解压 tomcat


# 切换目录
cd /usr/local/zookeeper/ # 解压 tomcat 
tar -zvxf apache-tomcat-7.0.52.tar.gz

3、下载并上传 dubbo.war 到服务器上。


# 切换目录
cd /usr/local/zookeeper/apache-tomcat-7.0.52/webapps/# 上传 dubbo.war : dubbo-admin.war

4、启动 tomcat


# 切换目录
cd /usr/local/zookeeper/apache-tomcat-7.0.52/bin/# 启动 tomcat 
./startup.sh # 查看启动日志 
tail -f ../logs/catalina.log 

5、访问 dubbo 控制台。默认用户名、密码:root

浏览器地址栏输入:、http://虚拟机IP:8080/项目名
如:http://192.168.25.140:8080/dubbo-admin

在这里插入图片描述


六、SpringBoot 整合 Dubbo :dubbo 服务消费方

1、打开 springboot-dubbo-consumer 项目 pom.xml 完善 依赖。


<?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>djh.it</groupId><artifactId>springboot-dubbo-consumer</artifactId><version>1.0-SNAPSHOT</version><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.0.1.RELEASE</version></parent><dependencies><dependency><groupId>djh.it</groupId><artifactId>springboot-dubbo-interface</artifactId><version>1.0-SNAPSHOT</version></dependency><!--  web --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><!--  dubbo --><dependency><groupId>com.alibaba.spring.boot</groupId><artifactId>dubbo-spring-boot-starter</artifactId><version>2.0.0</version></dependency><!--  spring-boot-stater --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter</artifactId><exclusions><exclusion><artifactId>log4j-to-slf4j</artifactId><groupId>org.apache.logging.log4j</groupId></exclusion></exclusions></dependency><!--  zookeeper --><dependency><groupId>org.apache.zookeeper</groupId><artifactId>zookeeper</artifactId><version>3.4.10</version><!--  依赖排除,避免多个日志冲突 --><exclusions><exclusion><groupId>org.slf4j</groupId><artifactId>slf4j-log4j12</artifactId></exclusion><exclusion><groupId>log4j</groupId><artifactId>log4j</artifactId></exclusion></exclusions></dependency><!--  zkclieng --><dependency><groupId>com.101tec</groupId><artifactId>zkclient</artifactId><version>0.9</version><exclusions><exclusion><artifactId>slf4j-log4j12</artifactId><groupId>org.slf4j</groupId></exclusion></exclusions></dependency></dependencies>
</project>
<!-- D:\Java\java-test\idea\springboot-dubbo-consumer\pom.xml -->

2、在 springboot-dubbo-consumer 项目中,创建 配置文件 application.properties 。


##  springboot-dubbo-consumer\src\main\resources\application.propertiesspring.application.name=dubbo-demo-consumer
spring.dubbo.application.id=dubbo-demo-consumer
spring.dubbo.application.name=dubbo-demo-consumer
spring.dubbo.registry.address=zookeeper://192.168.25.140:2181;zookeeper://192.168.25.140:2182;zookeeper://192.168.25.140:2183

3、在 springboot-dubbo-consumer 项目中,创建 启动类 ConsumerApplication.java 。


/***   springboot-dubbo-consumer\src\main\java\djh\it\shop\springboot\dubbo\ConsumerApplication.java**   2024-6-4 创建 启动类 ConsumerApplication.java*/package djh.it.shop.springboot.dubbo;import com.alibaba.dubbo.spring.boot.annotation.EnableDubboConfiguration;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplication
@EnableDubboConfiguration
public class ConsumerApplication {public static void main(String[] args) {SpringApplication.run(ConsumerApplication.class, args);}
}

4、在 springboot-dubbo-consumer 项目中,创建 调用服务 的 Controller 类 UserController.java


/***   D:\Java\java-test\idea\springboot-dubbo-consumer\src\main\java\djh\it\shop\springboot\dubbo\controller\UserController.java**   2024-6-4 创建 调用服务 的 Controller 类 UserController.java*/package djh.it.shop.springboot.dubbo.controller;import com.alibaba.dubbo.config.annotation.Reference;
import djh.it.shop.service.IUseService;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;@RestController
@RequestMapping("/user")
public class UserController {@Reference  //这里不能使用 @Autowired 注解,因为是RPC远程调用,要使用 dubbo 注解 @Referenceprivate IUseService useService;@RequestMapping("/sayHello")public String sayHello(String name){return useService.sayHello(name);}
}

5、启动,测试 访问 dubbo 控制台。默认用户名、密码:root

1)dubbo 控制台出现 消费者服务。

在这里插入图片描述

2)浏览器地址栏输入:、http://虚拟机IP:8080/类名映射/方法名映射?参数=参数值

如:http://192.168.25.140:8080/user/sayHello?name=zs
http://localhost:8080/user/sayHello?name=张三丰

在这里插入图片描述

上一节关联链接请点击:
# RocketMQ 实战:模拟电商网站场景综合案例(一)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/23401.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Ubuntu系统本地搭建WordPress网站并发布公网实现远程访问

文章目录 前言1. 搭建网站&#xff1a;安装WordPress2. 搭建网站&#xff1a;创建WordPress数据库3. 搭建网站&#xff1a;安装相对URL插件4. 搭建网站&#xff1a;内网穿透发布网站4.1 命令行方式&#xff1a;4.2. 配置wordpress公网地址 5. 固定WordPress公网地址5.1. 固定地…

QQ号码采集器

寅甲QQ号码采集软件, 一款采集QQ号、QQ邮件地址&#xff0c;采集QQ群成员、QQ好友的软件。可以按关键词采集&#xff0c;如可以按地区、年龄、血型、生日、职业等采集。采集速度非常快且操作很简单。

电能质量在线监测装置

安科瑞电气股份有限公司 祁洁 15000363176 一、装置概述 APView500电能质量在线监测装置采用了高性能多核平台和嵌入式操作系统&#xff0c;遵照IEC61000-4-30《测试和测量技术-电能质量测量方法》中规定的各电能质量指标的测量方法进行测量&#xff0c;集谐波分析、波形采…

如何应对Android面试官 -> 玩转 MVx(MVC、MVP、MVVM、MVI)

前言 本章主要基于以下几个方向进行 MVx 的讲解&#xff0c;带你玩转 MVx&#xff1b; MVC、MVP、MVVM、MVI 它们到底是什么&#xff1f; 分文件、分模块、分模式 一个文件打天下 为什么不要用一个页面打天下&#xff1f; 页面是给用户看的&#xff0c;随着版本的迭代&…

kali扩容

通过wmware虚拟机–>设置–>添加40G容量的硬盘。 ──(root㉿kali)-[~/桌面] fdisk -lDisk /dev/sda: 40 GiB, 42949672960 bytes, 83886080 sectors …

Java多线程-初阶1

博主主页: 码农派大星. 数据结构专栏:Java数据结构 数据库专栏:MySQL数据库 JavaEE专栏:JavaEE 关注博主带你了解更多数据结构知识 1. 认识线程&#xff08;Thread&#xff09; 1.线程是什么 ⼀个线程就是⼀个 "执⾏流". 每个线程之间都可以按照顺序执⾏⾃⼰的代…

计算机图形学入门07:光栅化中的采样与走样

1.什么是光栅化&#xff1f; 在前面的章节里提过&#xff0c;光栅化(Rasterization)就是将物体投影在屏幕上的图形&#xff0c;依据像素打散&#xff0c;每一个像素中填充不同的颜色。 如下图中的老虎&#xff0c;可以看到屏幕上有各种多边形&#xff0c;这些多边形经过各种变换…

教师办公神器推荐,口碑爆棚!

亲爱滴老师们&#xff0c;我要给大家安利几款超级实用的教师办公神器&#xff0c;不仅功能强大&#xff0c;而且口碑爆棚&#xff0c;绝对能让你们的工作效率飞起来&#xff01; 博思白板&#xff1a;创意无限&#xff0c;教学生动 一款可以无限扩展的数字白板&#xff0c;让教…

Lodop 实现局域网打印

文章目录 前言一、Lodop支持打印的方式lodop 打印方式一般有3种&#xff1a;本地打印局域网集中打印广域网AO打印 二、集成步骤查看lodop 插件的服务端口&#xff1a;查看ip后端提供接口返回ip&#xff0c;前端动态获取最后步骤 前言 有时候会根据不同的ip来获取资源文件&…

linux网络 dns域名解析

目录 DNS 域名体系结构 如何实现域名解析 正向解析 反向解析 主从服务器解析 bond 网卡 DNS 是域名系统的简称 域名和ip地址之间的映射关系 互联网中 IP地址是通信的唯一标识 逻辑地址 访问网站 域名 IP地址不好记 域名朗朗上口 好记 域名解析的目的就是为了实现 访…

为什么我们需要在软件本地化过程中使用术语服务?

你知道软件翻译和本地化的术语服务吗&#xff1f;此解决方案涵盖源术语和目标术语的创建、开发和维护。所有术语都存储在具有多个字段的数据库中&#xff0c;包括术语定义、用法示例、上下文和历史记录。这使我们能够正确处理每个术语的创建或更改请求&#xff0c;避免创建重复…

【ai】pycharm远程ssh开发

选 远程开发&#xff1a; SSH 连接到服务器 局域网的ubutnu 服务器的 ssh登录账号 登录后就开始下载 可能ubutnu 服务器上安装一个serverwindows 客户端的pychramr上装一个client &#xff1f; 突然发现实际有两个下载&#xff1a; 后端也要安装&#xff0c;竟然需要1G 那…

网站调用Edge浏览器API:https://api-edge.cognitive.microsofttranslator.com/translate

Edge浏览器有自带的翻译功能&#xff0c;在运行pc项目可能会遇到疯狂调用Edge的API https://api-edge.cognitive.microsofttranslator.com/translate 这个URL&#xff08;https://api-edge.cognitive.microsofttranslator.com/translate&#xff09;指向的是微软认知服务中的A…

【问题解决】adb remount 失败或刷机无法连接设备(KaiOS)

问题描述 1、设备无法adb remount成功&#xff0c; 2、通过fastboot无法识别设备&#xff0c;一直卡住 3、已经识别到9008端口&#xff0c;但是设备与刷机工具connect fail&#xff0c;甚至软件crash 解决方案 1、安装高通驱动工具&#xff1a;QDLoder HS-USB Driver QDLoade…

【Python】【matLab】模拟退火算法求二元高次函数最小值

一、目标函数 求二元高次函数的最小值。目标函数选择&#xff1a; 用于测试算法的简单的目标函数&#xff1a; 二、Python代码实现 import numpy as np# 目标函数&#xff08;2变量&#xff09; def objective_function(x):return x[0] ** 2 2 * x[0] - 15 4 * 4 * 2 * x[…

【Vue】项目目录介绍和运行流程

文章目录 一、项目目录介绍二、public/index.html三、src/main.js四、运行流程 一、项目目录介绍 虽然脚手架中的文件有很多&#xff0c;目前咱们只需认识三个文件即可&#xff0c;这三个文件就决定了我们项目的运行 main.js 入口文件App.vue App根组件index.html 模板文件 我…

递归在多级数据结构中的简单应用

哈喽&#xff0c;我是小码&#xff0c;半年多没更新了&#xff0c;这段时间换了新工作&#xff0c;工作也很忙。后续会尽量多写点&#xff0c;坚持确实是一件很难&#xff0c;很酷的事情。最近在公司负责开发商品有关的开发&#xff0c;商品包含类型、款式等属性&#xff0c;而…

视频推广短信:新时代的营销利器(视频短信XML接口示例)

随着移动互联网的普及&#xff0c;短信已经不再是简单的文字信息传递工具&#xff0c;而是逐渐演变为一种有效的推广手段。特别是当视频与短信结合时&#xff0c;它所带来的营销效率更是令人瞩目。 一、视频推广短信的特点 1.直观性&#xff1a;与传统的文字短信相比&#xf…

游戏盾之应用加速,何为应用加速

在数字化时代&#xff0c;用户对于应用程序的防护要求以及速度和性能要求越来越高。为了满足用户的期望并提高业务效率&#xff0c;应用加速成为了不可忽视的关键。 应用加速是新一代的智能分布式云接入系统&#xff0c;采用创新级SD-WAN跨域技术&#xff0c;针对高防机房痛点进…

令人瞠目结舌的8个ChatGPT-4o提示词

博主猫头虎的技术世界 &#x1f31f; 欢迎来到猫头虎的博客 — 探索技术的无限可能&#xff01; 专栏链接&#xff1a; &#x1f517; 精选专栏&#xff1a; 《面试题大全》 — 面试准备的宝典&#xff01;《IDEA开发秘籍》 — 提升你的IDEA技能&#xff01;《100天精通鸿蒙》 …