0%

STL中红黑树的用法探究及使用红黑树进行多字段索引的方法

前言

最近在造轮子,需要造分析型数据库。在关于热数据的设计中,对于到来的每一条热数据,我需要使用红黑树来维持热数据在内存中的有序索引。后来使用了STL中的红黑树,这个过程遇到了一大堆坑,网上能找到的资料又很少,所以记录了一下。

问题

我需要维护多个字段的索引,比如这么一张图,我需要在红黑树上维护对于b、c、d三个字段的索引:

图源https://www.zhihu.com/question/304037770/answer/1287557228

上图出自知乎问题mysql联合索引的B+树到底张什么样子啊?下@Limit的一个回答,这是innodb引擎下使用B+树的解决方法。但由于我现在维护的是热数据,并不需要进行磁盘IO,且只需要支持查询和插入的操作,所以我需要用红黑树来解决此问题。

Read more »

使用DDNS解析脚本对阿里云提供的域名进行动态解析

前言

之前用bitwarden_rs的docker容器+Nginx反向代理,并设置了https,把bitwarden服务器部署到了自己的电脑上,在校园网中提供服务–只要我的手机连上学校的wifi,就可以访问到我电脑上的bitwarden服务、

https://zhuanlan.zhihu.com/p/158794535

但是我遇到了一个麻烦的问题,就是电脑在校园网的ip偶尔会发生变化,每次变化就要手动登陆阿里云去修改DNS的解析ip地址,这很麻烦。所以我决定使用DDNS来完成解析ip的动态切换。

Read more »

波兰式,逆波兰式

某校数据结构课一道OJ题

题目描述

表达式有三种表示方法,分别为:

前缀表示(波兰式):运算符+操作数1+操作数2

中缀表示:操作数1+运算符+操作数2

Read more »

遇到的问题

阿里云的学生机,10块钱一个月的那种,只有1Mbps的带宽。1Mbps是什么概念呢?就是公网下行带宽最大是1×1024÷8 = 128 kb/s,每秒最多128kb的速度,开mc服务器基本顶不住。一个只有三人的私人服务器,差不多两人就能把带宽占满,三人就开始卡,如何解决呢?

Read more »

最初的想法

从很久之前就一直想要找到1Password的替代品,当时自己用AES256 + RSA2048的加密方式,写一个服务端和客户端,只能在终端黑窗口里面运行,总归没有这些成熟的产品用得爽。后来了解到了Bitwarden,想部署到服务器上,想了想不如部署到本机上吧,不然服务器一到期就一直得续费。原版的Bitwarden服务端的服务对象是比较广的,资源消耗也比较大,总归不是办法。后来了解到Bitwarden_rs,是大佬用Rust重新写的一个不那么耗费资源的版本,就决定是它了。

Read more »

​ 如果你的单位或学校使用了深信服的sslvpn,有时候会有需要流量分流的场景,比如访问internet不直连而是走了sslvpn,比如sslvpn设定的路由策略与其他连接冲突导致无法上公网之类的问题。

踩了一下午坑,终于解决了问题。

​ 解决的方法是修改路由表。通过修改路由表可以实现对不同的ip段走不同的连接模式。

Read more »

非零基础请移步(简略版)基于frp与v2ray的几种校园网内网穿透的方案

设备

方案一:简单的frp socks5/http代理

方案二:用frp映射v2ray的inbound端口+校外设备http/socks5代理

方案三:用frp映射v2ray的inbound端口+校外设备使用v2ray/ssr连接

方案四:用v2ray自带的反向代理功能

方案五:用路由器代替校内主机

Read more »