in (select ... 在 MariaDB 上性能慢于 MySQL 的问题及解决

之前帮某人写了个非常简单的物品查询数据库,由于数据表的问题使用了三层 in (select ... 嵌套。在自己的测试环境 (Ubuntu 16.04 LTS / Windows 10, MySQL Community 5.7) 下加了索引之后没有任何性能问题,执行 SQL 语句 0.1s 内返回结果。
然而丢给某人之后跑不起来了,查询语句占用 CPU 100%,用时 20 秒才返回结果。

Read More

强化模拟器的一点技术笔记

记录一点写模拟器时遇到的各种神坑。虽然有几个东西坑太大了跳不过去只能放弃。

Read More

强化模拟器的一点笔记

花了一周时间终于把强化模拟器给写出来了,实在没想到居然能写过 1000 行。由于模拟器的性质上要做到数据双向绑定,这次就使用了以前用过一会然后太难用弃坑的 Vue,界面直接用 Bootstrap 解决的,赞美开源项目。

Read More

搬到Linode上了

最后还是搬到 Linode JP2 机房上去了。
虽然据说 JP1 机房很棒,不过我没号啊(摊手)。
之前试过AWS northeast asia、Vultr Tokyo、Vultr Los Angeles,算下来还是除了 Vultr Tokyo 以外比较稳。毕竟 Vultr 惨遭支付宝支持,挂了一堆飞机场吧。
NTT 线路挺垃圾的,丢包是家常便饭,不过挂个博客和小工具什么的还是可以的。
美利坚的话访问还是有点慢,据说有 CN2 线路的话会好一点,然而两家都没有。
出于小工具的性质也没法做 CDN 加速……

Read More

用 Python 写一个会自动发图的推特机器人

挖了一大堆坑之后开始痛苦的填坑之旅。第一步是虽然js还没写好但早就说过要弄的推特机器人。
主要功能是从官网上扒下物品数据的同时,寻找物品是否有被复刻过,给出详细的复刻时间及复刻次数等等,并且画一张图。
主要用到了 Python 以及 pymysql(MySQL)、tweepy、PIL(现在叫 Pillow 来着?)三个库。
MySQL 就略过不提了,来说说 tweepy 和 PIL 吧。

Read More

时间表的新版本咕咕咕了

所以不到一天我就咕咕咕了时间表的新版本了。

本来想用BootStrap和Vue来做时间表的新版本的,所谓现代技术。
结果看了半天文档试着乱搞了好几个小时总算是搞出了一个Hello, World,嗯。
感觉Javascript基本功还是不够扎实,还是不要想着乱玩了。

Read More

关于本周(11/15 ~ 11/23)的时间表

最担心的事情终于来了,运营终于弄了半点开始的排名赛,甚至还在里面塞了大量的紧急

于是很喜闻乐见的,时间表没法处理这种紧急了,只能显示出排名赛。
而且时间表的逻辑也没考虑到会出现半点开始的排名赛,12:30 开始, 2:30 结束这种也只能识别为 12:00 开始,2:00 结束。
反正这周处理出的时间表基本是处于不可用的状态了。

Read More