按照官方文档里面React的集成方法做,从其他页面跳转到编辑器页面是没有问题的,但是你要点击刷新按钮刷新整个编辑器所在页面时就会报错了:`ReferenceError: self is not defined` 本文解决的是这个问题。 新增文件`components/Editor.jsx`: ```jsx import React, { useEffect, useRef } from "react"; const editorCfg = { language: 'zh-cn' } function Editor({ onChange, editorLoaded, name, data }) { const editorRef = useRef(); const { CKEditor, ClassicEditor } = editorRef.current || {}; useEffect(() => { editorRef.current = { CKEditor...
 发布日期: 2023-04-28    分类: 前端   浏览量: 1421
系统环境Ubuntu 22.10 ## 1、识别以太网 ```shell ip a sudo lshw -class network ``` ## 2、更改以太网接口逻辑名称 修改配置`/etc/netplan/99_config.yaml`,配置文件没有可以自己命名新建: ```yaml network: version: 2 renderer: networkd ethernets: eth_lan0: dhcp4: true match: macaddress: 00:11:22:33:44:55 # 网卡mac地址,逻辑名称配置匹配哪个网卡 set-name: eth_lan0 # 更改为所需的逻辑名称 ``` 执行`sudo netplan apply`命令生效 ## 3、临时ip地址分配 使用ip命令分配,系统重启会失效 ```shell # 修改ip地址和子网掩码 sudo ip addr add 10.102.66....
 发布日期: 2023-04-17    分类: 其他   浏览量: 1539
## 语言变化 ### slice转数组 Go1.17在语言层面开始支持将slice转为指向数组的指针。 示例如下: ```go s := make([]byte, 2, 4) // 将s这个slice转为指向byte数组的指针s0 // 其中[0]byte里的0表示数组的长度,虽然长度为0,但值不等于nil s0 := (*[0]byte)(s) // s0 != nil fmt.Printf("%T") // 将s[1:]这个slice转为指向byte数组的指针s1 // s1指向的数组的长度为1 s1 := (*[1]byte)(s[1:]) // &s1[0] == &s[1] // 将s这个slice转为指向byte数组的指针s2 // s2指向的数组的长度为2 s2 := (*[2]byte)(s) // &s2[0] == &s[0] // 将s这个slice转为指向byte数组的指针s4 // s4指向的数组的长度为4 s4 := (*[4]byte)(s) // panics: len...
 发布日期: 2023-03-04    分类: Go   浏览量: 1118
基于ZooKeeper和etcd实现服务的注册和发现功能的原理。 ## ZooKeeper ### 服务注册 利用临时节点的特性,创建一个服务的临时节点,写入服务信息数据,不断监视节点续期,当服务不可用时会话超时,临时节点会被删除。 ### 服务发现 服务发现是利用`watch`的特性,首先获取一遍需要的服务信息,保存在本地,然后给这个服务节点添加`watch`,监视变化和更新。 ## etcd ### 服务注册 服务注册是利用了etcd租约的特性。 首先创建一个定时的租约,比如10秒,20秒等。 然后带租约存储服务信息,不断的续期租约,当服务不可用时,租约过期,服务数据就会被删除,就相当于心跳保活了。 ### 服务发现 服务发现和zookepper类似,是利用了etcd的`watch`的特性,首先获取一遍需要的服务的信息,再监视变化和更新。 下面是实现代码供参考: https://github.com/ilaziness/gopkg/tree/main/serviceregdisc...
 发布日期: 2023-01-17    分类: Go   浏览量: 958
go的AES加密主要用`crypto/aes`和`crypto/cipher`两个库来实现。 AES加密模式又好多种,这里研究了6种模式:CBC、CFB、OFB、ECB、CTR、GCM模式。 一看到这么多模式,如果那里需要用到一下都不知道哪种好,这里大概总结一下。 如果数据通过非对称签名进行身份验证,则使用CBC,否则使用GCM。 最好的模式是GCM模式,GCM可以保证数据的保密性和完整性,其他模式只能保证保密性,不能保证完整性,具体可以去了解下AEAD。 GCM模式属于AEAD加密。 所以除了GCM模式之外其他模式最好是增加hmac哈希,用来验证数据完整性。 ECB模式不建议使用,因为这种模式不安全,go的内置库也没有去实现这种模式。 go AES 6种加密模式代码:https://github.com/ilaziness/gopkg/tree/main/crypto/aes iv值的生成可以参考cfb模式的代码,每次加密都是随机生成的。...
 发布日期: 2022-11-11    分类: Go   浏览量: 1575
