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

技术文章

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

技术文章精选

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

最新文章

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

IT 系统架构/ 2012-08-23 00:01:47 / 累计浏览 3,333

几种常见的NoSQL数据库关键特性列表

NoSQL根据不同的数据模型,大致可以分为4类,分别是键值对存储(Key-Value Stores),列族存储(Column Families),文档数据库(Document Databases)以及图形数据库(Graph Databases)。四者从容量来讲,依次下降,而从复杂度来说则相反。 下面我根据最近看的一些资料,列出了目前常见的NoSQL数据库系统的一些主要特性,不一定都正确。另外,后面列了一些参考资料,偏向于PostgreSQL,个人觉得还不错。

IT CSS/HTML/ 2012-08-23 00:00:44 / 累计浏览 4,850

CSS3入门——由点到面

作为Web社区,我们已经在CSS3方面取得了很大的进步。当我们开始使用background-clip和过渡动画(transition/animation)等可视化效果时,text-shadow和border-radius已经司空见惯了。我们似乎花了大量的时间争论何时或如何引入这些属性。一个特性不兼容所有浏览器或暂时未完全文档化,并不意味着我们不应该使用它。对此,我持相反态度。

IT CSS/HTML/ 2012-08-22 23:53:20 / 累计浏览 3,689

让IE6支持min-width

