7.2 电子化产品:对人工依赖的减少

电子化产品:对人工依赖的减少

 

电能的出现象征着工业社会发展的一个新阶段,但这还不是全部。电在能源方面发挥了巨大作用,让人类对火、风、水等在能源方面的直接依赖有了很大的减少[1]。电作为一种间接能源更为可控,其使用便利性是其最大的特征。电对我们的重大影响不仅仅局限在作为能源这方面,其作为信息传输、交互的载体,以及在信息存储方面发挥的作用对人类的影响及意义可能更大。

各种微电子技术,早期的电子管,后来的集成电路,让人类处理信息(信号)的能力大为增强,同时也让电力在微观领域的作用得到发挥(当然这中间也少不了材料科学方面的进步)。信息传递交互、信息处理,以及信息持久保存和读写,这几个方面的发展给信息社会的出现提供了基础,同时也让产品设计的跨时代变化成为可能。

各种早期电子产品的出现,包括电视机、收音机、电话、BP机,乃至后来的功能手机等,应该还算是对电子信号传输的直接应用。这些产品将一些图像、声音、视频等信号进行接收和转化,从而达到信息传递的效果。只是这一点当时就已经让人们激动不已。试想一个越洋电话,就可以直接听到远在千万里外人的声音。电视直播可以将现场的情况在瞬间传递到千家万户。这在以前是难以想象的。

电脑的发展早期主要用于提高人类的计算能力,但随着个人电脑的发展,其作为一种个人处理、存储信息的工具获得社会的广泛认可。电脑尽管不能直接去用于物质类的生产,但因为其在信息处理方面的独特优势,为直接的物质生产提供了很多便利。产品设计、流程控制、统计及预测模拟、互动型视觉体验等是电脑作为一种相对智能化的工具一段时间内发挥的最大价值(当然在社会层面,不能忽视电脑作为游戏机的价值)。以往需要大量人工以及繁琐环节的工作,基于电脑的图像或信号模拟,并依赖软件的处理,可以很方便地获得结果。而且这种劳动结果是以电子信息的方式加以保存的。保存、分享、修改都非常方便。不但省去了很多类似于纸张、搬运等成本,而且备份也非常方便,存储的成本也很低。

伴随着电脑处理技术,一些智能模块也开始出现。这些智能模块在一些直接功能性产品中的应用拓展了人类以往产品的边界。例如安装了电子导航的汽车会带给我们远远超过一辆汽车加一张地图的价值。一张地图上面往往会标准很多信息。要通过人工的方式在快速行驶中将一些提醒信息非常准确地表达出来是非常困难的。但电子导航就可以非常容易地实现这种功能。这个背后就是一些智能模块在不断地进行信息采集和计算,从而给予司机指导。其他例如模糊控制的电饭煲、洗衣机等也让我们可以在设置之后高枕无忧。

如果说工业化产品的发展是让人类对农业社会中对自然的直接依赖逐渐变得更为可控的话,那么各种微电子应用,包括电脑的出现,则在让我们在信息领域中对人工的依赖逐渐减少。人工尽管有人工的好处,但相对而言,也具有不可控性,而且标准化、精准化程度都需要因人而异。一百个人可以写出一百个字体来。相互之间也无法做到100%的相互认识。但计算机打出来的字,却可以在几乎所有的有对应软件的电脑中识别出来。更何况有些时候人工的减少其实就是对人的一种解放。大家不用再去做一些过于基础而且重复的工作。

以往一次大型人口数据统计,可能要花费数千人长时间的工时。而且很多人做的都是非常基础的重复的工作,例如不断地去画字,或者用笔去记录、统计。现在则有可能在数据录入完成后一个人对着电脑很快就可以获得想要的结果。甚至可能的话,甚至在录入阶段就直接让统计对象对着电脑、平板等直接去录入。这样不但可以将调研阶段和录入阶段减少为一个环节,而且出错的概率也会降低很多。

工业生产领域中对电脑的应用更是让工业生产的精度、准度达到了人力可能无法实现的程度。任何一个高智能流水线背后都有着复杂的电脑程序实现。从这个角度讲,电脑[2]被称为工业社会分工时代最伟大的产品设计应该不为过。电子化产品的出现也为连接时代的到来打下了基础。



