写在前面:不要认为 EXTJS 高版本就是一个界面改良,在项目中,仍然用 N 张页面,在 N 张页面部署 EXTJS .这种方式不用多讲,效率问题大家都看得出来, EXTJS 是一个集成开发工具,注定他的开发包很大,一个 600 多 K 的 JS 文件,打算让它下载多少次呢?应该说, EXTJS 不仅是一个 AJAX 开发框架,也是一个富客户端开发平台, AJAX 是可以部署到多个页面,但不推荐这样做,Extjs能和 FLEX 一样,在一张页面中,完成项目中所有事件. 一.单页面 目前的应用方式…
本文源码:GitHub·点这里 || GitEE·点这里 一.场景案例简介 1.场景描述 分布式事务在业务系统中是十分常见的,最经典的场景就是电商架构中的交易业务,如图: 客户端通过请求订单服务,执行下单操作,实际上从订单服务上又触发了多个服务链请求,基本步骤如下: 客户端请求在订单服务上创建订单: 订单服务调用账户服务扣款: 订单服务调用库存服务执行库存扣减: 订单通过物流服务,转化为物流运单: 这套流程在电商系统中是基本业务,在实际的开发中远比这里描述的复杂. 2.服务时序图 上述1中是业务…
源码地址:GitHub·点这里 || GitEE·点这里 一.Seata简介 1.Seata组件 Seata是一款开源的分布式事务解决方案,致力于提供高性能和简单易用的分布式事务服务.Seata将为用户提供了AT.TCC.SAGA.XA事务模式,为用户打造一站式的分布式解决方案. 2.支持模式 AT 模式 基于支持本地 ACID 事务的关系型数据库. Java应用,通过 JDBC 访问数据库. 一阶段:业务数据和回滚日志记录在同一个本地事务中提交,释放本地锁和连接资源. 二阶段:提交异步化,非常…
select count(*)的思考 原文:MYSQL性能调优与架构设计   举例: 这里我们就拿一个看上去很简单的功能来分析一下. 需求:一个论坛帖子总量的统计 附加要求:实时更新 在很多人看来,这个功能非常容易实现,不就是执行一条SELECT COUNT(*)的Query 就可以得到结果了么?是的,确实只需要如此简单的一个Query 就可以得到结果.但是,如果我们采用不是MyISAM 存储引擎,而是使用的Innodb 的存储引擎,那么大家可以试想一下,如果存放帖子的表中已经有上千万的帖子的时…
原博文出自于: http://blog.fens.me/category/%E6%95%B0%E6%8D%AE%E5%BA%93/page/5/ 感谢! Posted: Feb 7, 2013 Tags: MySQL Comments: 0 Comments [转] select count(*)的思考 select count(*)的思考 原文:MYSQL性能调优与架构设计   举例: 这里我们就拿一个看上去很简单的功能来分析一下. 需求:一个论坛帖子总量的统计 附加要求:实时更新 在很多人看…
1. 架构设计的目的 对程序进行架构设计的原因,归根到底是为了提高生产力.通过设计使程序模块化,做到模块内部的高聚合和模块之间的低耦合.这样做的好处是使得程序在开发的过程中,开发人员只需要专注于一点,提高程序开发的效率,并且更容易进行后续的测试以及定位问题.但设计不能违背目的,对于不同量级的工程,具体架构的实现方式必然是不同的,切忌犯为了设计而设计,为了架构而架构的毛病.举个简单的例子,一个Android App如果只有3个Java文件,那只需要做点模块和层次的划分就可以,引入框架或者架构反而提…
系列文章 实战使用Axure设计App,使用WebStorm开发(1) – 用Axure描述需求  实战使用Axure设计App,使用WebStorm开发(2) – 创建 Ionic 项目   实战使用Axure设计App,使用WebStorm开发(3) – 构建页面架构  实战使用Axure设计App,使用WebStorm开发(4) – 实现页面UI 实战使用Axure设计App,使用WebStorm开发(5) – 实现页面功能 实战使用Axure设计App,使用WebStorm开发(6) –…
1.概述 上篇文章<架构设计:负载均衡层设计方案(4)——LVS原理>(http://blog.csdn.net/yinwenjie/article/details/46845997),我们介绍了LVS的工作模式,和每一种模式的具体工作过程.这篇文章中,我们将介绍单一LVS节点的安装方式.比起上一篇文章,这一片要提到的安装和配置就是非常简单的了,只要您了解原理,实践就是从容的事情. 您可以在您的电脑上使用VMware虚拟机,按照下面介绍的过程一步一步实践.我们将采用两台虚拟机,一台作为LVS节…
本篇紧接着上一篇   基本OOP知识  ,介绍高焕堂老师的第二讲. 架构设计的UML图形思考.本篇最重要的是三个词语:图形.思考.UML. 架构师的作用体现主要在项目开发前期.在整个项目还没有完毕的时候,架构师的心中就要有整个项目的蓝图,总体框架.为了可以将架构师自己的蓝图.思路.框架表达给其它人,就须要借助于图形的魅力.以图形来思考.以图形来表达思考的结果,表达对于产品的架构..规划.设计. 在架构中,要借助自己的思维去思考未来可能的变化.为了方便团队之间的交流.假设使用同样的语言.相似的工具…
介绍 Sitecore的开放式架构和众多API意味着在Sitecore中实施网站可能会在很多方向上发生偏差.架构的一个特别重要的方面涉及页面构建 - 如何构建Sitecore中的网页? Sitecore中的页面是通过内容和表示的组合构建的.如何将这两者结合在一起是一个重要的架构决策,有两个选项和一个明显的答案. 由于Sitecore内容以基于树的结构组织,类似于其他CMS平台,因此新开发人员倾向于选择基于他们可能已经熟悉的架构:基于模板的页面.然而,Sitecore的优势在于其基于组件的页面架构…