一成不变的计算机语言教课

昨天晚上给做编程作业的儿子支招,为了一个数组新增排序的代码,一直到1点半才完成。
儿子完成作业后直接倒头就睡了,我这边估计轻微用脑过度加过了点,难得失眠了。
也不知道几点睡着的,白天一天也不精神。
我自嘲自己学计算机,为了用而学,纯属野路子出身,没法跟正规军比。
但听了这些日子的课,虽然课程由basic变成了C++,但感觉现在计算机老师讲课,跟30年前没有什么变化,都是先照本宣科讲理论,似乎会了理论,以理论为指导,后面应用就迎刃而解。
就不能反过来,结合应用讲理论吗?
这似乎就是计算机书籍,国外与国内的差距。

Oracle云服务器开启IPv6

登录Oracle后台,前往 网络 -> 虚拟云网络 -> 选择查看网络详情

修改CIDR块,添加 IPv6块

在网络详情中,点击左侧CIDR块 -> 点击 【添加 IPv6 CIDR块】

修改子网,设置IPv6

打开子网,编辑子网信息,勾选“启用IPV6 CIDR块”,在输入框随便输入一个十六位值,例如:ee

保存后,IPv6 CIDR块添加成功

修改路由表,添加路由规则

路由表 -> 路由表详情 -> 添加路由规则:

目的地 CIDR 块:::/0  (注意2个冒号)

目标类型:Internet网关

修改安全规则

与IPv4相同,修改安全列表 -> 查看详情 -> 添加出站规则 和 添加 入站规则

目的地类型:CIDR目的地 CIDR:::/0  (注意2个冒号)

IP协议:所有协议

获取IPv6地址

返回服务器实例详情 -> 附加的 VNIC -> 点击VNIC详情,左侧可见多了一个IPv6地址 的选项!

点击 【分配 IPv6 地址】,即可获得IPv6地址。

1020、5000le杂忆

以往朋友同事让推荐打印机,我一般都说,只要不嫌慢,就用1020。
1020唯一的缺陷就是慢,尤其在一波后辈的拍击下。但1020慢也不是年代落后的原因,而是小型激光打印机都要面临的散热问题。
A4打印机体积小,散热慢,基本打印量一上去,故障就开始增加,我后来买的施乐打印机就是热死的。
即便是1020,打上一段时间,随着打印纸出机仓也开始冒“烟雾”,需要开盖散热才敢继续工作。
我嫌弃1020慢的原因,是因为在使用它之前,用过一台15开头的打印机,虽然带着小风扇,但最后还是累死了。更不用说,我曾经用5000le当过专机。
真正格用的打印机,还是需要带专门散热功能的。而5000系列的打印机,跟1020一样,都属于HP恨得牙根痒痒的钉子户。
这反而成为HP业务发展的绊脚石。

HP6L、1020杂忆

因为工作场所和业务重心变化,最近也在为疫情缓和后的办公设备,主要是打印机做好准备工作。
网上适用的打印机型号,基本都是16年生产的,好在打印机现在也没有什么进步的空间,新型号主要是小幅提升速度,并增加WiFi打印等功能。
激光打印机还是觉得HP靠谱,虽然也开始偷工减料。
最早使用的打印机是HP6L,激光打印机普及年代的先锋。使用这个机器一般都需要配备一些镊子、钳子之类的工具在旁边,因为上进纸的设计,夹纸是家常便饭,尤其是打印量略微一大。
而且机器内部设计有些复杂,夹纸都不知道夹在哪个位置。
6L的替代者是1010,以及后续进一步精简设计的1020,这可谓是一代名机。针对6L的缺陷,1020进行了大幅改进,除了打印速度,内部构造也简单化,技术含量也就降低不少。
1020不但普及了激光打印机,还意外带动了中国兼容硒鼓事业的蓬勃发展。
本来卖机器赚硒鼓钱的HP,估计对自己这个“成功”的产品,也是又爱又恨。他们一度停产1020,替之以1006等这些使用带芯片硒鼓的机型。但效果并不好,除了佳能推出兼容硒鼓的机型外,更主要原因,还是1020太耐用了。
无奈,HP重新开工,只是后面加了一个plus,但实际使用起来,速度真没有感觉有什么提升。
技术对市场,有时真的很无奈。

应用部署的两种方法

这周二外甥做了一个基于pytorch的人脸识别程序,后端使用flask提供api服务,算是他第一次使用Python。
在讨论部署过程中,他没有使用Python常用的虚拟环境,而是使用了docker镜像。并在一番折腾后,昨天上线成功了。
他的方法是以最新的Ubuntu镜像为基础,编写dockerfile文件,先通过apt与pip安装必要的系统软件后,再运行编写好flask程序。这样的好处是不用考虑服务器环境,同时也做到开箱即用。
我之前用过的几个单一功能的应用,比如splash,都是使用这种方式。但是涉及到数据库等,就要麻烦的多,比如最近使用odoo,需要几个镜像协作,使用起来就要复杂得多。
我之前采用的虚拟环境部署,是先试用pip freeze导出程序依赖库信息,与程序代码一起打包。在部署的服务器上,通过pip根据导出文件内容安装相应库。
这样部署,程序包要小得多,但需要考虑系统的版本及兼容性,同时还需要进行运行配置。
两种方式各有千秋。外甥的docker部署成功,也算是有了参考,可以进行测试部署其他的应用。
毕竟现在网上太多的教程不靠谱了。

规范与扯皮