[1] 目前的用电,尽管直接对火、风、水等依赖很少。但因为电本身也是由水力、风力、燃煤、燃油等产生出来的,因此间接依赖还很大。不过后续随着对太阳能使用的程度加强。对前者的依赖就会减少一些。

[2] 此处的电脑不仅包括硬件,也包括软件,更多指的是可以运行状态的电脑综合体。

八个简单方法提升WordPress速度

WordPress是一个很棒的开源程序,几乎我认识的站长朋友当中,粗略估算有80%使用Wordpress。但很棒不等于完美,就在我所认识的这些朋友中,几乎所有人都会抱怨Wordpress太臃肿,运行效率太低了,大家有无同感?

所以,今天这篇博文和大家分享8个小贴士来提升WP的运行效率,如果您运用了这些方法后发现确实有帮助,请把这篇博文分享给更多的人好吧?当然为了尊重劳动成果,也烦请指明出处。

 

1、使用高效的缓存插件

WordPress插件们是非常有用的, 我推荐一款缓存插件可以改善页面载入时间,它就是W3 Total Cache,有了这个插件之后咱就不再推荐你其他缓存插件了,因为所有缓存插件有的功能它都有了,而且安装和使用非常方便。

拥有这款插件之后,你的页面载入速度会加快,因为网站的主要元素已经被缓存了。

2. 使用内容分发网络 (CDN)

基本上所有你喜欢的大网站都会使用CDN。简单来说,CDN是把你站点上的文件们(CSS\JS\图片等)发布到最接近用户所在的网络区域,让用户就近下载,这样就能提高站点运行速度。在国内ChinaCache是比较有名的CDN供应商,不过价格贵了一些,像各大门户网站,比如腾讯、新浪、网易等等都是用ChinaCache。所以不管你在哪里,访问这些门户网站都会觉得速度很快。当然啦,对于小站来说,这个成本可能会高一些,

所以,你无论是在南方,或者北方,还是在北美,访问这些门户网站,感觉速度都很快,最主要的原因之一就是CDN发挥了效果。一般小网站是用不起这服务的,所以慢点就慢点了吧,可以租用互联互通的6线机房(6线机房是指包括网通、电信、铁通、移动、联通、教育网等多线接入的骨干网IDC机房,彻底消除各地网络瓶颈,保证互联网访问畅通无阻的高速机房。)

顺便提一下,还有一个WordPress插件Free-CDN,号称也能达到类似的效果,虽然我还没有做过测试…

3、图片优化很重要

Yahoo! 有一个图片优化软件叫Smush.it可以最大程度无损压缩图片,不过,除非你超级有耐心,否则一张张压缩图片的话太浪费时间了,好在,还有一个很给力的WP插件叫WP-SmushIt,这货可以为你网站上所有的图片做一次性压缩,所以没有理由不去用它。

4、优化你的WP数据库

你可以用WP-Optimize这个插件来优化你的WP数据库(清理spam,反复改版的文章,草稿,表格等等为你的服务器腾出更多空间从而提升效率);还有一些插件如WP-CleanerDB-Manger等。

5、开启防盗链机制

盗链是带宽的窃贼,当其他网站直接引用你站点的图片的时候,这会影响占用你本身的服务器资源从而影响网站运行效率,你的站点越出名,就会有越多的人盗用你的图片,解决方法是Wordpress有现成的插件Hotlink Protection。当然也可以通过重写htaccess文件来达到同样的效果,欲深入了解的童鞋可以询问自己的空间商如何设置。

6、为文件添加过期时间

关于这个文件过期时间,听起来很玄乎,其实就是通过header报文来指定特定类型的文件在浏览器中的缓存时间。有些文件(例如样式表中调用的背景图片和一些装饰性图片)其实在很长一段时间内这些图片都不会有很大的变化,所以对这类文件我们不妨设置长一些的缓存时间,这样浏览器就不需要每次从服务器下载这些文件而直接从缓存中读取,这样绝对可以提升加载速度。

当然,所以做法很简单,只需要在网站的.htaccess文件中加入以下代码,

<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault A600
ExpiresByType image/x-icon A2592000
ExpiresByType application/x-javascript A604800
ExpiresByType text/css A604800
ExpiresByType image/gif A2592000
ExpiresByType image/png A2592000
ExpiresByType image/jpeg A2592000
ExpiresByType text/plain A86400
ExpiresByType application/x-shockwave-flash A2592000
ExpiresByType video/x-flv A2592000
ExpiresByType application/pdf A2592000
ExpiresByType text/html A600
</IfModule>

