# Spring Cloud Alibaba Nacos_配置中心与服务发现(四)

news2024/12/23 0:47:15

Spring Cloud Alibaba Nacos_配置中心与服务发现(四)

一、Nacos 配置管理-集群部署

1、 把 nacos 应用程序包,复制3份,分别命名为 nacos1, nacos2, nacos3

分别在 conf 目录下,修改 application.properties 配置文件,
更改端口号为:8848, 8849,8850	
nacos.inetutils.ip-address=127.0.0.1

2、配置集群模式:

分别在 conf 目录下,修改 cluster.conf.example 配置文件为:cluster.conf
并添加如下代码:

#it is ip
#example
127.0.0.1:8848
127.0.0.1:8849
127.0.0.1:8850

3、集群模式启动 nacos

startup -m cluster 

4、修改配置文件 bootstrap.yml 配置文件,添加集群配置。

	
##  C:\java-test\idea2019\nacos_config\service1\src\main\resources\bootstrap.yml

## bootstrap.yml 配置文件加载顺序优先于 application.yml 配置文件。
server:
  port: 56010  #启动端口 命令行注入

spring:
  application:
    name: service1
  cloud:
    nacos:
      config:
#        enabled: false  # 关闭配置
        # 1) 通过 application 的 name 加 file-extension 后缀名称 :service1.yaml 配置的 DataId 优先级最高。
        server-addr: 127.0.0.1:8848, 127.0.0.1:8849, 127.0.0.1:8850  #配置中心地址
        file-extension: yaml  #dataid 的名称是 application 的 name 加 file-extension 名称 :service1.yaml
        namespace: eae273b2-9298-4b99-b4aa-a3d5ea5df089  #开发环境
        group: TEST_GROUP  #测试组
        # 2)扩展的 DataId 配置 优先级次之。config external configuration
        # 1.Data Id 在默认的组 DEFAULT_GROUP,不支持配置的动态刷新: common.age=18  common.address=beijing # 优先级低于 ext-config[1]  ext-config[2]
        ext-config[0]:
          data-id: ext-config-common01.properties
        # 2.Data Id 不在默认的组,不支持动态刷新:  common.birthday=1990-8-8 # 优先级高于 ext-config[0]
        ext-config[1]:
          data-id: ext-config-common02.properties
          group: GLOBALE_GROUP
        # 3.Data Id 既不在默认的组,也支持动态刷新: common.fullname=djh # 优先级高于 ext-config[0] 和 ext-config[1]
        ext-config[2]:
          data-id: ext-config-common03.properties
          group: REFRESH_GROUP
          refresh: true  #动态刷新
#        # 3)自定义共享 DataId 配置,只支持 DEFAULT_GROUP 分组,优先级最低。
#        shared-dataids: ext-config-common01.properties, ext-config-common03.properties, ext-config-common03.properties
#        refreshable: ext-config-common01.properties

5、试着停掉一个 nacos 服务 ,启动 nacos 服务 (运行启动类 ),访问不受影响。

	
##  C:\java-test\idea2019\nacos_config\service1\src\main\resources\bootstrap.yml

## bootstrap.yml 配置文件加载顺序优先于 application.yml 配置文件。
server:
  port: 56010  #启动端口 命令行注入

spring:
  application:
    name: service1
  cloud:
    nacos:
      config:
#        enabled: false  # 关闭配置
        # 1) 通过 application 的 name 加 file-extension 后缀名称 :service1.yaml 配置的 DataId 优先级最高。
        server-addr: 127.0.0.1:8848, 127.0.0.1:8849, 127.0.0.1:8850  #配置中心地址
        file-extension: yaml  #dataid 的名称是 application 的 name 加 file-extension 名称 :service1.yaml
        namespace: eae273b2-9298-4b99-b4aa-a3d5ea5df089  #开发环境
        group: TEST_GROUP  #测试组
        # 2)扩展的 DataId 配置 优先级次之。config external configuration
        # 1.Data Id 在默认的组 DEFAULT_GROUP,不支持配置的动态刷新: common.age=18  common.address=beijing # 优先级低于 ext-config[1]  ext-config[2]
        ext-config[0]:
          data-id: ext-config-common01.properties
        # 2.Data Id 不在默认的组,不支持动态刷新:  common.birthday=1990-8-8 # 优先级高于 ext-config[0]
        ext-config[1]:
          data-id: ext-config-common02.properties
          group: GLOBALE_GROUP
        # 3.Data Id 既不在默认的组,也支持动态刷新: common.fullname=djh # 优先级高于 ext-config[0] 和 ext-config[1]
        ext-config[2]:
          data-id: ext-config-common03.properties
          group: REFRESH_GROUP
          refresh: true  #动态刷新