过年这几天,被阿里云的客服气得不轻。
在使用AutoDL的GPU平台前,我最初使用的是阿里云跟腾讯云的GPU服务器。相比腾讯云,阿里云更专业,但有一个让人讨厌的地方,就是需要冻结100元,作为按量业务的预留费用,而腾讯没有这个问题。
在使用AutoDL后,阿里云也就不再使用了,想把这100元提出来,却被提示无法提取,需要按量业务释放后才能提取,这有点像手机早期销户时候,需要过一定时间,确认同步费用后,才让销户。
开始不让提现也就罢了。正巧春节期间AutoDL搞充值送优惠券活动,感觉释放实例已经有段时间了,便再次提现,依然失败。
因为活动有时间限制,便提交了一个工单。结果客服后来告诉我,我有一个实例没有删除,让我自己核实。
我一查,这个实例是去年2月,因为系统故障我无法查询也删除,导致多计费了不少,我还专门提交了工单要求删除。多花钱也就罢了,没想到居然现在还给我惹麻烦。
没想到让我恼火的还在后面,我给客服提供了核实情况,对方居然说系统问题,让我查找原因。
岂有此理!他们自己有问题,却让我查找原因,解决问题。
强压怒火再次提交截图等证据,结果一句稍等,没有下文了。
原先凭借阿里云的客服是最规范,规范的有些刻板。
现在看,这规范成了借口,只会越来越差劲。

垄断捆绑的力量

中午出门接到计算机知识求援微信,手机里无论看图片还是回复都不方便,赶紧忙完往家赶。
最近这一周,看到求援微信里面,涉及数据库的就头大。因为已经有近二十年没有碰过这熟悉的陌生人:access。
不得不说,微软睁一只眼闭一只眼,纵容中国盗版,是有其深远的商业考虑的。如果不是盗版office满天飞,捆绑在word、Excel、PowerPoint之中的access谁会用它。
如果说word等的竞争、替代者们,跟在微软后面亦步亦趋,总还脱不开跟随、模仿的帽子,那access的替代者,早年间不用说MySQL、firebird等,就连sqlite也甩它几条街。
慢如蜗牛的速度,日渐膨胀的体积,时不时的数据库打开错误。开发使用access,真不知道谁为谁服务,谁是大爷。
但现在access还活的好好的。
这就是垄断加捆绑的威力。

解决Lizzie通过ssh连接katago卡顿问题

从使用阿里云GPU云服务器运行katago开始,就发现一个问题:那就是使用sabaki通过gtp协议调用katago,非常顺畅没有任何问题。而同样的运行参数,一旦使用lizzie调用,则卡顿现象十分严重,不得不反复通过暂停、重开,来获取数据。

开始以为是带宽的问题,后来即便将带宽提高到5M也没有丝毫效果。改用AutoDL服务器后,其带宽不需要指定,同样卡顿没有改善。

前几天通过网上学习ssh的时候,看到有文章提到不同ssh服务器,客户端获取的返回数据不一样。受此启发,想到同样GPU服务器,sabaki正常而lizzie存在问题,那说明应该是客户端获取服务器数据、转换的问题。lizzie最早是针对Leelazero的,在获取katago的gtp数据时,对部分数据不识别,或者识别转换效率低,所以导致卡顿,甚至不能正常显示。

于是查看katago的配置文件,感觉应该是logToStderr参数的问题。默认值是false,为了在sabaki观战时看到AI的计算情况,我将值改为TRUE,这样gtp日志输出到sabaki终端。但这样一来,lizzie可能对大量输入数据有些不知所措了。本机还好,一旦通过ssh获取,更是应接不暇了。

果然,将logToStderr值修改为false之后,再调用lizzie,一切正常,顺利完成旧文旧局:“未完”的一局(钱宇平vs小林光一),算是开了一个好头。

弃显卡选择GPU服务器

近些日子,一直测试AutoDL的GPU服务器上运行katago。

无论是katago程序还是网络都非常稳定。目前性价比最高的是2080Ti服务器,1.24元一个小时,运行katago的速度甚至高于新贵rtx3090,价格却只有其一半多一点。性能低一半的rtx3060价格9毛9一小时,运行sabaki对弈,速度有些慢,但如果运行lizzie进行棋谱分析,配合文字录入,倒也合适。

目前显卡降价是遥遥无期,我也已经断了这个念头。因为按照3060显卡的价格,即便每天运行十个小时服务器,也足够使用一年了,而且还没有噪音的烦恼。

每次急匆匆开机,急匆匆关机,都有当年在财院花钱上机房的感觉。不过那时候486机房一个小时还要1块5呢,现在价格已经算是很便宜了,只是说相对价格,下降更多的,还是热情。

好客服的标准

最近几日测试AutoDL的GPU实例,运行稳定正常没有发现问题,倒是在计费上发现了一个bug。

系统计费是按照整点计费与到时计费相结合。昨天巧了,正好刚过10点关机,结果系统出现计算bug,不知道这不到一分钟该怎么计算,直接重复上一次计费按一小时收费了。

把情况反应到客服,客服很干脆地直接给了10块钱的代金券。

当时感觉可能客服感觉系统调整复杂,又怕投诉,直接给钱了事。

结果今天更巧,关机的时候,又是过整点不到一分钟。

当时心里那个囧啊,不知道的还以为我卡bug蹭红包呢。

还好,进入系统查看费用,计费正常,应该是已经修正那个计算错误了。

这倒符合我对客服的理解:对外联系快捷,处理迅速;对内权限分明,反馈及时。