最近和同事在搞一个自适应布局的页面改版,样式里用到了一些min-width,这个CSS属性在IE6里不被支持。要解决这个问题,网上大多数都是用IE的expression去解决的(不了解expression的同学看下http://msdn.microsoft.com/en-us/library/ms537634%28v=vs.85%29.aspx)。expression有个特点就是,当元素reflow/repaint的时候,它都会重复运算一次。虽说可以解决min-width的兼容问题,但是性能损耗太大了,而且页面上用的min-width越多,这个性能损耗会随之变大。

IT 系统运维/ 2012-08-22 23:42:43 / 累计浏览 5,850

Linux下的一些I/O统计工具

作为一个Linux系统管理员,统计各类IO是一项必不可少的工作。其统计工具中iostat显然又是最重要的一个统计手段。但是这里iostat不是本文的重点,因为这个工具的使用在网络上已经有大量的教程,可以供大家参考。这里主要是想介绍一些其他统计工具以来满足不同的需求。

IT Oracle/ 2012-08-22 23:42:14 / 累计浏览 3,864

DBMS_SUPPORT包简单使用

本片文章介绍下追踪SQL的另一种方法,使用DBMS_SUPPORT包来追踪SQL。 DBMS_SUPPORT是Oracle为内部人员提供的一个软件包。供内部支持人员使用以更有效地跟踪SQL。馆方文档上没有这个包的说明文件,默认情况下,系统不安装这个包。

IT 互联网/ 2012-08-22 23:41:29 / 累计浏览 2,650

从移动电子商务看移动社交的发展

如今,越来越多的人们将出行、开会、排队等等大量的碎片时间花在移动互联网上,移动互联网越来越有可能超越传统互联网。而随着电子商务的发展,移动电子商务也如雨后春笋般影响着人们的生活。调查显示,全球智能手机用户有70%的用户在购物商店中使用智能手机,49%的手机用户使用手机来对比价格,48%的用户使用手机获取代金券和赠券,44%的用户使用手机查找商品评价。移动电商的迅速发展使得许多社交网络开始进行电子商务探索,如facebook、人人网等,由于移动互联网的发展趋势,以及社交网站聚集的大量用户使得电子商务向移动社交方向发展成为可能。

IT 互联网/ 2012-08-22 23:39:40 / 累计浏览 2,549

技术与运营

从情感上讲,以技术为主去推动某个产品或服务的,总会获得更多的赞叹,因为这和互联网就是个技术是有关的。而用人力运营去做的,则会换来一句“这有什么了不起的”。特别是在一些媒体类产品——比如微博——,说的好听叫“策划”,说的难听的,那可不就是“炒作”吗?

IT 奋斗/ 2012-08-22 23:37:21 / 累计浏览 2,407

面试的几点经验

有个癖好,翻看简历,特别是附带作品集的简历,然后找其中的规律。 对于在校生,一份精致的纸质作品集可以展现出设计师对待作品的态度,当翻着每一页向你讲诉想法时,是一个非常让人享受的过程,有时候可以从中获取灵感。纵然紧张,表达能力欠缺,这都无关紧要,沉默的设计师会炫耀自己的得意之作。 在校生需要考察对待设计的热情、态度和潜力,专业知识可以后期培养。当团队资源有限时,会更注重设计师的潜力和稳定性,毕竟入职就能独当一面的设计师是少数,他们更关注未来的发展机会。 注意简历的排版、字体和用色,没有高超的设计能力,让简历看起来整齐舒服不是一件难事。科班出生的设计师没有一定的平面设计能力,设计素养问题让人怀疑。 这仅是对在校生的要求,如果有经验的视觉设计师无法达到这个要求,简历这关是无法通过的。视觉设计师的作品数量显示经验,但能力得看最好的设计,可以只是一个icon,也可以是一个界面。

IT 网络系统/ 2012-08-22 23:36:47 / 累计浏览 5,627

dig挖出DNS的秘密

我相信使用nslookup的同学一定比使用dig的同学多,所以还是有必要花些时间给大家介绍一下dig的。 dig,和nslookup作用有些类似,都是DNS查询工具。 dig,其实是一个缩写,即Domain Information Groper。 一些专业的DNS管理员在追查DNS问题时,都乐于使用dig命令,是看中了dig设置灵活、输出清晰、功能强大的特点。

IT MySQL/ 2012-08-22 23:36:02 / 累计浏览 2,668

PostgreSQL查询优化简介

总结一些有关PostgreSQL查询计划,查询优化的相关内容,比较基础。 SQL是一种申明性(declared)语言,也就是说,它并不是一种程序。它没有其他编程语言里的流控制语言,比如while,也无法控制操作顺序,比如有名的”goto”。 SQL只是描述一个结果,并非过程。 结果一致,但如果过程不同,所带来的系统消耗可谓天差地远。所以所有的RDBMS里都需要有查询优化器来获得一条执行代价最小的方式来获取期望的结果。 在PostgreSQL里,和查询优化器紧密相连的便是查询计划。

IT MySQL/ 2012-08-20 23:48:09 / 累计浏览 2,488

ORACLE用户重命名

从oracle 11.2.0.2开始提供了用户重命名的新特性,在以前的版本中,如果想对用户重命名,一般来说是先创建一个新的用户并授权,然后将原用户下的所有对象导入,然后删除旧的用户!

IT 编程语言/ 2012-08-20 23:47:03 / 累计浏览 2,509

用专业语言表达,用通用语言沟通

高级语言有一个问题,就是它只能在一个非常有限的小环境使用。它的目的是为了效率和准确。如果对于大众沟通,我们就必须重新回到最通用的语言上来。乔布斯在公共演讲的时候尽量用短句,用小学生都能听懂的词,是为了沟通。再准确的词,一旦受众脑子里面没有定义,还不如用最简单的每人都有的模块。当然低级语言不代表着通用,C就比汇编通用,look就比定义look的另外一个词gaze更加通用。

IT 奋斗/ 2012-08-20 23:43:45 / 累计浏览 4,292

一页纸项目管理表格学习笔记

一页纸的项目管理表格(One Page Project Manager)简称OPPM,为高层管理者准备的一种工具或者说是一份报告。这个工具使我们可以方便地与高层管理者就项目情况进行沟通,激励并确保各项任务所有者对自己的工作负责。是用很直观的方式将项目的几个核心要素例如:任务、目标、负责人、进度、成本(资源)在一个表格内罗列出来。OPPM的核心价值在于清晰、直观、简约,打印后只有A4纸大小,便于快速阅读。

IT 系统运维/ 2012-08-20 23:42:26 / 累计浏览 2,704

无法忍受国内吝啬的邮箱服务商,自建邮局发送邮件

关于各家邮箱的发信限制,可到http://ooxx.li/140 看,收集自网络,可能有变更。 之前是使用的腾讯的企业邮箱发送的SMTP,不过初略估计了下,几乎每天发信要接近极限了(整个企业500封/天)。 就单说咱这留言的评论邮件通知,1小时怎么也几十封下去了。一天几百是不大够。 于是我决定自建邮件服务器。

IT 编程语言/ 2012-08-20 23:40:24 / 累计浏览 3,405

脚本语言ymd:介绍

脚本语言ymd ymd全称yamada script,是某一淘数据部员工业余时间完成的一个玩具脚本语言,其语法类似lua和javascript。代码托管在github 目前只支持Linux x86_64,预计未来会支持Windows/Mac OS。 yamada名称由来是动画《Working!!》角色:山田 葵(Yamada Aoi)

IT 算法/ 2012-08-20 23:38:51 / 累计浏览 2,746

记录一个并发引起的 bug

今天发现 Skynet 消息处理的一个 bug ,是由多线程并发引起的。又一次觉得完全把多线程程序写对是件很不容易的事。我这方面经验还是不太够,特记录一下,备日后回顾。 Skynet 的消息分发是这样做的: 所有的服务对象叫做 ctx ,是一个 C 结构。每个 ctx 拥有一个唯一的 handle 是一个整数。 每个 ctx 有一个私有的消息队列 mq ,当一个本地消息产生时,消息内记录的是接收者的 handle ,skynet 利用 handle 查到 ctx ,并把消息压入 ctx 的 mq 。 ctx 可以被 skynet 清除。为了可以安全的清除,这里对 ctx 做了线程安全的引用计数。每次从 handle 获取对应的 ctx 时,都会对其计数加一,保证不会在操作 ctx 时,没有人释放 ctx 对象。

IT 系统架构/ 2012-08-20 23:37:36 / 累计浏览 2,048

Skynet 的一些改进和进展

最近我的工作都围绕 skynet 的开发展开。 因为这个项目是继承的 Erlang 老版本的设计来重新用 C 编写的。 再一些接口定义上也存在一些历史遗留问题. 我需要尽量兼容老版本, 这样才能把上层代码较容易的迁移过来。 最近的开发已经涉及具体业务流程了, 搬迁了不少老代码过来。 我不想污染放在外面的开源版本。 所以在开发机上同时维护了两个分支, 同时对应到 github 的公开仓库, 以及我们项目的开发仓库。 btw, 我想把自己的开发机上一个分支版本对应到办公室仓库的 master 分支, 遇到了许多麻烦。 应该是我对 git 的工作流不熟悉导致的。我的开发机的 master 对应着 github 上的 master , 但我大多数时间在一个叫 ejoy 的分支上开发。 这个分支对应到办公室服务器的 master 分支上。

IT 安全/ 2012-08-20 23:35:14 / 累计浏览 4,389

SAE云服务安全沙箱绕过5(强制修改class私有权限)

上一篇文章已经提到,如果想这个类作为沙盒安全认证的基础类,就必须继承java.lang.SecurityManager,并且当前运行环境中,可以查到当前的SecurityManager对象,以及具体的类名等。可以执行 System 类的静态方法 getSecurityManager( ),如果在运行 Java 程序时使用-D java.security.manager 命令行选项指定了使用默认的安全管理器,或自己定义的安全管理器,则将返回该安全管理器。

IT 算法/ 2012-08-20 23:32:00 / 累计浏览 2,346

Filesort过程

分析源码,介绍一下mysql Filesort过程。