前言 一个成熟的大型网站(如淘宝、京东等)的系统架构并不是开始设计就具备完整的高性能、高可用、安全等特性,它总是随着用户量的增加,业务功能的扩展逐渐演变完善的,在这个过程中,开发模式、技术架构、设计思想也发生了很大的变化,就连技术人员也从几个人发展到一个部门甚至一条产品线。所以成熟的系统架构是随业务...
分类:
Web程序 时间:
2014-10-08 11:30:25
阅读次数:
212
在实现线程的过程中,我们经常会写类似于这样的代码:{ mutex_.lock(); //XXX if(...) 语句; //XXX mutex_.unlock();}虽然这段代码是正常的加锁解锁,但是有时候我们难免会出现一些低级错误,例如把 忘了写...
分类:
系统相关 时间:
2014-10-08 04:01:04
阅读次数:
379
1.分别模拟insert,update和delete造成阻塞的示例,并对v$lock中的相应的信息进行说明,给 出SQL演示。Insert示例会话1:SQL> select * from t1;ID1234SQL> alter table t1 add primary key(id);表已更改。SQ...
分类:
数据库 时间:
2014-10-08 00:37:54
阅读次数:
445
最近准备为一个产品做一个站内的搜索引擎,是一个java产品。由于原来做过Lucene.net,所以自然而然的就想到了使用Lucene。在复习Lucene的过程中发现了Solr这个和Lucene绑定在一起的Apache的子项目,发现这个搜索服务器正是我们想要的。原来我们做Lucene,会把索引和搜索都...
分类:
其他好文 时间:
2014-10-07 22:27:34
阅读次数:
231
我们不止一次写过这种代码: { mutex_.lock(); //XXX if(....) return; //XXX mutex_.unlock();
} 显然,这段代码中我们忘记了解锁。那么如何防止这种情况,我们采用和智能指针相同的策略,把加锁和解锁的过程封装在一个对象中。 实现“对象生命期”等...
分类:
系统相关 时间:
2014-10-07 21:53:24
阅读次数:
215
前言 一个成熟的大型网站(如淘宝、京东等)的系统架构并不是开始设计就具备完整的高性能、高可用、安全等特性,它总是随着用户量的增加,业务功能的扩展逐渐演变完善的,在这个过程中,开发模式、技术架构、设计思想也发生了很大的变化,就连技术人员也从几个人发展到一个部门甚至一条产品线。所以成熟的系统架构是随业务...
分类:
Web程序 时间:
2014-10-07 20:06:33
阅读次数:
165
lock-free是一种基于原子变量类来构建的非阻塞同步算法。比较并交换(compare-and-swap)我们经常会先检查某项东西,然后对其进行修改,如if(X...) {X=...}。这种行为在多线程下并不是线程安全的。那我们该如何做呢?一种方法是对操作进行加锁,如synchornized(ob...
分类:
其他好文 时间:
2014-10-07 18:37:35
阅读次数:
151
一个项目算是告于段落,其中硬件学到了不少知识,软件调试也取得了很大进展。现在把硬件的一些经验总结一下。 1. 芯片电源接入之前,最好放一个磁珠。 2. 电源打孔时,应该多打几个孔,同时孔不要太小。 3. 重要的芯片或者接插件,布局好之后,右击lock锁定。 4. 主控芯片的电容,最好在其背面。 5....
分类:
其他好文 时间:
2014-10-07 17:35:03
阅读次数:
198
搜集了一些资料,与同学一起进行了简单的測试,总结例如以下。分词工具特点支持语言原理词典及扩展性StandardAnalyzer中文、英文(unicode)中文:单字符切分英文:依据空格切分ChineseAnalyzer中文,不支持中文和英文及数字混合的文本分词按字分词,与StandardAnalyz...
分类:
其他好文 时间:
2014-10-07 13:18:33
阅读次数:
266