For Interview
前言仅供本人面试前准备,其他人还是别看了,没意义。有很多我缩写,省去了很多易理解的部分。
我尽量找别人已经总结过的东西,而不是自己写,无意义,面试的八股文罢了。都是靠努力就能实现的东西。
八股文过招,处处惊险。实际上,并没有要求你更改开源项目源码,例如更改 Kafka 源码,使用时间轮概念,实现定时推送消息功能。
常见容器ArrayList 详解https://note.youdao.com/ynoteshare1/index.html?id=efd2a3a29d2626acea2b053e56bae5cc&type=notebook#/04F1A0EFF8F241C2A89E2234AAF0A36A
底层基于数组实现
创建 ArrayList 如果不指定大小,会先创建一个大小为 0 的 Object[ ] 数组 ,
第一次添加数据时,会扩容成 ArrayList 的 默认大小 default_capacity:10**;**
创建时如果指定大小,直接创建指定大小的Object[ ]数组
add()
对 size+1,去判断数组是否满了,如果满了就调用 gro ...
搭建免费博客网站
折叠播放列表 ≡ ⬇️
我用虚拟机里面的Win10演示
准备环境
GitHub账号注册地址
Git下载地址
下载NodeJs下载地址
下个Visual Studio Code来编辑文件下载地址(这个是为了让你更好得编辑yml文件,防止格式不正确,如果你有其他的,可以用其他的编辑器)
上面的 3 个应用可以直接下载,等会再安装
注册Github账号如果你有github账号,直接从第六步开始
第一步第二步第三步第四步第五步第六步第七步第八步输入账号/邮箱/密码。账号必须唯一
这一步是验证你是不是人机,图像没出来的话,请等一等,或者刷新一下。
不用管往下拉Complete SignUp
到这里验证一下邮箱。你可以登陆你刚才注册用的邮箱,看下邮件,点击邮件里面的验证Verify Email。
Create a repository
你的用户名叫什么,就[用户名].github.io 一定要叫这个名字。像下面这样,还有记得点初始化一个README文件。很重要!!!!
创建好后就是下面这种情况
访问一下看行不行,正常情况都能访问。(如 ...
云顶之弈如何从零到最强王者
前言我玩了比较久的云顶之弈,也“间接开发”过阵容,就是 S3 最火热的 6 暗星羊刀水银泽拉斯。最快两天从水晶之痕没有段位到超凡大师(后面排到人比较慢,不愿玩,而且段位提升只是把数的堆积)。我也是美服以及艾欧尼亚两个赛季超凡大师,最高到一区前 200 名左右吧,3 月 26 日左右(具体几号真忘了)早上8 点斗鱼、卷子的第一把,和南波儿的两个小弟的7点多到8点那一把的录播视频为证。
打上超凡大师后,就没意思了,因为没有那么多时间和那些人比,后面更多的是运气加场数的堆积,还有版本的变更带来的新的阵容的可能性。你提前拥有别人不知道的信息,那就是你能比别人更快的上分。这个阵容就是我说的水银羊刀暗星泽拉斯,那时候非常强力。
只要你时间够,上个王者不成问题。后面比较喜欢玩 PBE(测试服),提前感受版本,厄加特的大招开始是没有写明无视复活甲的,也是我向官方报告的 “bug”,后面官方改了技能说明,之前的英文介绍里面没有 GA(Guardian Angel)。其他的大家都知道的 bug,我也不愿向官方反馈。
第三个,仅需两天(一天16个小时左右),50 多把即可从零上超凡大师,多的 8 把左右是打 ...
技术"内幕"
有趣,但无用的知识系列。
RSA 算法由 Ron Rivest, Adi Shamir, and Leonard Adleman 三位的姓首字母写的。
《Cloud Native Java》爪哇岛,岛上盛产咖啡;美国人有多爱喝咖啡,看英国人有多爱喝茶一样,波士顿倾茶事件,彻底惹怒了大英帝国(以前的称呼)。看看《硅谷》这部剧就知道了,咖啡 = 命,没有咖啡机的公司,不去。《Cloud Native Java》Josh Long 写的,书封面有几种意思,
这个鸟是濒危野生动物,希望能唤起大家对动物的保护之心。当然,《高性能 MySQL》也是一样。
这个鸟在 Java island(岛)上生存。
鸟在天上飞,飞向云端的意思。迎合了云原生的概念,鸟就寓意为 Java,Cloud 就是云,如鱼得水,如鸟入天空。
具体的可以看他的视频 https://www.youtube.com/watch?v=Z5q-CXbvM1E&t=307s 他自己介绍的。
O’reilly 系列图书《高性能 MySQL》
《设计数据密集型应用》
《机器学习实战》
等等,都是用濒危物种作为封面的,主要 ...
什么是 SSR、V2ray、Trojan、Clash,什么是机场?
前言如果你可以看 Youtube 视频,我建议你直接看这个系列,不用看我写的。
原理简单介绍原理。
SSRSSR 又称酸酸乳,小飞机。客户端是下面这个样子的图标,你应该看图就知道为什么叫小飞机了吧。
下面是 Wikipedia 的解释。
Shadowsocks(简称SS)是一种基于Socks5代理方式的加密传输协议,也可以指实现这个协议的各种开发包。目前包使用Python、C、C++、C#、Go语言、Rust等编程语言开发,大部分主要实现(iOS平台的除外)采用Apache许可证、GPL、MIT许可证等多种自由软件许可协议开放源代码。Shadowsocks分为服务器端和客户端,在使用之前,需要先将服务器端程序部署到服务器上面,然后通过客户端连接并创建本地代理。
SSR 服务端一般是由 Python 写的,启动也比较简单,前人已经帮大家写好很多东西了,按照安装步骤来。只需要简单的配置 + 简单的命令 systemctl shadowsocks start这种就能启动客户端了。检查防火墙端口开放,检查服务器厂商端口开放,一般就能用客户端输入些参数直连了。就是正向代理而已。
这里有个坑, ...
UDAF 开发,求线性回归方程相关系数 R
参考了 20 多个中英文博客,以及官网,详细链接在最下面。解决了 UDAF 的开发问题。
执行流程Model 和 Evaluator 的关系。来源于
Mode 各个阶段对应的 Evaluator 方法调用。
Evaluator 各个阶段下处理 MapReduce 的流程
需解公式
代码编写 UDAF 函数123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151 ...
RowKey 设计规约
RowKey 尽量简短Data Block 是 HBase 中文件读取的最小单元。Data Block中主要存储用户的KeyValue数据,而KeyValue结构是HBase存储的核心。HBase中所有数据都是以KeyValue结构存储在HBase中。
KeyValue由4个部分构成,分别为Key Length、Value Length、Key和Value。其中,Key Length和Value Length是两个固定长度的数值,Value是用户写入的实际数据,Key是一个复合结构,由多个部分构成:Rowkey、Column Family、Column Qualif ier、TimeStamp以及KeyType。其中,KeyType有四种类型,分别是Put、Delete、DeleteColumn和DeleteFamily。
HBase中数据在最底层是以KeyValue的形式存储的,其中Key是一个比较复杂的复合结构。
这也是HBase系统在表结构设计时经常强调Rowkey、Column Family以及ColumnQualif ier尽可能设置短的根本原因。列族一般情况下设置为 1 个 ...
仅供本人使用,部分内容是缩写,其他人看不懂的
#head {
width: 100%;
height: 50px;
display: flex;
}
#head-left {
width: 30%;
float: right;
}
#head-center {
width: 40%;
text-align: center;
font-size: 18px
}
#head-right {
width: 30%;
float: left;
}
#body {
width: 100%;
height: 900px;
display: flex;
}
#body h1{
display:none;
}
#content-input {
width: 50%;
height: ...
Mac 下 Docker 更改国内镜像源
打开 DockerDesktop
如果你有其他配置改了的,直接复制这个,记住前面的逗号不要删1,"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn","https://hub-mirror.c.163.com"]
如果你之前什么都没改,复制粘贴下面内容12345{ "debug": true, "experimental": false, "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn","https://hub-mirror.c.163.com"]}
如果在上图的界面报错,不能改打开 teminal 进入 Users/YourName目录下,复制粘贴进去
12cd .dockervi deamon.json
重启docker,镜像生效
如果 docker 点 prefrence一直在更新状态,检查一下d ...
平时遇到的问题
范型语法糖Jackson里面有个转字符串为Java对象的方法,传进去的是
大概像下面这样
1234567891011121314public void batchInsertRecords(String str){ Map<String,String> record = parseObject(str,Map.class); String ageStr = record.get("age"); /** * 这里如果你这样写,如果你传进去的是{name:"Yasir Lin",age:"23"},这样没问题,但是你要是传进去的是{name:"Yasir Lin",age:23} * 就会报错误,因为范型是个语法糖,你定义了Key为String,结果是String,那没问题,定义了Value为String,实际是Integer, * 它在取值的时候,就会隐式给你强转为String类型,然后类型是Integer,出来就会报错。Integer cannot be cast to String。 * * ...