6. 用Rust手把手编写一个wmproxy(代理,内网穿透等), 通讯协议源码解读篇

用Rust手把手编写一个wmproxy(代理,内网穿透等), 通讯协议源码解读篇 项目 ++wmproxy++ gite: https://gitee.com/tickbh/wmproxy github: https://github.com/tickbh/wmproxy 事件模型的选取 OS线程,

MySQL到TiDB:Hive Metastore横向扩展之路

本文介绍了vivo在大数据元数据服务横向扩展道路上的探索历程,由实际面临的问题出发,对当前主流的横向扩展方案进行了调研及对比测试,通过多方面对比数据择优选择TiDB方案。其次分享了整个扩展方案流程、实施遇到的问题及解决方案,对于在大数据元数据性能上面临同样困境的开发者本篇文章具有非常高的参考借鉴价值...

vue3 + mark.js | 实现文字标注功能

页面效果 具体实现 新增 1、监听鼠标抬起事件,通过window.getSelection()方法获取鼠标用户选择的文本范围或光标的当前位置。 2、通过 选中的文字长度是否大于0或window.getSelection().isCollapsed (返回一个布尔值用于描述选区的起始点和终止点是否位于

用Rust手把手编写一个Proxy(代理), TLS加密通讯

用Rust手把手编写一个Proxy(代理), TLS加密通讯 项目 ++wmproxy++ gite: https://gitee.com/tickbh/wmproxy github: https://github.com/tickbh/wmproxy 为什么选择TLS 了解TLS 安全传输层协议(

一个强大的作图工具Mermaid入门

一个强大的作图工具Mermaid入门 参考网站: https://mermaid.live/edit 在线编辑器 https://mermaid.js.org/intro/ 官网 使用方法 在typora中选择```mermaid即可,复杂的功能需要收费版可以显示 类似于plantuml这种 功能貌

数据分析er看过来,五款工具有你需要的

“我想转行做数据分析,但是我只会用Excel,不会其他的工具,有其他的数据分析工具推荐么?“ “我不会python,那我可以做数据分析吗” 大部分人对数据分析的的第一印象就是Excel,python,其实选择一个工具开始学习是需要花费学习成本的,如果不清楚这款工具能给你带来什么价值,就开始盲目学习,

快速绘制流程图「GitHub 热点速览 v.22.47」

画流程图一直是研发的一个难题,如何画得通俗易懂已经够让人头疼了,还要美观大方。用 d2 的语法描述下流程,d2 会自动帮你生成一张配色极佳的流程图。说到研发的选择,本周特推的 choiceof.dev 罗列了众多开发过程中会遇到的选项,你可以自测下你同主流研发的契合度。 本周周榜呢,有监控网络流量的

前端下载文件的方式

概要 在前端下载文件是个很通用的需求,一般后端会提供下载的方式有两种: 直接返回文件的网络地址(一般用在静态文件上,比如图片以及各种音视频资源等) 返回文件流(一般用在动态文件上,比如根据前端选择,导出不同的统计结果 excel 等) 第一种方式比较简单,但是使用场景有限。第二种方式通用性更好,最近

【pandas基础】--数据检索

pandas的数据检索功能是其最基础也是最重要的功能之一。 pandas中最常用的几种数据过滤方式如下: 行列过滤:选取指定的行或者列 条件过滤:对列的数据设置过滤条件 函数过滤:通过函数设置更加复杂的过滤条件 本篇所有示例所使用的测试数据如下: import pandas as pd import

【pandas基础】--数据修改

pandas 作为一种常用的数据分析工具,提供了广泛的数据修改方法。 既可以针对行或者列的数据进行修改,也可以对具体单个元素进行修改,还可以基于条件选择要修改的行或者列的数据。 1. 增加数据 1.1 增加行数据 pandas的DataFrame增加一行或者多行数据之前是使用append方法。 im

【numpy基础】--数组索引

数组索引是指在`numpy`数组中引用特定元素的方法。`numpy`的数组索引又称为`fancy indexing`,比其他编程语言的索引强大很多。 # 1. 选取数据 numpy的索引除了像其他语言一样选择一个元素,还可以间隔着选取多个元素,也可以用任意的顺序选取元素。 比如一维数组: ```py

MongoDB 索引原理与索引优化

转载请注明出处: 1.MongoDB索引 索引通常能够极大的提高查询的效率, 如果没有索引, MongoDB 在读取数据时必须扫描集合中的每个文件并选取那些符合查询条件的记录。这种扫描全集合的查询效率是非常低的, 特别在处理大量的数据时, 查询可以要花费几十秒甚至几分钟, 这对网站的性能是非常致命的

Redis set数据类型命令使用及应用场景使用总结

转载请注明出处: 目录 1.sadd 集合添加元素 2.srem移除元素 3.smembers 获取key的所有元素 4.scard 获取key的个数 5.sismember 判断member元素是否存在集合key中 6.srandmember key count 从集合key中随机选出count个

Postman调试grpc

转载请注明出处: 1.检查自己的postman是否支持 grpc,通过 File -> new -> ,出现如下图,则表示支持: 2.点击上图的grpc就会自动创建一个 grpc 的request 3.导入 proto文件,并点击import 4. 填写请求参数,选择grpc方法,生成请求的mess

influxdb常用sql总结

本文为博主原创,转载请注明出处: 1.登录influxdb influx -username admin -password "password" 2.查看数据库 ##查看有哪些数据库 show databases; ##选中数据库 use database_name; 3.查看表及表结构 ##查看

go select 使用总结

转载请注明出处: 在Go语言中,select语句用于处理多个通道的并发操作。它类似于switch语句,但是select语句用于通信操作,而不是条件判断。select语句会同时监听多个通道的操作,并选择其中一个可用的通道进行操作。 select语句的语法如下: select { case <-chan

比较三种非破坏性处理数组的方法

在这篇文章中,我们将会探索处理数组的三种方法: - `for…of`循环 - 数组方法`.reduce()` - 数组方法`.flatMap()` 目的是帮助你在需要处理数组的时候在这些特性之间做出选择。如果你还不知道`.reduce()`和`.flatMap()`,这里将向你解释它们。 为了更好地

Vue vs React:你需要知道的一切

Vue 和 React 是创建 JavaScript 网络应用程序最常用的两种工具。但我们该如何在两者之间做出选择呢?在本篇 Vue 与 React 的对比中,我们将尝试找出答案。我们将回顾每种工具的优缺点,提供选择使用哪种工具的技巧,并帮助你开始使用。 总览 什么是Vue? Vue趣事 什么是Re

【目标检测】R-CNN算法实现

R-CNN算法是目标检测领域的开山之作,为后续发展的各种目标检测算法指明了方向。本文将基于17Flowers数据集,在Pytorch框架下实现R-CNN目标检测功能。主要内容包括选择性搜索、目标特征提取及分类、边界框回归、模型训练、检测框预测等原理及代码实现。

使用策略模式重构 if/elseif/elseif

本文翻译自国外论坛 medium,原文地址:https://medium.com/aia-sg-techblog/refactor-if-elseif-elseif-using-strategy-design-pattern-80c51913a539 策略设计模式是一种允许在运行时选择算法的行为。这