#        # 3)自定义共享 DataId 配置,只支持 DEFAULT_GROUP 分组,优先级最低。
#        shared-dataids: ext-config-common01.properties, ext-config-common03.properties, ext-config-common03.properties
#        refreshable: ext-config-common01.properties
	

6、浏览器地址栏输入:http://localhost:56010/configs2


二、Nacos 配置管理-课程总结

1、查询所有进程及线程端口占用情况,并关闭某端口的方法

1.1、windows 系统下( cmd 模式下):

1)查询当前系统所有网络连接和监听端口以及对应的进程标识(PID):

netstat -aon 
netstat -nao 

2)查询特定端口占用情况,端口对应的 PID,

netstat -ano | findstr <端口号>

如:要查询 8848 端口占用情况:

netstat -aon | findstr 8848
netstat -nao |findstr "8848"

或者:

netstat -aon | findstr \"8848\"
 
3)若该 PID0,则查看指定 PID 的进程 

tasklist | findstr 0
或者:
tasklist | findstr “0”

## 如:查询 PID11664 对应的程序进程:
tasklist | findstr 11664
tasklist | findstr "11664"

4)如果查看到是哪个进程或者程序占用了 8848 端口,
得知是哪个进程后,若该进程结束对后续操作无影响,

则通过 taskkill /T /F /PID 0 来结束该进程。

## 强制结束进程,包括所有关联的线程
taskkill /T /F /PID 0 
taskkill /T /F /PID 11664 

5)netstat 命令参数全解析
netstat -help
1.2、linux 系统下:

1)所有正在使用的端口及关联的进程/应用:

netstat -nap  ## 列出当前系统占用的端口

ps aux  ## 列出当前系统所有的进程


2)列出具体的端口占用情况:

netstat -tunlp | grep 3306  ## 端口号
netstat -tunlp | grep mysql  ## 进程名称
netstat -tunlp | grep 29520  ## 进程ID 


3)检查那个端口被那个进程占用:

netstat -lnp | grep 2222  ## 查看端口 2222 的占用情况

4)查看进程的详细信息

ps 6789 
ps -aux | grep 6789

5)关闭进程,发送 kill 信号到指定的进程或进程组。使它们根据该信号进行操作。

kill -s 9 PID
kill -s SIGKILL PID 
kill -s KILL PID 


## 杀掉进程,重新启动 apache 
kill -9 6 789  ## 杀掉编号为 6789 的进程

2、nacos2.x 启动出错问题分析

nacos2.0 以上,双击 startup.cmd 闪退,或者 cmd 下执行 startup 启动时的错分析

nacos2.x 以上,默认以集群方式启动,如果你未配置相关集群参数,
就会启动闪退或报错。
所以单机模式启动需加参数启动服务。

  nacos-33.png  图片 nacos2.0-1.png

解决:添加参数,以改变成单机模式启动:

  • 单机模式启动
    startup.cmd -m standalone

  • 集群模式启动
    startup.cmd -m cluster

   nacos-34.png  图片 nacos2.0-2.png

   nacos-35.png  图片 nacos2.0-3.png

3、windows 系统下(nacos1.x) nacos-1.1.3 链接数据库 mysql8.0 出错分析

3.1、首先以下方法亲测无效:

1)需要在数据库 URL 链接配置信息中 添加 allowPublicKeyRetrieval=true 无效
db.url.0=**&allowPublicKeyRetrieval=true

2) 在 nacos 根目录下新建文件夹 plugins/mysql/ 文件夹,并上传相应驱动
mysql-connector-java-8.0.23.jar 无效。

3)查看 …/nacos/bin/startup.cmd 文件 mysql 加载配置,正确,无效。

