Trace 系统
开发过稍微大一点的soa服务系统的程序员都听说过trace系统(但真正从零开始设计的人,我个人认为很少)。为什么需要trace呢?原因是调用soa服务的调用链路太复杂(什么是调用链路,下面解释),trace的目的是为了定位系统的调用过程的一切一切。
理论依据
Google 的 Dapper: a Large-Scale Distributed Systems Trac...
Jersey
如果没有一个好的工具包,开发RESTful Web服务可以无缝地支持在各种表示媒体类型中公开您的数据,并抽象出客户端 - 服务器通信的低级细节并非易事。
为了简化RESTful Web服务及其Java客户端的开发,设计了标准的可移植JAX-RS API。
Jersey RESTful Web Services框架是开源的,生产质量的框架,用于开发Java中的RESTful...
笛卡尔积
实际问题
查询 A 表,关联 B 表。但是 B 表的记录可能存在多条。
原始
SELECT count(a.ID)
FROM A a
LEFT JOIN B b
ON a.order_no=b.order_no
WHERE ....
GROUP BY ...
Having...
修正
可以将 B 查询关联中用到的数据做一个子查询。
可以如下处理:
SELECT...
mysql 日志
MySQL 里有两个日志,即:重做日志(redo log)和归档日志(binlog)。
其中,binlog 可以给备库使用,也可以保存起来用于恢复数据库历史数据。它是实现在 server 层的,所有引擎可以共用。redo log 是 InnoDB 特有的日志,用来支持 crash-safe 能力。
你一定听过 MySQL 事务的两阶段提交,指的就是在事务提交的时候,分...