1. 数据库表设计

    Q: 如何在开发后期修改表结构对现有程序影响最小 表设计是预留一个无任何业务意义的字段,比如userFiled1,userField2,....方便以后与具体业务字段映射 设计一个特殊的字段存放XML文件,XML文件中存放自定义的结构,方便系统扩充。存取是需要解析XML字符串   通过象Hibernate这种物理表结构和对象逻辑结构的映射。修改发生在物理表结构和hibernate mapping 文中   在java类中,用不可变的字符串定义了表名和字段名。如            public const String CUSTOMERS_TABLE = "Customers";     public const String EMAIL_FIELD     = "Email";     public const String NAME_FIELD      = "Name";     这样修改只发生在少量的地方。 Q:如何提高性能 为特殊的业务需求,比如支付平台的reconciliation和settlement,建一张影子表(比如paymentShadow),冗余其他相关表的字段。通过这种手段减少关联查询提高效率。 不设外键甚至主键,这种方式有点像No SQL的方式,但确实在商业应用系统中碰到过。

    2017/02/12 iteye

  2. session 实现

    我们知道session 实现有好几种机制,比如cookie, url-rewriting, etc.   When cookie is disabled on client side, most of time we can refer to use response.encodeURL or encodeRedirectURL to add a param jsessionid to identify the client and context.

    2017/02/12 iteye

  3. portlet lifecycle

    processAction processEvent render serveResource    

    2017/02/12 iteye

  4. java 常见排序算法

    摘自http://deng5566.iteye.com/blog/678817,仅供自学。      

    2017/02/12 iteye

  5. 高性能数据库设计

    字段冗余   Sharding   水平切分:分库,分表 根据一个标志字段如user id   问题:如何路由?   集群(Cluster),负载均衡(找到集群中的DB)   读写DB分离 Master DB(写),Slave DB(读),一般读写比例是10:1  

    2017/02/12 iteye

  6. 锤子和钉子

    give a child a hammer, everything becomes a nail.

    2017/02/12 iteye

  7. Top-Down and Botton-up

    different perspectives SOA:

    2017/02/12 iteye

  8. Review 方法

    Fagan's Inspection      

    2017/02/12 iteye