set “JAVA_OPT=%JAVA_OPT% -Xbootclasspath/a:%BASE_DIR%\plugins\cmdb:%BASE_DIR%\plugins\mysql”
set “JAVA_OPT=%JAVA_OPT% -Dnacos.home=%BASE_DIR%”
set “JAVA_OPT=%JAVA_OPT% -Dloader.path=%BASE_DIR%/plugins/health -jar %BASE_DIR%\target\nacos-server.jar”
set “JAVA_OPT=%JAVA_OPT% --spring.config.location=%CUSTOM_SEARCH_LOCATIONS%”
set “JAVA_OPT=%JAVA_OPT% --logging.config=%BASE_DIR%/conf/nacos-logback.xml”

4)检查 application.properties 文件中,配置外部数据库链接用户名密码等,正确,无效。

#mysql datasource
spring.datasource.platform=mysql

db.num=1
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos_config?characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
db.user=root
db.password=******

5) 开启 mysql8.0 root 远程权限,无效。

mysql> use mysql
Database changed
mysql> select host,user from user;
±----------±-----------------+
| host | user |
±----------±-----------------+
| localhost | mysql.infoschema |
| localhost | mysql.session |
| localhost | mysql.sys |
| localhost | root |
| localhost | testuser |
±----------±-----------------+
5 rows in set (0.06 sec)

mysql> update user set host=‘%’ where user=‘root’;
Query OK, 1 row affected (0.09 sec)
Rows matched: 1 Changed: 1 Warnings: 0

mysql> flush privileges;
Query OK, 0 rows affected (0.07 sec)

6)下载 nacos-1.1.3 源码,idea 打开,修改,重新打包,失败!

  • 1)修改 nacos 项目根目录下的 pom.xml,手动指定 mysql 驱动版本

(C:\java-test\idea2019\nacos-1.1.3\pom.xml)

mysql mysql-connector-java 8.0.23
  • 2)修改 naming[nacos-naming] 下 相关类

( 修改 com.alibaba.nacos.naming.healthcheck.MysqlHealthCheckProcessor.java )

// 修改前
//import com.mysql.jdbc.jdbc2.optional.MysqlDataSource;

// 修改后
import com.mysql.cj.jdbc.MysqlDataSource;

  • 3) 修改mysql连接参数:mysql8.X版本需要指定时区等参数(这里可不修改,但最好修改一下)

找到 nacos-console 下的 src/main/resources/META-INF/nacos-default.properties
并修改 db.url 的数据库连接配置为

characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true

// 修改前
db.url.0=jdbc:mysql://11.162.196.161:3306/diamond_devtest?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.url.1=jdbc:mysql://11.163.152.91:3306/diamond_devtest?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true

// 修改后
db.url.0=jdbc:mysql://11.162.196.161:3306/diamond_devtest?characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
db.url.1=jdbc:mysql://11.163.152.91:3306/diamond_devtest?characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true

  • 4)打包运行,执行构建命令:mvn install 失败!!!

mvn -Prelease-nacos -DskipTests clean install -U

打包失败!!!

3.2、 解决方案1:

1)在 nacos 根目录下新建文件夹 plugins/mysql/ 文件夹,并上传相应驱动
mysql-connector-java-8.0.23.jar 无效。

2)将 nacos 目录下的 conf\application.properties 改名为 bootstrap.properties
关键一步,否则上面的不会起作用。

3) 在配置文件 conf/bootstrap.properties 中,添加数据库配置:

#mysql datasource
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos_config?characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
db.user=root
db.password=yourpassword

4)运行脚本bin/startup.cmd(linux系统运行.sh脚本)

5)启动成功,可通过浏览器访问 http://127.0.0.1:8848/nacos

用户名:nacos 密码:nacos

3.3、解决方案2:

下载 nacos-1.1.3 源码,idea 打开,修改,重新打包,

1)修改 nacos 项目根目录下的 pom.xml,手动指定 mysql 驱动版本

(C:\java-test\idea2019\nacos-1.1.3\pom.xml)

mysql mysql-connector-java 8.0.23

2)修改 naming[nacos-naming] 下 相关类

( 修改 com.alibaba.nacos.naming.healthcheck.MysqlHealthCheckProcessor.java )

