IT技术博客大学习 共学习 共进步

技术文章

精选技术长文、实践记录与系统化阅读

技术文章精选

低噪声、高可扫读;标题、摘要、来源、标签一目了然。

最新文章

采集自各技术站点的近期文章。

IT MySQL/ 2011-04-27 23:58:38 / 累计浏览 1,834

为MySQL设置查询超时

昨天有人在群里问, MySQL是否可以设置读写超时(非连接超时), 如果可以就可以避免一条SQL执行过慢, 导致PHP超时错误. 这个, 其实可以有. 只不过稍微要麻烦点.

IT 算法/ 2011-04-27 23:57:45 / 累计浏览 1,386

蛋疼研究之单词等式

    先给大家看两个“单词等式”: ACT + DEAL = DONE COIN + TRY = DIAL     除了意义上说得通以外,从另外一个角度来看,这两个等式也是成立的。大家能猜到是什么吗?       答案是:这两个等式真的就是成立的――如果把单词看作 36 进制数的话。把 ACT 转换成 10 进制就是 13421 ,把 DEAL 转换成 10 进制就是 625053 ,而 DONE 的 10 进制正好就是 638474 ...

IT 视觉设计/ 2011-04-27 23:55:54 / 累计浏览 3,316

翻转吧,界面!-3D UI概述

  随着技术发展,界面越来越简易化,二维的操作难以提供更好的交互体验,因此平面化的操作界面转向3D 空间维度发展,我们又迎来的了新的时代,一场革命性新的交互体验;本次分享,作为3D UI的概述,以下就整体的来了解下3D UI。 图1:如何定义3D 什么是3D   我们首先了解下什么是3D:   一般而言,3D也称为三次元、三维空间;日常生活中可指由长、宽、高、3个维度所构成的空间,而且日常生活中使用“三维空间”一词,常常...

IT MySQL/ 2011-04-27 23:55:18 / 累计浏览 1,690

mysql_connect报告”No such file or directory”错误的解决方法

今天在MacBookPro上安装wordpress时,安装程序一直报错说连不上数据库。mysql客户端可以正常使用,可以确定不是服务器的问题。写了个php脚本单独执行mysql_connect(),发现错误信息居然是“No such file or directory"!这里应该没涉及到文件啊?在网上搜了一下,找到了这篇文章:mysql_connect and No such file or directory。原来,我的apache/php是mac系统自带的,而mysql是通过MacPorts安装的,它的本地socket设置与默...

IT 算法/ 2011-04-27 23:51:44 / 累计浏览 3,277

使用Jscex实现排序算法动画

用动画来观察排序算法是一件很酷的事情,例如有人便为各种排序算法提供了动画效果。只可惜这些效果都是实现准备好的gif图片,并非由代码写成。在大部分平台上编写这样的程序并没有太大困难,只要在绘制出图形之后短暂地阻塞线程就行了。可惜,在JavaScript中我们只能“一蹴而就”,要暂停的话,只能使用setTimeout进行回调了。不过,这也正是Jscex的用武之地,用Jscex编写的代码需要“暂停”,只需要简单地调用sleep异步方法,一切...

IT JavaScript/ 2011-04-27 23:51:10 / 累计浏览 5,223

UglifyJS有个不错的JavaScript解析器

我一直在为Jscex寻找好用的JavaScript解析器,之前我用的是Narcissus,也写过相关文章。不过可惜的是,Narcissus使用了SpiderMonkey的扩展,因此它并不是用ECMAScript 3实现的,无法在IE 8等浏览器中使用。目前Jscex使用的是NarrativeJS中旧版的Narcissus,但是我并不喜欢它输出的AST结构,使用中也发现高级功能里的一些bug,有些食之无味弃之可惜的感觉,而改写新版Narcissus又必须大动干戈。最近我接触到了UglifyJS,发现它的解...

IT JavaScript/ 2011-04-27 23:50:38 / 累计浏览 3,714

使用Google Closure Compiler全力压缩代码

JavaScript压缩代码的重要性不言而喻,如今的压缩工具也有不少,例如YUI Compressor,Google Closure Compiler,以及现在比较红火的UglifyJS。UglifyJS的出名是由于它代替Closure Compiler成为jQuery项目的压缩工具。根据我的实测,jQuery Core的代码使用UglifyJS压缩后(节省62.5%)的确要比Closure Compiler压缩后(节省57.53%)更小一些。很显然,这是因为UglifyJS的压缩策略比Closure Compiler更“聪明”一些。

IT 系统架构/ 2011-04-27 23:49:47 / 累计浏览 2,996

模拟HTML表单上传文件(RFC 1867)

如今使用HTTP协议定制API已经是十分常见的事情,在普通的GET和POST请求中传递些参数估计人人都会,但是如果我们需要上传文件呢?如果只是传递单个文件,那么将数据流POST给服务器端即可。但如果需要上传多个文件,或是在文件之外需要附带一些信息,那么又该怎么做呢?之前我遇到过一些朋友是这么打算的,他们说,不如就把文件流转化为文本,然后把它当作一个普通的字段传递。这么做自然可以“实现功能”,但缺点也很多。首先,将二...

IT JavaScript/ 2011-04-27 23:46:05 / 累计浏览 2,232

Jscex使用BSD授权协议正式发布

