`
luozhonghua2014
  • 浏览: 62482 次
文章分类
社区版块
存档分类
最新评论

互联网大型应用软件架构设想与推荐

 
阅读更多

见过很多成长中的企业,随着业务的扩大,数据流的增加,自家的软件越来越受到成长性的颈瓶,于是乎高薪招来大牛,然后就急急忙忙的乱设计架构做试验,最后搞的头痛医头,脚痛医脚的局面。

这样的企业国内太多,多的我都不好意思说了。

无论什么软件受到成长性的颈瓶,除了历史架构原因,没有别的因素了。

目前解决数据流颈瓶的技术方案有很多种,我在这里仅仅做一个设想,因为不想为那种所谓的成熟方案所吸引。

在我看来,最大的数据流软件就是google了。

据说,google为了解决此问题,采用的硬件模块化,数据内存化(含虚拟内存技术),多进程多线程化,服务器集群化,电力集群自动化等等系列的智能处理。

我想,如果你的软件有一天像google那么成功,那肯定会有类似的处理办法。

我的设想是,如果你的软件在未来的五年业务增长能承受百万级并发就可以的化,那么你要做的就不是百万级并发的事,你做的事未来20年的业务增长的可控空间。

这是一个什么样的架构设想呢(作为技术与业务并进的科技公司而言)?
首先要考虑的是,虚拟技术,集群技术,分布式技术,其实这些代价比起购买昂贵的服务器和高速带宽强很多。

虚拟技术其实就是将物理资源转变为逻辑上可以管理的资源,以打破物理结构之间的壁垒,想像下,任何pc都可以将计算机资源用到极致,这是一个什么概念。

集群技术就是将虚拟技术和物理机器用到极致并突破大数据流带来的任意高并发增长,并做好网络和数据的灾备。

分布式技术就是突破服务器资源和pc端资源的限制,同样是解决性能问题。

目前这些技术已很成熟,现在大型企业几乎都在用或尝试这些技术解决方案。

其次,我们要考虑是网络传输和计算机语言本身的问题。

尽管目前带宽已很大提高,但对于一个长期发展的企业和软件来说,这是不得不考虑的事情,显然,移动端还是pc很多前端技术有了很成熟的方案,比如开源框架jquery及类jquery的数不胜数;这些框架在一定程度上解决了网络传输响应问题,其二我们要考虑缓存机制,像这里的开源框架也是数不胜数,如ehcache及类ehcache

计算机语言的选择也是个问题,现在全球都在流行使用java,的确java是为网络而生的,有着天然的优势;但为了长远打算,除了应用业务层外使用java, 底层或中间件或应用层最好还是php+java+c+erlang这种组合方式进行,这是最有效的性能和速度及安全上的解决方案。

服务器应用容器,有很多选择,推荐使用ngnix或was

服务器操作系统自然不用说,linux!

这篇文章纯属经验概述篇,今后我将陆续的推出针对性的解决方案文章。

深圳-linux内核- 罗 2014/0711






分享到:
评论

相关推荐

    信息化条件下实施大型审计项目工作模式.docx

    这一模式的架构设想包括以下几个方面: 1. **资源与信息共享**:通过网络平台,实现审计人员和资源在不同区域的共享,提高审计效率。 2. **业务协同**:审计人员可以实时交流、共同处理数据,实现业务的同步进行。 3...

    探讨计算机软件开发的JAVA 编程语言应用.doc,原文+译文。

    为了解决这些问题,项目团队首先关注于语言的发展,设想一个能满足嵌入式应用需求的简单硬件平台架构,并制定了相应的规范,定义了该硬件平台的二进制机器指令系统(后来成为“字节码”指令系统)。这样,一旦语言...

    Oracle云计算探讨.pptx

    云计算的概念源自于20世纪末对计算资源的抽象化和网络化的设想,最初由Kevin Marks在Google提出,强调互联网的抽象化和复杂性的屏蔽。随后,随着Amazon CEO Jeff Bezos的解释,云计算被视为服务器、应用、数据和基础...

    java基础教程.pdf

    Java编程语言是一种非常流行的编程语言,自1995年诞生以来,它就以其面向对象、与平台无关、安全稳定和多线程等特点,在软件设计领域占据重要地位。Java语言特别适合于Internet应用开发,并且具有“一次编写,处处...

    Cloud Computing and Grid Computing 360-Degree Compared

    - **云计算**:是一种基于互联网的服务模型,提供可伸缩的计算资源(包括硬件、软件、存储和服务)。通常采用虚拟化技术实现资源共享。 - **网格计算**:是一种分布式的计算模型,强调资源的共享和协作,特别是在...

    基于java的B2C电子商务系统系统毕业设计与实现(项目报告+系统+开题报告+文献综述+答辩PPT+外文文献).zip

    【标题】基于Java的B2C电子商务系统是一个典型的互联网应用开发案例,主要涵盖了软件工程的全生命周期,包括需求分析、系统设计、编码实现、测试以及最终的系统展示。该系统设计与实现涉及到的技术栈主要围绕Java...

    1云计算的发展史.doc

    1962年,有人提出了"星际计算机网络"的设想,这与后来互联网的出现和发展有着密切关系。1965年,信息公用事业的构想被提出,这成为云计算商业模式的早期雏形。 1984年,Sun公司的John Gage提出"网络就是计算机"的...

    数据库新技术风向标:Hadoop

    其他一些知名的商业软件供应商,如Greenplum、Informatica、Teradata(Aster Data)、Pentaho和Talend等,也都提供了与Hadoop和MapReduce集成的产品或服务,进一步推动了Hadoop生态系统的繁荣发展。 #### 结论 综...

    系统集成项目管理工程师教程

    - **设计、测试与维护**: 设计软件架构,进行单元测试、集成测试等,以及后期的维护工作。 - **质量保证及质量评价**: 确保软件产品的质量和可靠性。 - **软件开发环境**: 提供支持软件开发的各种工具和设施。 -...

    基于SIP及WebSocket的VoIP电话呼叫技术.docx

    3. **实施案例**:虽然文中没有详细阐述具体的实施案例,但可以设想在各种规模的企业中,从中小企业到大型跨国公司,都可以有效利用这种基于SIP及WebSocket的VoIP电话呼叫技术来提升客户服务质量和运营效率。...

    云计算数据安全风险及防范策略.pdf

    云计算基于IT技术和互联网技术的结合,具备大规模的计算和存储能力,是网格计算、分布式计算、效用计算、虚拟化技术和并行计算等传统计算技术与网络技术融合的产物。 云计算技术包含的关键技术主要涉及到存储、数据...

    特种设备信息化管理系统.docx

    综合来看,特种设备信息化管理系统的目标是全面提升特种设备的安全管理水平,通过对组织架构、规章制度、人员培训、应急预案的全面强化,以及通过信息技术的深入应用,实现对特种设备全生命周期的有效管理。...

    2015Vision:2015年愿景代码

    【标题】"2015Vision:2015年愿景代码" 提示我们这是一个与2015年相关的项目,可能是一个软件开发或者技术研究的成果,它以代码的形式表达了当年对未来技术发展的设想或目标。这个项目的名字可能是对那个时期IT行业的...

Global site tag (gtag.js) - Google Analytics