// 修改前
//import com.mysql.jdbc.jdbc2.optional.MysqlDataSource;

// 修改后
import com.mysql.cj.jdbc.MysqlDataSource;

3) 修改mysql连接参数:mysql8.X版本需要指定时区等参数(这里可不修改,但最好修改一下)

找到 nacos-console 下的 src/main/resources/META-INF/nacos-default.properties
并修改 db.url 的数据库连接配置为

characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true

// 修改前
db.url.0=jdbc:mysql://11.162.196.161:3306/diamond_devtest?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.url.1=jdbc:mysql://11.163.152.91:3306/diamond_devtest?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true

// 修改后
db.url.0=jdbc:mysql://11.162.196.161:3306/diamond_devtest?characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
db.url.1=jdbc:mysql://11.163.152.91:3306/diamond_devtest?characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true

4)打包运行,执行构建命令:mvn install 打包失败!!!

mvn -Prelease-nacos -DskipTests clean install -U 打包失败!!!

5)打包 后的文件在 distribution 模块下的 target 目录,拷贝至定义好的目录

target.nacos-server-1.1.3.nacos

6) 修改配置文件 conf/application.properties

// 找到nacos下的conf/application.properties 增加mysql数据源配置
#mysql datasource
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos_config?characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=false&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
db.user=root
db.password=yourpassword

7)运行脚本bin/startup.cmd(linux系统运行.sh脚本)

8)启动成功,可通过浏览器访问 http://127.0.0.1:8848/nacos

用户名:nacos 密码:nacos

4、nacos 启动 报堆内存问题

“nacos is starting with cluster”
Error occurred during initialization of VM
Could not reserve enough space for object heap

4.1、打开 …/nacos/bin/startup.cmd 修改以下项( nacos1.x 版本,如:nacos-1.1.3 )

把 set "JAVA_OPT=%JAVA_OPT% -server -Xms2g -Xmx2g -Xmn1g
更改为:set "JAVA_OPT=%JAVA_OPT% -server -Xms512m -Xmx512m -Xmn256m

如:

if %MODE% == “standalone” (
set “JAVA_OPT=%JAVA_OPT% -Xms512m -Xmx512m -Xmn256m”
set “JAVA_OPT=%JAVA_OPT% -Dnacos.standalone=true”
) else (
set “JAVA_OPT=%JAVA_OPT% -server -Xms512m -Xmx512m -Xmn256m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m”
set “JAVA_OPT=%JAVA_OPT% -XX:-OmitStackTraceInFastThrow XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=%BASE_DIR%\logs\java_heapdump.hprof”
set “JAVA_OPT=%JAVA_OPT% -XX:-UseLargePages”
)

4.2、打开 …/nacos/bin/startup.cmd 修改以下项( nacos2.x 版本,如:nacos-2.2.2 )

把 set "NACOS_JVM_OPTS=-server -Xms2g -Xmx2g -Xmn1g
更改为 set "NACOS_JVM_OPTS=-server -Xms512m -Xmx512m -Xmn256m

如:

rem if nacos startup mode is cluster
if %MODE% == “cluster” (
echo “nacos is starting with cluster”
if %EMBEDDED_STORAGE% == “embedded” (
set “NACOS_OPTS=-DembeddedStorage=true”
)

set "NACOS_JVM_OPTS=-server -Xms512m -Xmx512m -Xmn256m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m -XX:-OmitStackTraceInFastThrow -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=%BASE_DIR%\logs\java_heapdump.hprof -XX:-UseLargePages"

)

5、nacos2.x 集群启动报错问题

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘authConfigs’: Invocation of init method failed; nested exception is ErrCode:50002, ErrMsg:Empty identity, Please set nacos.core.auth.server.identity.key and nacos.core.auth.server.identity.value, detail: https://nacos.io/zh-cn/docs/v2/guide/user/auth.html

解决方案:

5.1、打开 …/nacos-server-2.2.2\nacos\conf\application.properties

修改以下 3 项( nacos2.x 版本,如:nacos-2.2.2 )

##1)修改前
#db.pool.config.minimumIdle=2
##1)修改后,此项非必要,但最好修改一下
db.pool.config.minimumIdle=4

