Linux > glusterfs初体验

2018-10-09

公司文件服务器重灌后,搞了个镜像机,开始试用glusterfs。

怎么说呢,不是很放心。

在还原docker里的gitlab的时候,数据库发生过很多问题。

目前看下来都是glusterfs的挂载文件夹和服务器内容不一致,造成本来已经删除的文件,确又能在挂载文件甲中看到,确没有权限操作。

要重新挂载甚至重启才行。

这对于跑数据库来说不是很合适。

再测试两天,看看效果和稳定性。

Linux > 记录:查看硬盘设备号与物理对应关系

2018-10-08

通过lsblk查看序列号,再与硬盘序列号对应。

lsblk -a -o Name,SERIAL

Linux > raid挂了,再也不这么信任raid了

2018-10-07

之前配过一台文件共享服务器,见

https://www.v2ex.com/t/223402

8块3t硬盘组raid6.18t空间。

之后由于实际业务的限制(动辄1个多G的稿子每次存盘都走网络?不存在的)

沦为了数据库/docker/备份文件服务器。

节前发现掉了一块盘。

根据之前替换raid盘的经验,不就是换个盘么rebuild么,国庆第一天换硬盘rebuild,最后一天来收货。

检查rebuild结果,完成,没报错,不错。

fstab去掉注释,重启,没问题,完美。

重启测试,没问题,太好了。

推回机位,重启,怎么这么慢……

升级docker,重启服务,读写错误?喵喵喵?逗我?

一看/prop/md0,挂了4个盘。

还好rebuild前在另一个服务器做过备份。

等国庆开工,再装一个服务器,准备GlusterFS。

结论:

  • 不用信任raid,软件再可靠,硬件不够可靠也没用。
  • raid的确还是比不raid靠谱,但千万别一次组太多盘,属于逗自己。
  • raid盘不能等出问题再换,要定期rebuild。
  • 能上分布式还是上分布式,单点永远不够可靠

Linux > 陷入电脑选择综合症

2018-10-03

手头的rmbp2014进入浑身是病的模式了,开始准备物色下一个电脑了。

surface go带着usb type-c发布后,一直等着surface pro6发布。 

结果发布后还是没把dp换为type-c,瞬间败退。

找了一圈电脑,整理自己要求如下

  • 屏幕不能太差,能整数倍缩放。
  • 品牌不能太差。
  • 外观美观
  • 8代u
  • linux支持好
  • 同时有usb type a和usb type c优先。
  • 轻薄。
  • 价格1w左右。

看了如下电脑:

1.rmbp 2018:前5条符合。但用的已经有点审美疲劳了

2.surface pro 6 usb结构支持不符合。其他ok。对售后有点担心。

3.new xps 13 屏幕/接口问题,价格加分

4.thinkpad x1 carbon. 屏幕必须是高配版才能整数呗缩放,价格超了。

5.thinkpad x1 tablet 3rd.usb接口支持不符合。外观最心水。

目前暂时最倾向于thinkpad x1 tablet 3rd.

但还有所纠结。

杂言碎语 > 人生过半,何去何从

2018-09-01

第三个本命年了。

掐掐手指算一下。就算按照乐观的算法,人生已经过半了。

对于我而言,前半生其实没有什么太大的忧愁。

不愁吃喝,也没什么欲望。

家庭不算和睦,但也算整齐。

有车,有房,有老婆,有娃。

可以说过得没心没肺的。

但之后的后半生,未必容得我这么潇洒了。

上有老,下有小。

事业要靠自己,身体也要维护好。

责任就在那里,不可能避的开,也不愿避。

人到中年,就该有中年的肩膀了。

留此文自省,自勉,自责。

代码 > 记录 element vue的upload组件的使用

2018-08-23

感觉智商再一次受到了鄙视。

一路既往的无法从文档和源代码中找到思路。

最后相想通了,使用upload组件需要两个变量。

一个用来初始化和清除组件的附件列表。

一个在onChange事件中赋值,用来记录附件的最新文件列表。

filelist的真实值可以作为数组循环,可以通过子元素status是否为success来判断成功与否,可以通过response来获取服务器的返回值。

大概代码如下:

<el-upload
class="upload"
drag
action="/file/upload"
:on-change="onFileChange"
:file-list="FileList"
limit="1"
>
<i class="el-icon-upload"></i>
<div class="el-upload__text">将文件拖到此处,或<em>点击上传</em></div>
</el-upload>


'onFileChange':function(file,filelist){
this.Model.FileList=filelist
},


'onSubmit':function(){
let files=[]
let self=this;
for(let file of this.Model.FileList){
if (file.status==="success"){
files.push(file.response.url)
}
}
self.Form={
Content:this.Model.Content,
FileList:files
}
},