稍微解释一下,text/css表示样式表文件,text/plain代表的纯文本类文件,依次类推。其中A2592000就表示这种类型文件在浏览器中的缓存时间,以秒为单位。一天86400秒,2592000就表示这类文件可以缓存30天。

如果你不是经常修改模板,那样式表文件和javasctipt文件基本上也可以设置缓存一周到一个月左右。text/html文件不要设置太长的缓存时间,因为这些东西修改的频率很高,一天更新一次是有必要的。

7、为你的图片添加延时加载

延时加载就是当用户停留在第一屏的时候,不加载任何第一屏以下的图片信息,只有当用户把鼠标往下滚动的时候,这些图片才开始加载。这玩意儿不仅可以提升站点载入速度,更是可以节省带宽。要轻松的拥有这项功能,请安装WP的jQuery Image Lazy Load 插件吧。

8、控制文章草稿存数数

通常一篇博文我会保存10次以上的草稿,而Wordpress会无限制的存储每个草稿;如果我的博文已经发布了,为啥我还需要这些储存的草稿文章呢?所以这就是为啥我会用 Revision Control 插件来确保这些草稿内容的最小化。通常我会设置只存储2-3篇草稿来防止万一,但存储的数量绝对不会太高,否则你的WordPress backend只会被这些无意义的内容塞满从而降低运行效率。

好了,今天的分享就到这里,希望对大家有帮助,其实这些要点不仅仅对Wordpress有帮助,对其他开源网站也同样奏效。:-)

本文作者: Fimen

注:本文转载自:http://www.wpcourse.com/8-methods-speed-up-your-wordpress.html

ubuntu 安装svn

环境:ubuntu10.04LTS

1、在终端中直接输入  sudo apt-get install subversion,选择安装即可
2、查看版本命令 svnserve –version(更多命令直接键入svnserve –help可查看到)
3、查看svnserver是否已启动: netstat -ntlp,可看到svn对应的端口3690(如果没有看见,则证明服务未启动,可使用svnserve -d启动svn服务,还可以通过svnserve -d -r /home/wwwwfw/mobile来指定启动目录)
4、建立项目:svnadmin create mobile(mobile为项目名称,位置在当前登录用户的主目录下,如我使用wwwwfw登录,则路径为/home/wwwwfw/mobile)
5、在mobile文件夹中可以看到conf文件夹,可针对conf文件夹中的authz、passwd、svnserve.conf进行设置,svnserve.conf主要设置整体的安全策略,passwd则设置用户名和密码,authz则是设置具体的用户有什么权限。
6、常用svn命令:
     checkout(co)命令:

      svn co url –username user –password password

               根据提示可以输入yes来保存帐号和密码;

       update(up)命令:

                进入到需要更新的目录,输入:svn up

      commit(ci)命令:

            进入需要提交的目录,输入:svn ci -m “修改信息”

    add命令:

         进入需要提交的目录,输入:svn add filename or path

       添加完之后需要用commit命令提交。

 

   另外,在vi中也可以不退出编辑的文件来提交文件,

    使用shell命令::! svn ci -m “commit information..”

 

ubuntu下SVN服务器安装配置

一、SVN安装

1.安装包
$ sudo apt-get install subversion

2.添加svn管理用户及subversion组
$ sudo adduser svnuser
$ sudo addgroup subversion
$ sudo addgroup svnuser subversion

 

3.创建项目目录
$ sudo mkdir /home/svn
$ cd /home/svn
$ sudo mkdir fitness
$ sudo chown -R root:subversion fitness
$ sudo chmod -R g+rws fitness

4.创建SVN文件仓库
$ sudo svnadmin create /home/svn/fitness