##2)修改前
#nacos.core.auth.enabled=false
##2)修改后:开启鉴权
nacos.core.auth.enabled=true

##3)修改前
#nacos.core.auth.server.identity.key=
#nacos.core.auth.server.identity.value=
##3)修改后 : 配置自定义身份识别的 key 和 value (不可为空)
nacos.core.auth.server.identity.key=nacos
nacos.core.auth.server.identity.value=nacos

5.2、 有可能是端口冲突问题,修改端口号,我修改了两次端口号( 8852 --> 8850 --> 8855 )
5.3、堆内存问题,打开 …/nacos/bin/startup.cmd

修改以下项( nacos2.x 版本,如:nacos-2.2.2 )

把 set "NACOS_JVM_OPTS=-server -Xms2g -Xmx2g -Xmn1g
更改为 set "NACOS_JVM_OPTS=-server -Xms512m -Xmx512m -Xmn256m

如:

rem if nacos startup mode is cluster
if %MODE% == “cluster” (
echo “nacos is starting with cluster”
if %EMBEDDED_STORAGE% == “embedded” (
set “NACOS_OPTS=-DembeddedStorage=true”
)

set "NACOS_JVM_OPTS=-server -Xms512m -Xmx512m -Xmn256m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m -XX:-OmitStackTraceInFastThrow -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=%BASE_DIR%\logs\java_heapdump.hprof -XX:-UseLargePages"

)

5.4、修改后,重新启动 nacos2.x

nacos2.x 集群启动报错问题,nocos 堆内存问题,堆内存溢出,

6、nacos2.x 访问地址无登录界面,登录后显示:当前集群没有开启鉴权问题

(版本2.2.2)

解决方案:

6.1、打开 …/nacos-server-2.2.2\nacos\conf\application.properties

修改以下 3 项( nacos2.x 版本,如:nacos-2.2.2 )

##1)修改前
#nacos.core.auth.enabled=false
##1)修改后:开启鉴权
nacos.core.auth.enabled=true

#2)关闭使用 user-agent 判断服务端请求并放行鉴权的功能
nacos.core.auth.enable.userAgentAuthWhite=false

##3)修改前:
#nacos.core.auth.caching.enabled=false
##3)修改后:权限缓存开关,开启后权限缓存的更新默认有15秒的延迟,默认 : false
nacos.core.auth.caching.enabled=true

##4)修改前
#nacos.core.auth.server.identity.key=
nacos.core.auth.server.identity.value=
##4)修改后 : 配置自定义身份识别的 key 和 value (不可为空)
nacos.core.auth.server.identity.key=nacos
nacos.core.auth.server.identity.value=nacos

##5)修改前
nacos.core.auth.plugin.nacos.token.secret.key=
##5)修改后:自定义用于生成JWT令牌的密钥,注意:原始密钥长度不得低于32字符,且一定要进行Base64编码,否则无法启动节点。
nacos.core.auth.plugin.nacos.token.secret.key=${NACOS_AUTH_TOKEN:SecretKey01234567890123456789012345345678999987654901234567890123456789}

6.2、修改后,重新启动 nacos2.2.2

7、当改变 nacos 版本时(如 nacos-1.1.3 改变为 nacos-2.2.2 ),

导入的 nacos-mysql.sql 没有变时,
启动 nacos 浏览器登录 nacos 界面时,点击权限管理出现以下错误

caused: PreparedStatementCallback; bad SQL grammar [SELECT count(*) FROM permissions WHERE 1=1 ]; nested exception is java.sql.SQLSyntaxErrorException: Table 'nacos_config.permissions' doesn't exist;caused: Table 'nacos_config.permissions' doesn't exist;

解决方案:

1)SQLyon 或其他 登录 mysql 数据库 nacos_config 清空数据库表

右键 nacos_config 数据库
–> 更多数据库操作
–> 清空数据库…

2)重新导入新的数据表,如 nacos-2.2.2 版本 conf 目录下的 mysql-schema.sql

右键 nacos_config 数据库
–> 导入
–> 执行 SQL 脚本
–> 点击 …
–> 浏览选择
…\nacos-server-2.2.2\nacos\conf\mysql-schema.sql
–> 执行

