MySQL 排序

2018年11月06日 ,作者: 黄兵

在MySQL数据库中排序主要是ORDER BY,主要语法:SELECT field1, field2,...fieldN table_name1, table_name2... ORDER BY field1, [field2...] [ASC [DESC]]其中ASC是升序排列,DESC降序排列。默认情况是按照升序排列。可以加上限制条件(WHERE,LIKE)作为过滤:SELECT * FRO...

网站数据库分离的一些感想

2018年11月06日 ,作者: 黄兵

最近网站接连出现资源跑满的情况,导致不得不将数据库和网站分离开来,具体可以参考我以前写的两篇文章:网页爬虫的一次反击、mysql 数据库迁移的一次记录。数据库从13:00多一点完了了迁移,之后无论是网站压力和流量明显减少了很多,中间切换的过程中数据丢失的也很少,在切换的时候大概有20s左右的卡顿,但是不影响业务,切换还算成功。切换之后也没有出现异常,下面看一张图就知道:这里瓶颈主要出现在CPU(红...

mysql 数据库迁移的一次记录

2018年11月06日 ,作者: 黄兵

最近网站性能急剧下降,主要是由于有人使用爬虫抓取网站导致CPU 经常跑满,也采取了一些反制措施,但是还是有必要把数据库单独拿出来,放在宁外一台服务器上面。具体操作记录如下:登陆服务器之后,登陆mysql数据库:mysql -uroot -p # 查看数据库 SHOW DATABASES;把所有数据库名保存下来,之后开始备份数据库,使用的是mysqldump命令。 mysqldump -uro...

网页爬虫的一次反击

2018年11月05日 ,作者: 黄兵

今天下午的时候,服务器告警频发,首先是cpu 100%,之后是网络跑满。看样子是有人在爬取我的网站了,没有限制速度,必须要限制。下面是几张截图,可以看到当时的一些情况。服务器cpu已经跑满,后面降下来是我限制了之后才降下来。那就来说说是如何防御这次爬虫抓取网站的:首先肯定要知道这个事是谁做的,需要查看访问者的ip地址,推荐使用这个工具:iftop。登录主机后,执行 yum install ifto...

SQLAlchemy filter和filter_by写法的一些区别

2018年11月05日 ,作者: 黄兵

最经经常在filter和filter_by之间切换,有的时候很容易搞混,今天总结一些内容,记录如下:filter():把过滤器添加到原查询上,返回一个新查询filter_by():把等值过滤器添加到原查询上,返回一个新查询可以看到filter()和filter_by()的一个异同,一个是过滤器,一个是等值过滤器,两个具体有什么区别呢?看写法:filter():PhoneNumber_List.qu...

生死2秒钟 离家348米

2018年11月05日 ,作者: 黄兵

10月的最后一个夜晚,在长江水底沉睡了85小时20分的公交车“渝F27085”露出水面。这辆万州市民心中曾经的“最美公交”,玻璃全部破损,上层部分坍塌。有船只拉响了低沉的汽笛声,持续了5秒过后,像是某种呼应,重庆万州长江二桥附近所有的船只一齐发出悲鸣。3天前的上午,搭载了15人的22路环湖公交车在行驶中突然越过中心实线,撞断护栏,沉入江底。在万州的南山公园,出事后每一天,草地和台阶上都坐满了人,从...

重庆公交车坠江事件有感

2018年11月05日 ,作者: 黄兵

一辆公交车,一个社会的缩影。一个暴戾的乘客,一个以牙还牙的司机,一群麻木不仁的围观者,共同完成了一场悲剧。无知者无畏的乘客,掌握全车人身家性命、意气用事的司机,不去制止觉得事不关己高高挂起的围观者,死到临头都依然抱着侥幸的心理,沉默的大多数,岂不知全部都是陪葬者。

Javascript url 查找参数值

2018年11月02日 ,作者: 黄兵

最近需要使用javascript获得url的参数值(javascript url parameters),url结构如下:http://www.materialtools.com/manage/material_property_value?pro_id=2&classification_id=8&item_id=6原来需要查询url的参数值写法如下:function get_url_param(...