- 博客(128)
- 资源 (1)
- 问答 (2)
- 收藏
- 关注
原创 virtualbox安装ubuntu,配置静态ip
加载ISO文件:在“存储”选项卡中,点击“空”光盘图标,选择“选择磁盘文件”,加载下载的Ubuntu Server ISO。创建虚拟硬盘:选择“现在创建虚拟硬盘”,类型选“VDI”,分配方式选“动态分配”,大小建议至少20GB。选择类型和版本:类型选“Linux”,版本选“Ubuntu (64-bit)”。打开VirtualBox,选择你的Ubuntu虚拟机,点击“设置”。设置虚拟机名称:输入名称,如“Ubuntu Server”。安装系统:确认设置后开始安装,安装完成后重启。
2025-03-01 21:29:21
779
原创 php 计算round(1/15,2)*100 结果是7.000000000000001
PHP 中浮点数计算误差是常见问题,尤其是在数学运算时。:在 PHP 中,出现 round(1/15, 2) * 100 的结果是 7.000000000000001,这是由于。浮点数在计算机中并不是精确表示的,它们遵循 IEEE 754 标准表示法,因此某些小数无法精确存储,导致了微小的舍入误差。但由于浮点精度问题,结果实际上并不是严格的 0.07,而是接近 0.07000000000000001。round(1/15, 2) 将其四舍五入到两位小数,得到 0.07。方法 2:直接在整数层面处理。
2024-12-09 16:39:52
233
原创 golang ws升级为wss
newkey : -newkey是指在生成证书请求或者自签名证书的时候自动生成密钥,然后生成的密钥名称由-keyout参数指定。-nodes : 如果指定-newkey自动生成秘钥,那么-nodes选项说明生成的秘钥不需要加密,即不需要输入passphase.-x509 : 说明生成自签名证书,自签名证书又称为根证书,是自己颁发给自己的证书,即证书中的颁发者和主体名相同。-days n : 指定自签名证书的有效期限,默认30天,需要和"-x509"一起使用。-verbose : 显示操作执行的详细信息。
2024-10-12 13:43:55
558
原创 golang cmd.exec 执行命令后报错 No such file or directory
如果在你确定这个目录或者文件一定存在的情况下。这个问题有可能是因为exec执行的命令是管道操作或者重定向输出到文件导致的。
2024-09-24 09:40:32
697
1
原创 golang常用的一些 strings函数
2.判断字符串是否以另一个字符串开始。1.判断字符串是否包含另一个字符串。4.将字符串按空格切割为字符串数组。3.去掉字符串左右的指定字符串。
2024-07-24 17:55:44
346
原创 mysql 远程可以登录,本地登录报错access denied
今天遇到个很奇怪的问题,远程登录的时候可以连接数据,但是在数据库服务器本地登录就报错access denied查了下用户表,发现有两个root用户试着删除root@localhost,DROP USER 'root'@'localhost';FLUSH PRIVILEGES;本地可以连接了。
2024-05-16 18:10:08
506
2
原创 golang es查询的一些操作,has_child,inner_hit,对索引内父子文档的更新
2.还是业务需求,一个索引下面有多种类型的文档,他们之间是父子关系,如果我要更新一个文档里面的值无法直接更新,需要使用script.比如我要更新index索引下面doc文档里面的filed1字段和filed2字段,更新条件是filed3字段为123。然后这里明确一个概念,has_child是查父文档的,里面加了inner_hits多返回的inner_hits是子文档的内容。同理,has_parent查子文档的,面加了inner_hits多返回的inner_hits是父文档的内容。
2024-04-08 11:24:15
698
原创 linux使用samba实现共享文件夹
现在,你应该能够通过网络访问你的Linux共享文件夹。在Windows中,你可以通过资源管理器访问 \your_linux_ip\SharedFolder,然后输入Samba用户的用户名和密码进行连接。在其他Linux系统中,你可以使用类似的方法。在Linux上设置共享文件夹可以使用多种方法,这里我将介绍一种基于Samba的方法,因为Samba是一个在Linux和Windows系统之间实现文件共享的流行工具。请注意,这只是其中一种设置共享文件夹的方法,还有其他工具和协议可供选择,具体取决于你的需求和环境。
2024-03-13 14:31:49
793
原创 golang用字符串数据生成http的pcap文件
因为我有的只是pyload里面的字符串数据。没有协议头的部分,所以只能自己创建协议头的数据。主要使用的就是go的gopacket和gopcap包。
2024-02-29 11:19:29
646
1
原创 哈夫曼编码理解
bcd为上支路,a为下支路。cd第三位编码为0,b第二位编码为0,a首位编码为1。1.d和c合并,值为0.3.因为d(0.1)比c(0.2)小,所以合并时候c在d上面,为上支路。根据我们之前定义的规则。,所以cd(0.3)在上支路,b(0.3)在下支路。现在得出cd的第二位编码为0,b的首位编码为1。其中a出现的概率为0.4,b为0.3,c为0.2,d为0.1。好,我们开始合并,首先从最小的两个开始。2.概率相等时,合并过的概率在上支路。c首位编码为0,d首位编码为1。1.上支路为0,下支路为1。
2024-01-08 11:30:50
605
原创 golang使用es,报错Elasticsearch health check failed
然后又去es管理端看,明明节点是绿色的,估计是golang的这个有问题,时间紧迫,我就直接关掉了健康检测。即在声明es的参数里加上elastic.SetSniff(false)就可以关闭健康检测。今天golang代码里调用es,结果一直报错。
2023-12-04 18:38:09
926
原创 websocket 消息包粗解
1.FIN(1 bit): 表示消息是否已经完成。如果是 1,表示这是消息的最后一个帧;如果是 0,表示后面还有帧。2.RSV1, RSV2, RSV3(各占 1 bit): 这三个标志位一般用于扩展协议或自定义协议的使用。在通常情况下,它们都是 0。3.Opcode(4 bit): 表示帧的类型,例如,Text Frame、Binary Frame 等。常见的值有:0x1 表示 Text Frame0x2 表示 Binary Frame。
2023-11-30 18:33:17
1295
原创 golang 加载ini文件值有#号
今天遇到一个大坑,golang加载ini文件作为配置,结果配置里面的mysql密码有#号,导致#号和#号后面的值无法加载。用三个双引号包起来,golang才会视为一个完整的字符串。那么golang加载进来的值就是。百度了一大圈,最后还是谷歌解决的。
2023-11-16 20:57:12
329
原创 es字段查询加keyword和不加keyword的区别
总结来说,加上"keyword"后缀的字段适合进行精确匹配和排序等操作,而不加"keyword"后缀的字段适合进行全文搜索和模糊匹配等操作。具体使用哪种类型的字段,取决于你的需求和场景。在ES(Elasticsearch)中,查询字段名后面加上"keyword"和不加"keyword"有着不同的含义和用途。这意味着,如果你想要精确匹配某个特定的值,或者进行排序、聚合等操作,通常会使用keyword类型的字段。而当字段名后面不加"keyword"时,默认情况下,当字段名后面加上"keyword"时,
2023-09-01 13:46:31
5652
原创 docker 多阶段构建
需要注意的是,多阶段构建适用于构建过程可以分为明确的开发和运行阶段的应用程序。Docker多阶段构建是一种技术,它可以通过在不同的构建阶段中使用不同的基础镜像,以及只复制构建所需的文件和依赖项,从而减少最终生成的Docker镜像的大小和运行时的资源消耗。减少镜像大小:由于第二阶段只包含运行时所需的文件和依赖项,因此生成的镜像比包含完整开发环境的单阶段构建要小得多。在第二阶段构建完成后,生成的最终镜像只包含了运行时所需的文件和依赖项,而不包含开发工具、中间文件和不必要的依赖项。
2023-07-12 15:12:53
1002
原创 jenkins 创建项目的ci
2.启用Enabled GitLab triggers选项:在Jenkins作业的配置页面中,找到"Build Triggers"(构建触发器)部分,选择"Enabled GitLab triggers"(启用GitLab触发器)选项。4.当GitLab项目中的相关事件发生时,GitLab将发送一个Webhook请求到Jenkins的URL,并触发Jenkins作业的构建。我这里选择的是git param获取的是我代码仓库分支列表,后续构建的时候就可以自动拉去代码仓库的分支供来选择。
2023-07-12 14:20:54
985
原创 为什么异或操作可以进行变量交换
异或操作是可逆的:对于任意整数 A 和 B,如果我们对 A 和 B 进行异或操作,然后再对结果再次进行异或操作,得到的结果仍然是原始的 A 或 B。换句话说,对于任意整数 X,执行两次异或操作:X = X ^ A,然后 X = X ^ A,最终得到的 X 等于原始的 A。A = A ^ B:将 A 的值与 B 进行异或操作,将结果保存到 A 中。异或操作满足交换律:对于任意整数 A 和 B,A ^ B 的结果与 B ^ A 的结果相同。经过以上步骤,变量 A 和 B 的值成功交换。
2023-06-30 17:39:10
515
原创 golang 打包文件成zip,并提供下载
压缩文件为zip需要用到 "archive/zip"这个包。首先使用os.Create创建一个名为aaa.zip的文件。接着使用zip.NewWriter来创建一个写入的参数。然后遍历你想要压缩的文件,将所有的内容复制到zip文件里。
2023-04-23 12:32:30
785
原创 golang 复制某一个文件里的所有内容到新建的另外一个文件夹
filepath.Walk 需要穿两个参数,第一个是你要遍历目录路径,第二个是传一个函数,里面是你要对目录下文件的处理逻辑。这里需要使用到一个函数filepath.Walk,它的作用是遍历目录下的所有文件和子目录以及子目录中的所有内容。现在我们的需求是要将目标文件夹里面的所有内容copy到另外一个文件夹。函数有三个参数,都是固定的,你需要做的就是在里面写逻辑。
2023-04-23 11:33:21
691
原创 spark sql group by 报错
报错原因:spark sql 使用group by的时候必须将select的所有字段都写进去。解决办法,在不需要group by的字段上加first()
2022-12-30 10:39:37
1540
原创 php 使用redis报 read error on connection
php redis报错 read error on connection
2022-10-25 14:02:01
370
原创 公众号菜单栏设置历史文章按钮
设置菜单栏的时候,url中填写https://mp.weixin.qq.com/mp/profile_ext?action=home&__biz=**********&scene=123#wechat_redirect注意,将__biz换成你自己公众号的biz
2022-07-05 13:44:27
465
原创 virtualBox 不能为虚拟电脑打开一个新任务Failed to get device handle and/or partition ID
如果你先删除了镜像然后又重新装了virtualBox,导入镜像之后提示不能为虚拟电脑打开一个新任务,那么你可以试试我下面的办法。1.确定关闭了hyper-v功能2.管理员打开cmd,执行bcdedit /set hypervisorlaunchtype off后重启电脑。我的电脑是win11的系统,断电之后无法启动虚拟机了,先是报End kernel panic - not syncing: attempted to kill the idle task这个问题可以通过增加cpu数解决,原先是1个
2022-06-02 15:29:20
13167
13
原创 php,多维数组根据某个键值排序
节约时间,直接上代码,使用函数array_multisort进行排序即可,排序之前需要把排序字段的值都取出来。 $array = [["test1"=>2],["test1"=>1]] $total = array_column($array, "test1"); array_multisort($total, SORT_ASC, $array);...
2022-05-24 16:25:20
252
原创 登录时可以使用手机号邮箱登录的逻辑整理
1.实现办法:用户在登录的时候在用户名那一栏输入的值分别进行手机号和邮箱的正则验证,如果命中了规则,则去数据库里找对应的手机号或者邮箱,然后匹配密码登录,如果都没有命中再去查找用户名进行密码匹配注意,未了避免用户名就是手机号或者邮箱的情况,那么在注册和创建账户时,用户名需要做正则验证,不能为11位数字和带@符号...
2022-05-19 15:48:22
640
中国省市县json字符串,34个省级行政区,300多个市,3000多个县
2020-10-22
TA创建的收藏夹 TA关注的收藏夹
TA关注的人