5.访问方式及项目导入:
$ svn co file:///home/svn/fitness
或者
$ svn co file://localhost/home/svn/fitness
* 注意:
如果您并不确定主机的名称,您必须使用三个斜杠(///),而如果您指定了主机的名称,则您必须使用两个斜杠(//).
//–
下面的命令用于将项目导入到SVN 文件仓库:
$ svn import -m “New import” /home/svn/fitness file:///home/svnuser/src/fitness
一定要注明导入信息

 

//————————–//
6.访问权限设置
修改 /home/svn/fitness目录下:
svnserve.conf 、passwd 、authz三个文件,行最前端不允许有空格
//–
编辑svnserve.conf文件,把如下两行取消注释
password-db = password
authz-db = authz 

//补充说明
# [general]
anon-access = read
auth-access = write
password-db = passwd
其中 anon-access 和 auth-access 分别为匿名和有权限用户的权限,默认给匿名用户只读的权限,但如果想拒绝匿

 

名用户的访问,只需把 read 改成 none 就能达到目的。

//–
编辑/home/svnuser/etc/passwd 如下:
[users]
mirze = 123456
test1 = 123456
test2 = 123456
//–
编辑/home/svnuser/etc/authz如下
[groups]
admin = mirze,test1
test = test2
[/]
@admin=rw
*=r
这里设置了三个用户mirze,test1,test2密码都是123456
其中mirze和test1属于admin组,有读和写的权限,test2属于test组只有读的权限

7.启动SVN服务
svnserve -d -r /home/svn
描述说明:
-d 表示svnserver以“守护”进程模式运行
-r 指定文件系统的根位置(版本库的根目录),这样客户端不用输入全路径,就可以访问版本库
如: svn://192.168.12.118/fitness

这时SVN安装就完成了.
局域网访问方式:
例如:svn checkout svn://192.168.12.118/fitness –username mirze –password 123456 /var/www/fitness

MySQL Engines: InnoDB vs. MyISAM – A Comparison of Pros and Cons

MySQL Engines: InnoDB vs. MyISAM – A Comparison of Pros and Cons

by Yang Yang on September 2, 2009

    The 2 major types of table storage engines for MySQL databases are InnoDB and MyISAM. To summarize the differences of features and performance,
  1. InnoDB is newer while MyISAM is older.
  2. InnoDB is more complex while MyISAM is simpler.
  3. InnoDB is more strict in data integrity while MyISAM is loose.
  4. InnoDB implements row-level lock for inserting and updating while MyISAM implements table-level lock.
  5. InnoDB has transactions while MyISAM does not.
  6. InnoDB has foreign keys and relationship contraints while MyISAM does not.
  7. InnoDB has better crash recovery while MyISAM is poor at recovering data integrity at system crashes.
  8. MyISAM has full-text search index while InnoDB has not.

In light of these differences, InnoDB and MyISAM have their unique advantages and disadvantages against each other. They each are more suitable in some scenarios than the other.

Advantages of InnoDB

  1. InnoDB should be used where data integrity comes a priority because it inherently takes care of them by the help of relationship constraints and transactions.
  2. Faster in write-intensive (inserts, updates) tables because it utilizes row-level locking and only hold up changes to the same row that’s being inserted or updated.

Disadvantages of InnoDB

  1. Because InnoDB has to take care of the different relationships between tables, database administrator and scheme creators have to take more time in designing the data models which are more complex than those of MyISAM.
  2. Consumes more system resources such as RAM. As a matter of fact, it is recommended by many that InnoDB engine be turned off if there’s no substantial need for it after installation of MySQL.
  3. No full-text indexing.

Advantages of MyISAM

  1. Simpler to design and create, thus better for beginners. No worries about the foreign relationships between tables.
  2. Faster than InnoDB on the whole as a result of the simpler structure thus much less costs of server resources.
  3. Full-text indexing.
  4. Especially good for read-intensive (select) tables.

Disadvantages of MyISAM

  1. No data integrity (e.g. relationship constraints) check, which then comes a responsibility and overhead of the database administrators and application developers.
  2. Doesn’t support transactions which is essential in critical data applications such as that of banking.
  3. Slower than InnoDB for tables that are frequently being inserted to or updated, because the entire table is locked for any insert or update.

The comparison is pretty straightforward. InnoDB is more suitable for data critical situations that require frequent inserts and updates. MyISAM, on the other hand, performs better with applications that don’t quite depend on the data integrity and mostly just select and display the data.

修改mysql的默认存储引擎

  1. 查看mysql存储引擎命令,在mysql>提示符下搞入
    show engines;

    字段 Support为:Default表示默认存储引擎  ,如下图:

  2. 设置InnoDB为默认引擎:在配置文件my.cnf中的 [mysqld] 下面加入default-storage-engine=INNODB 一句
    • Ubuntu系统下,my.cnf文件的路径为:/etc/mysql/my.cnf
  3. 重启mysql服务器:mysqladmin -u root -p shutdown或者service mysqld restart 登录mysql数据库