EverET.org

好记性不如烂笔头

数据库的一些基本概念

| Comments

可能很多初学者对于数据库没有什么概念。

对于MySQL来说,其下可以有很多个数据库,可以使用

CREATE DATABASE database_name;

来建数据库。

我们还可以对不同的数据库对不同的用户设置权限。

然后我们可以选择当前操作的数据库,然后在其下建表

CREATE TABLE table_name;

举个例子,我们可以在MySQL下一些数据库:ET,LST,zhke,test。

然后在数据库ET下有两张表User和Product。

HTTP状态码

| Comments

发现到了现在,我还是除了一些基本的状态码之外, 其他状态码都不是很熟悉,于是找了些状态码过来记录一下,也当做备忘了。

下面的拿Vim把返回码处理成表格还加了颜色,哈哈,果然用Vim就是像刷屏一样。配合宏真是无敌了!

100 Continue

初始的请求已经接受,客户应当继续发送请求的其余部分

101 Switching Protocols

服务器将遵从客户的请求转换到另外一种协议

200 OK

一切正常,对GET和POST请求的应答文档跟在后面

201 Created

服务器已经创建了文档,Location头给出了它的URL。

202 Accepted

已经接受请求,但处理尚未完成。

Python抓取京东商城的所有笔记本电脑的参数

| Comments

最近洪爷要写数据挖掘的论文需要些数据,于是俺又有机会做苦力了。昨天刚刚回到学校,晚上就帮洪爷写了个爬虫来爬数据京东商城的笔记本的参数。

为了快速完成,基本原理就是人工找到笔记本的页面。

然后他有22页(Page),编号规则如下:

http://www.360buy.com/products/670-671-672-0-0-0-0-0-0-0-1-1-1.html

http://www.360buy.com/products/670-671-672-0-0-0-0-0-0-0-1-1-%d.html

http://www.360buy.com/products/670-671-672-0-0-0-0-0-0-0-1-1-22.html

两台Burst.Net主机传输文件真快

| Comments

在两台主机间传数据真快啊,不过也说明是100Mb的网,可惜可惜。

2月8日,burst出了优惠码,我决定用优惠码,有个8折,而且以后都是8折,还好。

image

搭好了FTP服务器,用户体验好多啦

| Comments

刚刚无聊想了下,还是搭个FTP服务器让别人上传文件方便些,于是就开工了,花了点时间配了下vsftpd,据说还支持ipv6,不过在家没法测试。于是同志们终于可以用FTP直接操控自己网页的文件了,以前直接丢个shell给别人这样用户体验不太好啊~呵呵~

有个ftp直接修改文件,这样也方便很多了。

努力~~~

服务器迁移告一段落

| Comments

原来的主机是基于Xen的,价格非常的贵,于是现在换了基于OpenVZ的burst.net的主机,性能虽然可能比不上原来的,但是便宜了不少。内存从128MB换成了512MB,不过价格便宜了一半。感觉速度还是了很多很多啊~而且还有原生的ipv6的支持,不再需要借助tunnelbreaker,真是校网的救星。

不过想起昨天还真是悲剧,开通了10分钟84就将账号发给我,但是竟然没有ip地址,这真是奇葩啊。于是发了ticket就去闲逛了,我们比他们晚13个小时,他们上午8点上班,也就是我们的晚上9点。于是晚上9点多就有人回复解决了问题,把问题修复了,并且把ip重新发了。然后技术支持很好心的问了还有什么需要帮忙,然后就再顺便帮忙分配了一些ipv6的地址。

于是今天开工迁移了。这次将网站都迁移过去了,等过几天再把Git版本库也迁移过去。

原来的主机用的是nginx(发音同 engine x),换到burst.net后默认就装了apache,于是就决定换回apache了,重新配置了下换成worker模式,感觉和nginx差不多吧。

在如下python写的简单的压力测试下服务器基本也没什么压力。

[分享]如何拆米袋的缝合线

| Comments

今天家里的米用完了,我爸让我拆米袋,于是想看看怎么正确地拆米袋的先。

以前每次都是非常麻烦地的拿个剪刀慢慢剪,要剪很久才能剪开,今天上网找了下,发现还真有方法,一试就轻松打开了米袋的缝合线。

四句话:双线对着我,须从左边扯,剪断出线头,两边一拉的。 双线对着我:是说面对面袋、米袋封口的双线。 须从左边扯:是说从左边拆。 剪断出线头:是说剪断封口处多余的线头。 两边一拉的:是说剪断出线头后,会出现两个线头,一手拉一个线头,向两边拉,封口就开了。 正规封口机封的口很好拆,不正规封口机封的口很难拆。

此法只给还不会拆米袋的缝合线菜鸟们看的:

1、看一下米袋的缝合线,两面是不同的。如图1:

2、沿米袋边,在X处,用剪刀把线剪断(一定要在红色的箭头方向)。如图2:

3、把A面的双线环形处的断线清理干净。如图3:

4、在B面的箭头方向X处拿住缝合线,只要轻轻地一拉,应该能顺利的把袋口拆开。如图4:

《Unix网络编程》的代码在Ubuntu上编译

| Comments

书的示例代码在 http://pix.cs.olemiss.edu/csci561/prg561.1.html

我在Ubuntu 10.10上编译会出现错误如下错误

1
2
3
4
5
6
tcpservpoll01.c: In function ‘main’:
tcpservpoll01.c:13: error: ‘OPEN_MAX’ undeclared (first use in this function)
tcpservpoll01.c:13: error: (Each undeclared identifier is reported only once
tcpservpoll01.c:13: error: for each function it appears in.)
tcpservpoll01.c:13: warning: unused variable ‘client’
make: *** [tcpservpoll01.o] Error 1

解决方案是去定义一下OPEN_MAX它。

我们在unp.h里面加上

#define OPEN_MAX 1024

就好了。

设为1024的原因见 http://blog.chinaunix.net/space.php?uid=23242876&do=blog&id=2480261