重新导入,即可。

上一节关联链接请点击
# Spring Cloud Alibaba Nacos_配置中心与服务发现(三)

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

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

相关文章

【大模型LLMs】LLMs-based Summarization研究进展梳理

【大模型LLMs】LLMs-based Summarization方法梳理 Survey1 Knowledge Distillation from LLMsRefereeInheritSumm 2 Prompt Engineering2.1 Template EngineeringOdSum 2.2 CoTSumCoTCoDSuReSliSumRefiner 梳理基于大模型的摘要总结方案&#xff0c;持续汇总中&#xff08;更关…

数据埋点系列 9|数据伦理与隐私-在合规与创新间寻找平衡

在数据驱动决策的时代&#xff0c;数据伦理和隐私保护已成为至关重要的议题。组织必须在利用数据创新和保护用户隐私之间找到平衡。本文将探讨数据伦理的核心原则、隐私保护的技术实现&#xff0c;以及如何在合规和创新之间取得平衡。 目录 1. 数据伦理的核心原则1.1 透明度1…

【机器学习】卷积神经网络简介

&#x1f308;个人主页: 鑫宝Code &#x1f525;热门专栏: 闲话杂谈&#xff5c; 炫酷HTML | JavaScript基础 ​&#x1f4ab;个人格言: "如无必要&#xff0c;勿增实体" 文章目录 卷积神经网络简介1. 引言2. CNN的基本概念2.1 什么是卷积神经网络2.2 CNN与传统…

uniprot数据库转换ID功能

1.登入uniprot数据库 uniprot 2. 选择ID mapping&#xff0c;输入P31946和P62258等uniprot数据库中的蛋白质ID 然后在To database选项中选择&#xff1a;sequence databases---RefSeq Protein---map 显示已完成&#xff0c;点击ID MAPPING 下方的网址&#xff0c;则可以看到uni…

「12月·长沙」第三届传感、测量、通信和物联网技术国际会议(SMC-IoT 2024)

第三届传感、测量、通信和物联网技术国际会议&#xff08;SMC-IoT 2024&#xff09;将于2024年11月29日-2024年12月1日召开&#xff0c;由湖南涉外经济学院主办。会议中发表的文章将会被收录, 并于见刊后提交EI核心索引。 会议旨在围绕传感、测量、通信和物联网技术等相关研究…

mysql数据库 行级锁,间隙锁和临键锁详解

