software architecture
远有青山
山外青山楼外楼
展开
-
GIS 开源软件大全
3 - F3map:行星地球项目由3map驱动,这是一个自由软件,由Telstra宽带基金会创建并支持,提供客户端与服务器的能力以在线再现虚拟地球。Amein!:其界面介于ArcMap和UMN Mapserver之间.AmeiN!写了一个ArcMap下的扩展,把UMN Mapserver写成了ArcMap的一个组件,同时也编写了它的项目文件,转换了它的许多实例。APR Pa转载 2013-06-11 19:36:36 · 3449 阅读 · 0 评论 -
面向对象分析和设计基本概念
面向对象是基于一种哲学思想,它认为:客观实体和实体之间的联系构成了现实世界的所有问题,而每一个实体都可以抽象为对象。这种思想尽可能地按照人类认识世界的方法和思维方式来分析和解决问题,使人们分析、设计一个系统的方法尽可能接近认识一个系统的方法。 面向对象的基本观点可以概括如。(1)客观世界由对象组成,任何客观实体都是对象,复杂对象可以由简单对象组成。(2)具有相同数据和操作的转载 2014-04-30 09:07:47 · 1069 阅读 · 0 评论 -
软件复用(softwarereuse)
subtopics:软件复用的优越性软件复用的维度基于构件的软件开发构件构件的分类在线构件离线构件构件规约构件实现构件模型分类/描述模型规约/组装模型实现级模型CCMEnterprise JavaBean会话构件(Session Bean)有状态会话Bean无状态会话Bean实体BeanBMPCMP消息驱动转载 2014-04-08 10:59:35 · 3088 阅读 · 0 评论 -
深入探索 Java 热部署
在 Java 开发领域,热部署一直是一个难以解决的问题,目前的 Java 虚拟机只能实现方法体的修改热部署,对于整个类的结构修改,仍然需要重启虚拟机,对类重新加载才能完成更新操作。本文将探索如何在不破坏 Java 虚拟机现有行为的前提下,实现某个单一类的热部署,让系统无需重启就完成某个类的更新。转载 2014-05-27 11:40:22 · 657 阅读 · 0 评论 -
图形数据库 Neo4j 开发实战
Neo4j 是一个高性能的 NoSQL 图形数据库。Neo4j 使用图(graph)相关的概念来描述数据模型,把数据保存为图中的节点以及节点之间的关系。很多应用中数据之间的关系,可以很直接地使用图中节点和关系的概念来建模。对于这样的应用,使用 Neo4j 来存储数据会非常的自然,要优于使用关系数据库。本文对 Neo4j 进行了深入的介绍,并结合具体的实例来进行详细的说明,可以让您对 Neo4j转载 2014-05-27 16:10:23 · 1966 阅读 · 0 评论 -
unix设计十七条原则之一(unix编程艺术笔记)
最近在学习《unix编程艺术》。第一章非常不错,讲了很多Unix的历史,哲学基础,其中最重要的是提到的十七条设计原则。很多原则自己也知道,但是从来没有总结的如此详细深刻。下面的内容大部分来自《unix编程艺术》这本书,少部分是我的一些理解。这是我读书的一个习惯,对于我认为重要的,我会把它打出来,在打字的过程中我会根据深入的思考理解。所以,笔记对我来说是一个思考和记忆的辅助手段。转载 2014-06-03 10:58:46 · 703 阅读 · 0 评论 -
软件架构设计中的同步与异步问题
软件架构设计中的同步与异步问题 BLOG LIOU 内容概要:本文分析了大型程序系统设计中经常需要面对的同步和异步结构问题。列举异步结构模式实现手段,论证异步模式效率远远优越于同步模式,证明在硬件资源理想情况下,对同步模式而言并发量对计算机系统的平均交易处理时间没有影响,对异步模式而言平均交易处理时间会随着并发量的增大而急剧下降,最终也趋向一个恒定值。在实际有限计算机资源情况转载 2014-11-14 16:54:25 · 3493 阅读 · 1 评论 -
大型网站系统架构的演化
一个成熟的大型网站(如淘宝、京东等)的系统架构并不是开始设计就具备完整的高性能、高可用、安全等特性,它总是随着用户量的增加,业务功能的扩展逐渐演变完善的,在这个过程中,开发模式、技术架构、设计思想也发生了很大的变化,就连技术人员也从几个人发展到一个部门甚至一条产品线。所以成熟的系统架构是随业务扩展而完善出来的,并不是一蹴而就;不同业务特征的系统,会有各自的侧重点,例如淘宝,要解决海量的商品信息的搜转载 2015-03-06 11:17:35 · 492 阅读 · 0 评论 -
基于容器的微服务架构剖析
基于容器的微服务架构剖析本文主要讨论了 服务的架构实践、容器技术的应用,以及对微服务底层的技术框架支持。“微服务+”从理念到行动为了便于理解微服务的内涵,七牛云技术总监肖勤先抛出了一个简单的问题:线上服务器看到很多请求日志,有成功有失败,如何统计出成功或者失败的日志数量?对此,采用AWK这样强大的工具,或是采用CUT、SORT这样的小工具都可以解决问题,而二者在思路转载 2015-08-12 17:50:18 · 15830 阅读 · 0 评论 -
能影响未来十年的十项新技术
最近InfoWorld网站公布了可能影响未来十年的十项新技术。虽然每个人的观点会有不同,但是我们相信,这十项新技术足以代表大部分的观点,同时也可以确信在未来几年这十项技术能给我们生活带来翻天覆地的变化。最近InfoWorld网站公布了可能影响未来十年的十项新技术。虽然每个人的观点会有不同,但是我们相信,这十项新技术足以代表大部分的观点,同时也可以确信在未来几年这十项技术转载 2015-11-10 11:06:20 · 2604 阅读 · 0 评论 -
SOA架构
1 SOA架构 SOA是一种粗粒度、松耦合的服务结构,是服务的集合,服务是最核心的抽象手段,业务被划分(组件化)为一系列粗粒度的业务服务和业务流程。服务通过基于标准、精确定义的接口通信,通信可能涉及简单数据传递、两个或更多的在一个活动中协作的服务。由此,SOA是一个其所有功能均被定义成精确定义的、可调用的、独立的服务,且能被有序编排、构建业务流程的应用架构。 SOA通过应用组件转载 2014-03-10 17:29:09 · 5879 阅读 · 0 评论 -
当前的构件标准规范
当前主流构件标准规范包括OMG的CORBA、Sun的J2EE和Microsoft DNA 2000。 1. OMG的CORBA CORBA分布计算技术是OMG组织基于众多开放系统平台厂商提交的分布对象互操作内容的基础上制定的公共对象请求代理体系规范。 CORBA分布计算技术,是由绝大多数分布计算平台厂商所支持和遵循的系统规范技术,具有模型完整、先进,独立于转载 2014-03-10 11:44:20 · 1050 阅读 · 0 评论 -
架构、框架、模式和平台
到底如何区分什么是架构、框架、模式和平台 ?区分什么是架构、框架、模式和平台,一直都感觉这几个词过于抽象和模糊,今天大家来说说到底什么是架构、框架、模式和平台? 收集了的一些来自网上各自的定义和区分如下: 来自 冬眠的蛤蟆 概念: 设计模式 1、设计模式为什么要先说设计模式?因为设计模式在这些概念中是最基本的,而且也比较简单。那么什么是设计模式呢?说的直白点,设转载 2013-06-11 22:43:53 · 1297 阅读 · 0 评论 -
85 Operations Rules to Live By
1) 承载能力优先 ——随后再进行优化 —— 不遵守这条规则必定带来故障停机时间。不要在故障停机时间的压力下进行优化——要先集中精力提高承载能力。2) 以Postgres为例,一定要确保你的每一个网络都能匹配得上你的WAL文件、Slony复制、快照技术以及基于磁盘的DB版本化(快照的衍生品)。3) 不要把问题‘优化’到你的架构之中。为了解决问题而新加进来的一些东西往往后来都会变成运转载 2013-07-31 22:24:11 · 645 阅读 · 0 评论 -
设计模式之工厂模式
一、工厂模式主要是为创建对象提供过渡接口,以便将创建对象的具体过程屏蔽隔离起来,达到提高灵活性的目的。 工厂模式在《Java与模式》中分为三类:1)简单工厂模式(Simple Factory):不利于产生系列产品;2)工厂方法模式(Factory Method):又称为多形性工厂;3)抽象工厂模式(Abstract Factory):又称为工具箱,产生产品族,但转载 2014-03-05 09:28:51 · 558 阅读 · 0 评论 -
软件构件COM+的理解
(作者:潘爱民) 我们从各种媒体对Windows 2000的介绍可以看到,在Windows 2000众多新的功能和特性之中,对于开发人员来说,COM+是最值得关注的一个焦点。在Windows 2000的Beta版本中,我们已经看到了COM+的面貌,也感受到了COM+将带给我们程序设计和开发过程中思路上的变化。本文旨在从技术的角度对COM+作一个基本的介绍,以便开发人员更好地了解COM+转载 2014-03-11 11:43:11 · 1431 阅读 · 0 评论 -
构件技术与中间件
引言 网络计算带领软件产业进入了一个新的时代,商机无限,但同时挑战也无限。以电子商务为代表的技术潮流正将大到企业计算、小到个人数字代理的各种应用,在世界范围内联结起来,软件制造业正面临着一些新的课题,如复杂的分布环境、灵活的应用模式、广泛的包容性等,传统的软件设计思想已远远不够。 在这一背景下,构件技术应运而生,并逐渐炙手可热。不同于OO技术强调对个体的抽象,构件则更推广了转载 2014-03-11 09:45:44 · 2254 阅读 · 0 评论 -
UML类图关系
UML类图关系(泛化 、继承、实现、依赖、关联、聚合、组合)继承、实现、依赖、关联、聚合、组合的联系与区别分别介绍这几种关系:继承指的是一个类(称为子类、子接口)继承另外的一个类(称为父类、父接口)的功能,并可以增加它自己的新功能的能力,继承是类与类或者接口与接口之间最常见的关系;在Java中此类关系通过关键字extends明确标识,在设计时一般没有争议性; 实现转载 2014-03-11 16:19:07 · 625 阅读 · 0 评论 -
UML实践----用例图、顺序图、状态图、类图、包图、协作图
面向对象的问题的处理的关键是建模问题。建模可以把在复杂世界的许多重要的细节给抽象出。许多建模工具封装了UML(也就是Unified Modeling Language™),这篇课程的目的是展示出UML的精彩之处。UML中有九种建模的图标,即:用例图类图对象图顺序图协作图状态图活动图组件图配置图本课程中的某些部分包含了这些图的细节信息的页面链接。而且每个部分都有一个小问题,测试一下你转载 2014-03-11 16:24:28 · 705 阅读 · 0 评论 -
设计模式之单列模式
6.单例模式(Singleton Pattern)前面说提到的五种创建模式,主要解决的问题是如何创建对象,获得产品。而单例模式最要关心的则是对象创建的次数以及何时被创建。 Singleton模式可以是很简单的,它的全部只需要一个类就可以完成(看看这章可怜的UML图)。但是如果在“对象创建的次数以及何时被创建”这两点上较真起来,Singleton模式可以相当的复杂,比头五种模式加起来还复转载 2014-03-06 09:39:32 · 551 阅读 · 0 评论 -
Tomcat 系统架构与设计模式,第 1 部分: 工作原理
Tomcat 系统架构与设计模式,第 1 部分: 工作原理这个分为两个部分的系列文章将研究 Apache Tomcat 的系统架构以及其运用的很多经典设计模式。本文是第 1 部分,将主要从 Tomcat 如何分发请求、如何处理多用户同时请求,还有它的多级容器是如何协调工作的角度来分析 Tomcat 的工作原理,这也是一个 Web 服务器首要解决的关键问题。本转载 2014-03-13 15:14:41 · 604 阅读 · 0 评论 -
Tomcat 系统架构与设计模式,第 2 部分: 设计模式分析
Tomcat 系统架构与设计模式,第 2 部分: 设计模式分析这个分为两个部分的系列文章研究了 Apache Tomcat 服务器的系统架构以及其运用的很多经典设计模式。第 1 部分 分析了 Tomcat 的工作原理,第 2 部分将分析 Tomcat 中运用的许多经典设计模式,如模版模式、工厂模式和单例模式等。通过学习它们的实践运用能给我们以后的软件设计起到一定的借鉴作用。转载 2014-03-13 15:35:10 · 494 阅读 · 0 评论 -
架构设计:系统存储(20)——图片服务器:需求和技术选型(2)
v3-5、其它技术选型说明3-5-1、关于关系型数据库关于持久化存储的数据库技术要注意一点,实际上它并不是图片服务的必要组件。例如,我们在进行设计时可以将图片访问的URL地址直接对应图片文件在服务器上的存储地址,并按照一定的规则将图片文件重命名成一个系统中唯一的文件名,最后再删除Redis和Nginx Proxy Cache中可能存在的历史文件数据。这样就算没有数据库技术,转载 2017-11-24 09:44:52 · 1268 阅读 · 0 评论