`
文章列表
(转自:http://timyang.net/misc/productivity-availability/) 在互联网系统中,开发效率与系统稳定性与产品成败非常相关。开发效率在一定程度反映了团队的执行力,快速开发能力带来了产品的竞争优势。系统稳定性 (包括安全及性能等)则是产品的后防线,稍有失误则会给产品带来很大伤害。因此开发效率与系统稳定性是衡量互联网系统开发成熟度最重要的两个指标。   在软件开发周期不同阶段,这两者如何控制?   在需求阶段,对开发效率的影响常见的是沟通理解偏差带来的技术风险,之外最常见的还有需求变更的风险。后者大多是来自市场环境的变化作出调整,技术主管 ...
(转自:http://timyang.net/management/planning/) 技术主管新年想得最多的一件事必定是如何比上一年做得更好。宏大的目标设定每个团队都会做,谈几个不引人注意的小问题。 1、主动与被动 见过一些技术团队将计划定义为“按时完成 ...

设计原则

面向对象的S.O.L.I.D 原则 一般来说这是面向对象的五大设计原则,但是,我觉得这些原则可适用于所有的软件开发。 Single Responsibility Principle (SRP) – 职责单一原则 关于单一职责原则,其核心的思想是:一个类,只做一件事,并把这件事做好,其只有一个引起它变化的原因。单一职 责原则可以看作是低耦合、高内聚在面向对象原则上的引申,将职责定义为引起变化的原因,以提高内聚性来减少引起变化的原因。职责过多,可能引起它变化的原 因就越多,这将导致职责依赖,相互之间就产生影响,从而极大的损伤其内聚性和耦合度。单一职责,通常意味着单一的功能,因此不要为一个模块 ...

线程的概念

说法一:进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位. 线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位.线程 ...

Eclipse快捷键

Ctrl+1 快速修复(最经典的快捷键,就不用多说了) Ctrl+D: 删除当前行  Ctrl+Alt+↓ 复制当前行到下一行(复制增加) Ctrl+Alt+↑ 复制当前行到上一行(复制增加) Alt+↓ 当前行和下面一行交互位置(特别实用,可以省去先剪切,再粘贴了) Alt+↑ 当前行和上面一行交互位置(同上) Alt+← 前一个编辑的页面 Alt+→ 下一个编辑的页面(当然是针对上面那条来说了) Alt+Enter 显示当前选择资源(工程,or 文件 or文件)的属性 Shift+Enter 在当前行的下一行插入空行(这时鼠标可以在当前行的任一位置,不一定是最后) Shi ...
Nginx与Nginx-GridFS的安装与配置
本主要描述MongoDB解决邮件代收发的存储方案架构设计,希望对有需要的朋友有帮助。
长连接与短连接 所谓长连接,指在一个TCP连接上可以连续发送多个数据包,在TCP连接保持期间,如果没有数据包发送,需要双方发检测包以维持此连接,一般需要自己做在线维持。 短连接是指通信双方有数据交互时,就建立 ...
Doug Lea的util.concurrent包除了包含许多其他有用的并发构造块之外,还包含了一些主要集合类型List和Map的高性能的、线程安全的实现。Brian Goetz向您展示了用ConcurrentHashMap替换Hashtable或synchronizedMap,将有多少并发程序获益。 在Java类库中出现的第一个关联的集合类是Hashtable,它是JDK 1.0的一部分。Hashtable提供了一种易于使用的、线程安全的、关联的map功能,这当然也是方便的。然而,线程安全性是凭代价换来的——Hashtable的所有方法都是同步的。 此时,无竞争的同步会导致可观的性能代 ...

ESB

    博客分类:
  • SOA
 
ESB的类型     ESB最终以两种截然不同的形态存在于实际项目中:    一种是纯粹的SOA交互基础中间件,是系统间松耦合地互操作的基础设施。    一种是ESB风格的应用,联合多个系统提供组合服务,例如电信的ISAG能力网关就 ...
作者:江南白衣,原文出处: http://blog.csdn.net/calvinxiu/archive/2007/02/18/1511545.aspx,转载请保留。 引子:    "这个项目的架构是什么?"   对方爽快的回答:"Spring+Struts+Hibernate。"   嗯,这位很可能不是架构师...... 一、核心竞争力 架构设计的理论、模式与技术    架构师们从试验与挫折中获得架构设计的技能,但其中大量的原理、模式和技巧,都经历了一个重复发现的过程。    其实,各路神仙在这个领域虽则没有捣鼓出大热的畅销书来,但前篇的架构师书单 ...
 先看ArrayList源码中数组复制的代码:    其实ArrayList 就是一个数组的形式存放数据的. 没有高深的地方.他的性能在于他的索引能力, 正因为他是数组形式,所以索引元素的时候他表现得非 ...
来自:http://www.blogjava.net/javacap/archive/2007/12/13/167364.html 为了便于管理,先引入个基础类: package algorithms; /** * @author yovn * */ public abstract class Sorter<E extends Comparable<E>> { public abstract void sort(E[] array,int from ,int len); public final void s ...
转载各种数组排序方法总结.地址:http://www.iteye.com/topic/237517   import java.lang.Math; import java.util.Random; /** * 排序 * */ public class OrderTest { public static void main(String args[]) { OrderTest.ExecOrder(2); } /** * 交换值,交换数组的两个值 * @param array * @param i * @param j ...
  纯Java实现的多路归并快速排序算法,占用内存极少,速度很快,能处理上亿条的海量数据,无任何依赖. [代码] 纯Java实现的多路归并快速排序算法 package wjw.PreTrans; import java.io.*; import java.util.*; import org.apache.commons.io.*; public class MergeSort { private static FastQSortAlgorithm<String> QQ = new FastQSortAlgorithm<String ...
Global site tag (gtag.js) - Google Analytics