前端架构
摘要:回到索引http://www.cnblogs.com/lovecindywang/archive/2012/12/23/2829828.html框架层面:近几年前端发展很快,前端之所以叫前端因为前端是已经可以独立成为一种职业了,js也不再是十年前的玩具了,以前富客户端RIA的应用可能会用flash/flex或是silverlight,现在可以使用js来完成大部分的功能,因此js作为一门前端的支撑语言也不仅仅是进行的简单的编码,越来越多框架性的东西出现了。越来越多的开发模式转变为后端只是吐json的数据源,而前端做所有UI的事情。MVCMVC实现职责分离是很好的,大多数网站在后端都会引入MVC框
阅读全文
http://www.cnblogs.com/angben/archive/2012/12/23/2829795.html
摘要:我的架构经验系列文章 - 后端架构 - 架构层面回到索引http://www.cnblogs.com/lovecindywang/archive/2012/12/23/2829828.html架构层面:日志集中所谓日志集中就是把程序的所有日志和异常信息的记录都汇总到一起,在只有一台服务器的时候我们记录本地文件问题也不是最大,但是在负载均衡环境下再记录本地日志的话就出现问题了。在想查看网站日志的时候到哪台机器去查都不知道,难道有100台机器就100台机器逐一远程连上去看?因此,把这些数据汇总在一起保存对于大型网站系统来说是很必要的,这样我们就可以直接进行查看、搜索,也很明确可以知道是哪台机器的业
阅读全文
ProDinner - ASP.NET MVC Sample (EF4.4, N-Tier, jQuery)
摘要:http://prodinner.codeplex.comProDinner is an ASP.NET MVC sample application, it uses EF4.4 Code First for Data Access, SOLID principles, jQuery and ASP.net MVC Awesome for Web UILive Linkhttp://prodinner.aspnetawesome.comdownload applicationread about the project structure andcode walkthrough:downlo
阅读全文
CodeSharp.EventSourcing框架介绍
摘要:CodeSharp.EventSourcing框架介绍-开篇去年一次组内的技术分享会上,和几个同事讨论了Event Sourcing模式和CQRS(命令与查询分离)架构,当时觉得应该很有价值对这两个东西进行实践。所以在今年年初,我开始设计一个用于实现Event Sourcing模式和CQRS架构的框架。到目前为止框架基本稳定了,所以在园子里分享给大家。如果大家还不清楚什么是Event Sourcing或CQRS,没关系,可以看一下以下两篇文章就大概了解了。http://www.cnblogs.com/netfocus/archive/2012/02/12/2347911.htmlhttp://
阅读全文
定制化产品
摘要:2012 定制化产品探讨(周金根).pdf定制化产品相关的话题在软件产品开发过程中比较普遍,也是很多人关心的一个主题,但深入研究和实施并且对外分享的并不多,今年在中国软件技术大会和软件工程大会中我拿出这个话题与大家分享一下,也希望有更多人能够一起探讨解决之道。 下面第一张图是我在工作中方法层面关注的主要主题,前年在一些大会上与大家分享了敏捷相关的内容,去年分享了企业架构的内容,今年分享的话题主要涉及产品线开发和模型驱动的内容。产品线工程在软件工程是一个常见的词语,实际工作中大家提到的更多是框架、平台;模型驱动也是软件工程提到的方法,实际工作中大家听到的更多是DSL、MDA等,那具体软件产品线和
阅读全文
MDA项目思路小结
摘要:从上学期期末进入模型驱动开发项目小组到现在已经有四个月了,对MDA的开发思想慢慢有了了解,以前总觉得用UML建模什么的都很浮云,而且根本没什么技术含量,在嵌入式领域更是少有用武之地,但是回望一下前段时间所做的工作,发现自己原来的想法还是太幼稚,而且把UML这套技术体系看得也太简单了。虽然现在仍不能说对UML已经有了深入的了解,但是认识的层面比起以前还是有了很大的提高。OMG定义的四层模型体系架构,从上到下依次是元元模型(M3)、元模型(M2)、模型(M1)、实例(M0)层,每一层模型都是其上层模型的实例,如MOF(Meta Object Facility)处于元元模型这一层,UML处于元模型这
阅读全文
MDSF学习
摘要:EMF:Ecore模型 在MDSF:特定领域建模 DSM(Domain Specific)介绍中提到过Ecore是EMF的元元模型,要使用Eclipse来做DSL,则必须先大致了解一下Ecore,本篇将对Ecore进行概要的描述。简单的Ecore元模型子集Ecore本身是一个简单的小的UML子集EClass:领域类,它有名称,一个或多个属性,一个或多个引用EAttribute:领域类的属性,属性有一个名称和类型EReference:在领域类之间建立的关联,有一个名称,一个布尔值标识是否包含,还有一个引用指向的目标类EDataType:属性类型,例如int或者对象类型Ecore模型示例类图对应.
阅读全文
数据库架构的演变
摘要:最近看了很多公司架构的演变的文章,发现其中的基本思路和架构演变都很类似,这里也总结一下数据库架构的演变以及演变背后的思路。单主机最开始网站一般都是由典型的LAMP架构演变而来的,一般都是一台linux主机,一台apache服务器,php执行环境以及mysql服务器,一般情况下,这些都在一台虚拟主机上,简称单主机模式。单主机模式缺点:1 web服务器和mysql服务器公用一台主机,共享硬件资源,可能存在某一方资源征用太大,导致整个应用产生瓶颈2 当业务增长之后,没有办法做到横向扩展。3 容错性太差,一旦主机存在问题,整个应用不可用独立主机随着业务的发展,可以把mysql服务器和web服务器主机分
阅读全文
使用VS2012 Visualization & Modeling SDK为Apworks添加领域模型设计器
摘要:随着几个版本的更新,Apworks框架也日趋成熟。为了能够让开发人员更加方便地使用该框架进行企业级应用程序的开发,在维护框架本身的同时,我也致力于与其配套的工具软件和Visual Studio插件的研究和开发。在Apworks的最新版本中,已经添加了分别面向NHibernate和Entity Framework的WCF服务开发项目模板,但这个模板还很不完善,扩展性也不好(比如框架本身还支持MongoDB的实现,但开发模板却没有这个选项),因此我也会在今后进一步完善,并发布在下个版本的Apworks工具集当中。最近实践了一下Visual Studio 2012 Visualization &am
阅读全文
深度剖析Byteart Retail案例:前言
摘要:背景Byteart Retail是一个面向领域驱动的.NET企业级应用架构设计案例,到目前为止已经发布了三个版本。有关这三个版本的详细介绍,请参考以下几个链接:V1:《EntityFramework之领域驱动设计实践【后续篇】:基于EF 4.3.1 Code First的领域驱动设计实践案例》V2:《Byteart Retail V2 - 基于Entity Framework Code First的领域驱动设计实践案例》V3:《Byteart Retail V3 - 全新的面向.NET与领域驱动设计的企业应用实践案例》为了向读者朋友详细介绍Byteart Retail项目,我打算写一个系列专题
阅读全文
Portal-Basic Java Web 应用开发框架:应用篇(八) —— Freemarker 整合
摘要:Portal-Basic Web应用开发框架(简称Portal-Basic或PB)是一套功能完备的超轻量级Web应用开发框架,内置MVC Web基础架构,支持可扩展的数据访问接口(已内置Hibernate、MyBatis和JDBC支持),集成Action拦截、Form Bean / DAO Bean装配、国际化、文件上传下载、页面静态化和缓存等基础Web应用组件,提供纯Jsp/Servlet API的使用接口,非常容易学习和使用。 Portal-Basic 源码、示例及文档资源:请访问 google code 项目 ^_*Portal-Basic 主要特点:1)功能完备:内置MVC基础架构、.
阅读全文
Portal-Basic Java Web 应用开发框架 v2.6.1(源码、示例及文档)
摘要:Portal-Basic Java Web 应用开发框架 v2.6.1(源码、示例及文档)Portal-Basic Web应用开发框架(简称Portal-Basic或PB)是一套功能完备的超轻量级Web应用开发框架,内置MVC Web基础架构,支持可扩展的数据访问接口(已内置Hibernate、MyBatis和JDBC支持),集成Action拦截、Form Bean / DAO Bean装配、国际化、文件上传下载、页面静态化和缓存等基础Web应用组件,提供纯Jsp/Servlet API的使用接口,非常容易学习和使用。 Portal-Basic 源码、示例及文档资源:请访问 google c.
阅读全文
Byteart Retail V3 - 全新的面向.NET与领域驱动设计的企业应用实践案例
摘要:Byteart Retail V3 - 全新的面向.NET与领域驱动设计的企业应用实践案例经过近一个多月的努力,我使用自己的业余时间在V2的基础上对Byteart Retail案例重新打造,使得V3以一种全新的面貌出现在关注.NET企业级架构和领域驱动设计的读者朋友面前。与前两个版本相比,V3无论在界面上,还是在业务方面,甚至是技术方面都有了很大的进步。虽然系统完善了不少,但毕竟我没办法将全部时间精力都投入在这一开源项目上,所以V3肯定还存在不少缺陷,因此希望朋友们能够谅解,如果遇到问题,可以自己试着研究并动手解决,我想这样会对自己有很大的帮助。如果实在无法解决,或者有好的想法和建议,也欢迎在
阅读全文
CEP(Complex Event Processing)
摘要:Table of Contents1 从事件驱动编程(Event-driven Programming)开始2 事件驱动业务(Event-driven Business)3 业务事件处理的几个层次4 CEP:鱼与熊掌可以兼得4.1 处理数据流4.2 处理复杂性4.3 CEP的架构5 小结1从事件驱动编程(Event-driven Programming)开始如果你写过GUI程序,对事件处理一定不陌生。事实上,事件驱动编程已经成为一种设计模式。大多数的GUI库都会采用这一模式。简单的说,事件驱动模式包括三个参与者:事件产生者,事件分发器和事件处理器。事件产生者(Events Generator)
阅读全文
基础架构篇
摘要:起因大概花了一个月不到的时间,看完了这本400页不到的书《构建高性能web站点》,不得不说这是我第一次真正意义上完全看完一本书,尽管曾经看过许多技术类的书。其中一个原因,就是大部分的技术类书籍偏向枯燥,即使是本着某种虔诚的目的和愿望去阅读,仍然很容易中途放弃。但是这本书却不同,它十分能吸引我的阅读愿望,几乎在所有的环节上能够引起我的共鸣思考,于是便快速的阅读了一遍此书。作者主要以典型的LAMP为例子,我几乎没有接触过这方面,但是相信思想是一致的,学思想打基础才是关键。因此,本文是以概要性的总结为主。概览图下面这张图我花了比较长的时间绘制,提炼了书中关于基础架构设计方面的部分,希望能把它们浓缩在
阅读全文
系统架构设计师
摘要:随笔- 164 文章- 0 评论- 494《架构师》反思:软件架构设计最近在看《软件架构师教程》,今天就第五章《软件架构设计》总结一下,其中还有自己所联想到的。主要从以下几个方面来描述:软件架构ABSD架构模式DSSA架构评估软件架构架构的定义,在业界,目前主要分为两类:结构派 和 策略派。结构派认为架构是指软件中各构件的组织结构以及各构件之前的相互关系。策略派认为软件的架构设计是要为软件的每个重要的决择进行权衡,并作出最终决定。架构,作为系统中最重要的组成部分,对整个系统有着重要的作用:对于软件开发而言,首先,架构设计能使系统各方面质量达到预期的目标;其次,它能全过程指导开发、测试,并有效地
阅读全文
为什么使用框架
摘要:这是一篇翻译文章,原文说明了框架在开发过程中给使用带来的懒惰,不思维的弊病。文章来源:http://blog.8thlight.com/myles-megyesi/2012/09/12/why-frameworks.html===========正文开始我们是由于效率和易用性的考虑才产生框架。框架能节省开发时间。框架强制使用公共的约定,因此它能有效地解决一些共有的问题,比如页面渲染,assert判断,安全或者应用配置等。这些共有的问题有个共通的特性是会在每个web应用上都用到。框架是非常好的,它能让决定更连贯。框架能避免我们写一大堆自定义模块来实现这些性能,我们所需要做的就是将这些共用模块放在
阅读全文
软件架构书籍
摘要:1.软件架构设计作者: 温昱内容简介:本书紧紧围绕“软件架构设计”这一主题,立足实践解析了软件架构的概念、阐述了切实可行的软件架构设计方法、提供了可操作性极强的完整的架构设计过程。另外,本书从思维方式的突破、面向对象设计、UML建模、过程与管理等关键过渡环节,为广大程序员的成长提供了切中肯綮的指导。本书可作为计算机软件专业本科生、研究生和软件工程硕士的软件架构设计教材,也可作为软件开发高级培训、软件开发管理培训的培训教材,更是第一线高级开发人员和开发管理人员的必备参考书。作译者介绍温昱,资深咨询顾问,CSAI特聘高级顾问,软件架构专家,软件架构思想的传播者和积极推动者。十年系统规划、架构设计和
阅读全文
SubSnoic 框架入门到提高(3)---全程记录
摘要:时隔上篇的2已经好久了,好多个人原因导致自己好久没写了,抱歉还是接着上一篇写吧首先我们在上次的那个SubSonicTestDB数据库上执行下面Sql,给学生表添加一个入学日期列altertableStudentaddEnterSchoolDatedatetimedefaultgetdate()额外技巧: 教大家一个快速输入时间的方法,开始这样,我用搜狗输入法例如,在输入中 ,输入sj得到然后按3,就可以输入当前时间了,如此添加一些测试数据。开始:3.1时间段查询(BETWEEN_AND 方法)IDataReaderdr=newQuery(Tables.Student).BETWEEN_AND(
阅读全文
biztalk 2010 架构
摘要:架构架构描述在biztalk和不同系统之间传递的消息的结构。当然,这种也被称为协定的架构必不可少的,因为没有协定传递的消息就不能进行验证,这将会导致一个不一致的、无法预测的系统。如果biztalk无法确定输入的有效性,那么他也无法保证输出的有效性。很明显这不是我们所期望的。当双方协商确定了架构以后,你就可以轻松的解决失败消息和确定发送者是否发送了无效的消息或者接受者拒绝了一个有效的消息。同时,一个详细的、准确的协定允许你拒绝无效的传入消息,让开发者可以确定biztalk解决方案的所有其他部分的输入的有效性。基于架构,biztalk会产生一个消息类型。这个消息类型在订阅中使用,它对Message
阅读全文