目录 准备 查看锁命令 演示 普通的select语句 共享锁与排他锁 无索引行锁升级为表锁 间隙锁&临键锁 索引上的等值查询(索引为唯一索引) 索引上的等值查询(索引为普通索引) 索引上的范围查询(唯一索引) 准备 我的mysql版本是8。 CREATE TABLE user (id int unsi…

.NET 8 跨平台高性能边缘采集网关

目录 前言 项目介绍 通道 插件 设备 变量 项目特点 可视化操作 脚本支持 自定义插件支持 性能 断线缓存 完整可商用的边缘网关 项目插件 采集插件 业务插件 项目展示 1、ThingsGateway 演示地址 2、登录页面 3、系统首页 4、网关管理 5、网关状态 6、网关…

【区块链+金融服务】基于区块链的一站式绿色金融开放平台 | FISCO BCOS应用案例

科技的进步为绿色金融发展提供了新的机遇&#xff0c;但银行、企业、第三方金融机构等在进行绿色金融业务操作过程中&#xff0c; 存在着相关系统和服务平台建设成本高、迭代难度大、数据交互弱、适配难等痛点。 基于此&#xff0c;中碳绿信采用国产开源联盟链底层平台 FISCO …

Element-01.快速入门

1.什么是Element 2.快速入门 第二步引入ElementUI组件库&#xff0c;在当前的工程目录下的main.js文件中引入。 import Vue from vue; import ElementUI from element-ui; import element-ui/lib/theme-chalk/index.css; import App from ./App.vue;Vue.use(ElementUI); 第一…

Heckman 模型及 Stata 具体操作步骤

目录 一、文献综述 二、理论原理 三、实证模型 四、稳健性检验 五、程序代码及解释 六、代码运行结果 一、文献综述 Heckman 模型自提出以来&#xff0c;在众多领域得到了广泛且深入的应用。例如&#xff0c;在劳动经济学领域&#xff0c;Heckman&#xff08;1979&#xf…

CSS小玩意儿:霓虹灯卡片

一&#xff0c;效果 二&#xff0c;代码 1&#xff0c;搭个框架 主题是一个圆角矩形&#xff0c;其中有垂直、水平居中的文字。 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>霓虹灯卡片 - 步骤1…

区块链技术在Facebook中的潜力:未来趋势与挑战

数据安全的新高度 区块链技术以其去中心化和不可篡改的特性&#xff0c;正在成为提升数据安全和隐私保护的重要工具。Facebook作为全球最大的社交媒体平台之一&#xff0c;正积极探索如何将区块链技术应用于其平台&#xff0c;以增强用户数据的安全性和隐私保护。Facebook在应…

数字化营销在公域场景中的无限可能

在如今的商业领域&#xff0c;公域场景为企业提供了广阔的发展空间&#xff0c;而数字化营销则成为了企业在这些场景中脱颖而出的关键利器。 ​ 一、电商平台营销 当企业在淘宝、京东等大型电商平台开设店铺&#xff0c;数字化营销便开始大显身手。 企业不仅能踊跃参与像双十…

新华三H3CNE网络工程师认证—OSPF基础

OSPF是N1&#xff08;初级&#xff09;阶段比较重要的知识点&#xff0c;路由协议当中非常重要的一个知识点。 文章目录 一、常用的三大路由协议二、静态路由的问题1、无法适应规模较大的网络2、 无法动态响应网络变化 三、动态路由协议分类1、按工作区域分类2、按工作机制及算…

manim官方文档 _ 快速入门板块 _ 汉化 | 辅助快速理解manim功能

注 &#xff1a; 在此之前&#xff0c;请按照安装中的步骤安装 Manim 并确保其正常运行。有关在 Jupyterlab 或 Jupyter notebook 中使用 Manim 的信息&#xff0c;请参阅 IPython magic command的文档。 文章目录 概述实例一 &#xff1a;绘制一个圆形1、启动新项目 let s go2…

美股动荡,散户逆势抄底!科技股成香饽饽

最近&#xff0c;美股市场可不太平&#xff0c;各大指数纷纷下跌。面对这样的行情&#xff0c;不少投资者都有些慌了。但你知道吗&#xff1f;有一群人却在此时看到了机会&#xff0c;他们就是散户投资者&#xff01; 逆势操作&#xff0c;散户“抄底” 8月份&#xff0c;美股…

SpringBoot整合定时任务@Scheduled

SpringBoot自带的定时任务非常简单操作&#xff0c;其实就是一个Scheduled注解。 第一步&#xff1a;创建类&#xff0c;定义执行定时任务的方法 package com.oracle.springboottimer.timer;import org.springframework.scheduling.annotation.Scheduled; import org.springfr…

STM32—WDG看门狗

1.WDG简介 看门狗可以监控程序的运行状态&#xff0c;当程序因为设计漏洞、硬件故障、电磁干扰等原因&#xff0c;出现卡死或跑飞现象时&#xff0c;看门狗能及时复位程序&#xff0c;避免程序陷入长时间的罢工状态&#xff0c;保证系统的可靠性和安全性 看门狗本质是一个定时…

使用 Python和 SQLite 打造一个简单的数据库浏览器

在日常开发中&#xff0c;我们常常需要快速查看和操作SQLite数据库中的数据。虽然有许多现成的工具可以完成这一任务&#xff0c;但有时你可能想要一个更为简单、可定制的解决方案。在这篇博客中&#xff0c;我将带你一步步构建一个简单的SQLite数据库浏览器&#xff0c;它可以…

怎么将文档翻译英文?多语言翻译的4个方法

当你准备将文档翻译成英文并发送给海外客户时&#xff0c;你可能会同时感到兴奋和焦虑。 兴奋的原因是&#xff0c;你的业务即将扩展到全球市场&#xff1b;焦虑的原因是&#xff0c;如果翻译出现错误&#xff0c;可能会造成尴尬的局面。 不过&#xff0c;不必过于担心。今天…