本文操作系统是ubuntu 22.04 server amd64版本,k8s是v1.25。 虚拟机配置是2核4G,一个master节点,2个node节点。 - k8s-master:192.168.184.217 - k8s-node1:192.168.184.150 - k8s-node2:192.168.184.64 ## 准备工作 - master节点添加node1和node2的hosts解析,node1和node2添加master的hosts解析 ```bash # k8s-master /etc/hosts 192.168.184.150 k8s-node1 192.168.184.64 k8s-node2 # k8s-node1、k8s-node2 /etc/hosts 192.168.184.217 k8s-master ``` - 禁用所有主机的swap ```bash # 临时禁用swap sudo swapoff -a # 永久禁用swap,注释掉swap sudo vim /etc/fs...
 发布日期: 2022-09-25    分类: 后端   浏览量: 1652
> [containerd官方文档](https://github.com/containerd/containerd/blob/main/docs/getting-started.md) > 本文操作系统是64位的ubuntu22.04,按照官方文档通过二进制文件来安装 需要安装三个组件containerd、runc和CNI插件。 - containerd:是一个容器运行时 - runc:根据OCI规范生成和运行容器的命令行工具 - CNI插件:配置容器网络的工具,CNI全称是Container Network Interface, ## 1. 安装containerd github下载合适的包:https://github.com/containerd/containerd/releases 下载好之后解压到`/usr/local`: ```bash sudo tar Cxzvf /usr/local containerd-1.6.8-linux-amd64.tar.gz ``` > 官方github下载的二进制包仅适用于基于gl...
 发布日期: 2022-09-25    分类: 后端   浏览量: 1202
微服务知识图谱,微服务组件图,微服务结构图 ![微服务知识图谱](https://360us.net/images/2022/202208242357.png)...
 发布日期: 2022-08-25    分类: 后端   浏览量: 1056
种子链接文件列表:Cover.jpg 237.3 kB01. Intro.flac 5.8 MB02. 最伟大的作品.flac 50.5 MB03. 还在流浪.flac 55.9 MB04. 说好不哭.flac 44.0 MB05. 红颜如霜.flac 53.0 MB06. 不爱我就拉倒.flac 52.4 MB07. Mojito.flac 39.8 MB08. 错过的烟火.flac 56.8 MB09. 等你下课.flac 58.0 MB10. 粉色海洋.flac 40.5 MB11. 倒影.flac 50.5 MB12. 我是如此相信.flac 56.6 MB  更多内容请查看:https://2048tb.com/...
 发布日期: 2022-07-18    分类: 其他   浏览量: 3325
副本集群是一组维护相同数据集的mongod实例。一个副本集包含几个承载数据的节点和一个可选的仲裁节点。在承载数据的节点中,只有一个节点被认为是主节点,其他节点被认为是次节点。 主节点接收所有的写操作,次节点接收主节点的操作应用在自己的数据集上,副本节点只是做一个备份的作用,当主节点出现故障时,会自动选出新的主节点。 ![结构图](https://www.mongodb.com/docs/manual/images/replica-set-read-write-operations-primary.bakedsvg.svg) ![故障转移](https://www.mongodb.com/docs/manual/images/replica-set-trigger-election.bakedsvg.svg) 本教程描述的是包含三个节点的副本集群搭建,所有节点都没有开启访问控制。 因为集群需要通过选举来确定master节点,为了选举不会出现问题,所以集群成员数量应该总是奇数个。 MongoDb版本是`5.0`。 ### 1、启动成员节点 测...
 发布日期: 2022-05-18    分类: 数据库   浏览量: 1820