如何将一个操作“绑定到数据库事务上”

在开发中,我们常常会遇到(或者需要)把一些操作“绑定到数据库事务上”。也就是说,如果数据库事务成功提交,则执行这个操作;如果数据库事务回滚,则不执行这个操作(或者执行另一个操作)。

开发 

集群环境下定时任务调度问题与方案探讨

从改造工作量、可用性、负载均衡、资源利用等方面,简单介绍了几种集群环境下定时任务调度的方案。

设计 

业务系统中的开与闭——分发模式

这里分享一个我在业务系统设计过程中常用的一个“复合模式”,用作一个在业务系统设计中运用“开闭原则”的例子。

设计 

数据与行为——状态模式与策略模式

我在另一篇博客里声称:做技术的思路是优先“怎么用”、而后再“是什么”。然而这里,我却想讨论一下状态模式与策略模式“是什么”,以及它们之间的区别。

设计 

状态与策略——审批操作的两种方案

审批操作是ERP或OA系统中必不可少的功能之一。这里介绍两种我设计的用于审批操作的方案,并借此就“状态模式”与“策略模式”提出一点自己的理解。

设计 

不做需求复印机——批量操作流程设计

相信每个技术人员都不会甘心做“需求复印机”。 需求复印机,有两种简单的方式。一种是在代码/模块/系统的结构上下功夫,例如前面几篇设计方案(审批、分发等)。另一种则是直接对业务流程开刀,例如这篇文章要举的例子。

设计 

尘归尘,土归土——业务归业务,技术归技术

随着分布式、微服务的火爆,跨系统的服务调用也变得常见起来。这使得我们在线上追查问题的时候,常常要查阅多个系统的日志。

设计 

轮子除了开车,还能摊大饼——地址服务器的一个“另类”用法

地址服务器是软负载的一种实现方式。除了单纯做软负载,它还能做一点其它的事情。

设计 

是银弹吗?业务基线方法论

Fred.Brooks在1987年就提出:没有银弹。没有任何一项技术或方法可以能让软件工程的生产力在十年内提高十倍。 我无意挑战这个理论,只想讨论一个方案,一个可能大幅提高业务系统开发效率的方案。

设计 

重复工作自动化——excel导入方案

这里记录的这个小设计,就是把重复工作自动化处理的一个例子。

设计