这次打算把Jscex好好搞一下了,其实很少会有技术方面的障碍能“轮到”我们去突破,但我觉得Jscex的确有机会,HTML 5、Node.js各个都是红火的玩意儿。前几天我花了两个晚上用半生不熟的中式英语写了一篇自认为比较完整的说明文字放到了Github上的项目首页上,没想到几个小时后便收到了StratifiedJS(一个与Jscex目标有些类似的项目)作者的邮件,提到了一些关于StratifiedJS的事情。我向他咨询了StratifiedJS的某些细节问题,也向他简...

IT 奋斗/ 2011-04-08 13:51:22 / 累计浏览 3,471

你的工作不是命令人们去做什么

我遇到很多人都告诉我,他们想去做一名经理/管理者。我要问的第一个问题就是“为什么”?任何一个跟“因为我喜欢命令人们”相类似的答案都是绝对的错误的。他们有的会回答:“这样我就可以直接的控制/影响整个团队。”或”这样我就能掌握领导权“。 任何跟”我喜欢命令人们“或远或近的回答都是错误的。这些人都还没有准备好去做一名管理者 ―― 他们还差...

IT 系统运维/ 2011-04-08 13:50:40 / 累计浏览 2,712

*nix下关于配置的一些笔记

最近一直在做一些服务器配置方面的东东, 记录下来, 备以后用.环境变量设置 (Mac OS X 10.6 Snow Leopard 中设置PATH环境变量) sudo vim /etc/paths将路径添加到里面去, 一行一个路径或者vim vim /etc/bashrc在里面和unix一样用export命令添加安装python MYSQLdb, 环境mac os x 10.6, linux其它环境类似 安装python MYSQLdb, 环境mac os x 10.6, linux其它环境类似 0. 确保 mysql 的 configure 参数里面有 --enable-thread-safe-cl...

IT Android开发/ 2011-04-08 13:50:08 / 累计浏览 4,497

Android用户界面设计:线性布局

理解布局对于良好的Android程序设计来说很重要。在这个教程中,你将学习到所有关于线性布局的东西,它在屏幕上垂直地或水平地组织用户界面控件或者小工具。使用得当,线性布局可以作为基本的布局,基于这个布局来可以设计出许多有趣的Android程序用户界面。 什么是线性布局 线性布局是最简单,Android开发者使用得最多的布局类型之一,开发者用它来组织你们的用户界面上的控件。线性布局的作用就像它的名字一样:它将控件组织在一...

IT Android开发/ 2011-04-08 13:47:59 / 累计浏览 5,517

Eclipse开发Android应用程序入门

如今的移动设备应用程序开发充满着让人振奋的东西。功能强大的硬件支持,平板电脑,多样的软件平台(塞班 OS,iOS,WebOS,Windows Phone 7…),移动设备开发者前景充满了机会和挑战。 当你想要开始开发你的移动设备程序时,如此多的选择可能让你产生困扰。究竟应该选择神马平台?我应该...

IT Android开发/ 2011-04-08 13:44:00 / 累计浏览 6,325

Eclipse开发Android应用程序入门:重装上阵

在我们教程系列的第一部分中,我们使用Android和Eclipse开发了一个简单的饮茶计时器的应用程序。在第二部分,我们将继续开发这个程序,并给它增加一些其他的额外的功能。在开发的过程中,我们将给你介绍更多重要而强大的Android SDK特性,包括持久化数据存储,Activity和Intent,和共享用户首选项

IT Java/ 2011-04-02 14:16:12 / 累计浏览 8,165

Java heap dump触发和分析

    为了分析java应用的内存泄漏,使用thread dump往往解决不了问题。使用jstat【eg:jstat -gcutil pid 1000 5】工具查看运行的java应用的heap size,perm size ,survivor ratio等,当时你无法知道是什么对象把堆填满了。      什么是 Java heap dump       首先需要搞懂什么是java heap,java heap是分配给实例类和数组对象运行数据区,所有java线程在运行期间共...

IT MySQL/ 2011-04-02 14:14:45 / 累计浏览 1,847

用federated引擎在不同服务器间转移mysql表

假设一个场景:在某一天,我需要将my01上的某些表转移到另一台机器my02上,都有哪些方法可以实现?至于转移的目的可能有很多,比如my01磁盘不够了,我对DB进行拆分;比如用性能更好(差)的my02代替my01;比如线上环境与线下环境进行数据备份…. 针对这个问题,你肯定会马上想出下面的方法: 从my01上SELECT出来,保存到一个文本文件里,再INSERT到my02上去; 如果是myisam表,直接从my01将文件scp到my02上去; 第一种方法可...

IT PHP/ 2011-04-02 14:14:13 / 累计浏览 2,934

open_basedir后可能存在的安全隐患

目前php站点的安全配置基本是open_basedir+safemode,确实很无敌、很安全,即使在权限没有很好设置的环境中,这样配置都是相当安全的,当然了,不考虑某些可以绕过的情况。本文讨论两点开启...

IT PHP/ 2011-04-02 14:13:20 / 累计浏览 4,213

深入理解PHP原理之Session Gc的一个小概率Notice

如果在ubuntu下, 采用apt安装的PHP, 那么在使用Session的时候, 就可能会有小概率遇到这个提示. PHP Notice: session_start(): ps_files_cleanup_dir: opendir(/var/lib/php5) failed: Permission denied (13) in /home/laruence/www/htdocs/index.php on line 22