代码 > 记录:element ui库中分页器(Pagination)初始页一直为1的问题

2018-08-21

被这个问题折腾了4个小时。

代码都爬过,都没注意到。

各种可能都尝试过。

最后通过发散关键词搜索才找到问题。

分页器的total设为0和设为null效果完全不同!!!

设为0会因为当前页无效,重置为1(谁能告诉我什么这种情况1有效了……)

视为null会不判断当前页是否有效。

文档中完全没有体现这一点……当然,element的文档本来就不全……

我觉得靠我自己要能debug到这一点至少要花几天。

我既不会强行限制current-page,也不会把null和0做这样的区分……

看来还是太菜啊。

附救命的issus链接:

https://github.com/ElemeFE/element/issues/2823


update@2018-12-18

这个坑又踩了一次。

不光current-page要设为null

total也要设为null

游戏 > 混迹鱼塘,最近混沌出阿托斯上瘾

2018-08-09

继连续几十把辅助剧毒之后,开始玩其他位置了。最近玩的最多的大概就是混沌了。

混沌这英雄,可谓新手最爱,有控制有有拉有爆发,前期线上杀人好手,后期6神也是传说。

以一号位来说,也就怕针对,不能处理冰线,刷钱慢,吃大招,切入手段尴尬,怕酱油肥玩杂技等缺点……

所以我一致玩不好一号位混沌,钟情于混沌打3号位。

在长期辅助虐3号位后,对于抗压的3号位有了另一种认识,开始转变混沌的打法了。

首先,就是对混沌的定位的调整。

现在我对混沌的定位就是一个不占资源的打架英雄,针对脆皮后期(小黑,火枪)或者没有处理幻想能力和肉度的2/3号位,比如骷髅王/哈斯卡甚至钢背。

不占资源是很重要的一点。因为本质来说我的打法就是团站换命打法。开团看准后秒一个,能活下来幻想不被清光就是赚。

一般线路的话是走劣势路号位。出门树原盾2个力量手套。

初期技能看队友情况,一般来说到4级的时候1晕2拉1被动即可。

对线不要贪钱,活着和经验最重要。有可能的话尽量让队友肥一点。靠打架的混沌,队友肥才是真的肥。

然后主2和1技能,无特殊情况(比如对剑圣)不出大,10级点天赋加属性,12级点出2级大。

装备的话,先出魂戒,这是个力量英雄的良心装备,然后假腿,再准备臂章。

臂章是第一个核心装备,不说对大的加成,初中期配合混沌的高速度可以秀死无数短腿。

但抗压的混沌到12级别之前很难出的了臂章,特别是6-10级有个特别大的中空期。这就需要靠刚到12级这个黄金节点爆团站发手一波钱,入手臂章。

然后需要猥琐发育一下,憋一个跳刀。这是我这个打法最难憋的装备了。

12级以后,跳刀入手,酱油又不肥,是混沌最黄金的时期了。臂章,开大,分身留原地,走两步跳刀晕拉,选准目标,死了也不亏。

然后下一个装备我一般是阿托斯。阿托斯对于混沌来说,肯定不是质变装。但用起来实在是舒服。

他解决了混沌拉尴尬的抬手的问题,解决了混沌团站时有价值的目标没有出现只能ob的尴尬场面,合成平滑,属性适合混沌。

这时候一般是团站3路上高了。

再有机会出大件,就憋龙芯吧。但是如果优势期拿不下对手,往往这个打法的混沌会死在出龙心的路上。

如果还有机会往后的话,转1号位初装吧……

代码 > 记录:go get 翻墙安装

2018-08-06

之前都是用proxychain和proxifier来代理的。

这次下fsnotify时用了个简单点的方法

git config --global http.proxy socks5://127.0.0.1:7070

http_proxy=socks5://127.0.0.1:7070 go get github.com/mattn/go-sqlite3

git config --global --unset http.proxy

http://www.topcaver.com/go-get-through-socks5-proxy

工地 > 给代码加入了toml支持

2018-08-01

足足忙了半年,代码也没怎么更新过,每天靠游戏强行提神,最近终于空点有精力调整代码了。

首先做的是调整了配置文件格式。

从配置文件来说.TOML比JSON好的太多了。

唯一的问题是golang的两个toml库

https://github.com/pelletier/go-toml

https://github.com/BurntSushi/toml

都有各自的问题。

后者已经停止更新很久了。

前者的话,功能十分强大。但是无法有类似json.RawMessage般可以二次解析的库,也没不能解析结构中的interface.把代码hack一下可以使用。但看了下完整的代码中用的都是比较死,想要完全调整还是有点复杂的。