zoukankan      html  css  js  c++  java
  • 大型网站技术架构:核心原理与案例分析阅读笔记之六

       这篇简单的聊一下关于架构的理解,我认为架构是一种对软件设计方向的规划,一个好的架构是开发出好软件的一半,也是软件未来发展的基础,没有一个合理的架构,软件的发展也是具有局限性的。简单来说软件架构是对软件中的应用程序,数据存储,以及服务器的集体规划设计,是一种能满足软件当时运行,未来可发展的一种合理方案。当然,在这之中包涵不少设计维护所必需的技术以及理论支持,更为形象的来表达,每一个成功的,大型的,用户量巨大的软件,都是从一个小型的,用户量很小,甚至表面设计简单的小软件逐步更新,优化,拓展而来的。

       而完成并支持这一转变的就是软件设计初期本身的架构,在设计初期满足软件需要的稳定性,运行速度,用户所需求的功能,一定的安全性,少量甚至一台服务器,随着软件的发展,软件功能的拓展,较好的用户体验,用户的数量逐渐增多,软件的性能就需要提高,软件需要更加稳定,并且随着用户的增多,软件不能失去原有的响应速度,或者说需要更快的用户响应速度,提高用户体验来留住用户。因为用户数量的增多,我们也应当适当地提高服务器的数量,来保证软件的正常运行,而初期架构设计的可用性可以保证我们在某一台服务器宕机时不会因此造成巨大损失。同样是因为用户数量的增多,需要快速准确的处理海量的数据,因此架构设计中的伸缩性也是必要的,它不仅保证了网站的高并发性,同时也兼具了海量数据处理的能力。为了网站以后的发展,功能业务的拓展,架构设计中的拓展性也是很有必要的,他使得软件有了更多的发展可能,也使软件有了未来。最后,任何一家大型的网站或者软件都必须具备一定程度的安全性来保障用户数据的安全,维护用户的个人隐私,因为互联网的透明性,软件架构中的安全性保障了软件正常运行时的基本安全,防止外界攻击,或处理基本入侵等。

       因此软件的架构基本来说是一个软件未来发展的基础和保障。

  • 相关阅读:
    Java 并发工具包 java.util.concurrent 用户指南
    Java 序列化Serializable详解(附详细例子)
    Spring之FactoryBean .
    《用chsh选择shell》-linux命令五分钟系列之十二
    《vi中的替换艺术》-linux命令五分钟系列之十一
    0-1背包问题
    Java关键字final、static使用总结
    《作业控制系列》-“linux命令五分钟系列”之十
    《zip命令》-linux命令五分钟系列之九
    《bunzip2命令》-linux命令五分钟系列之八
  • 原文地址:https://www.cnblogs.com/wanghao369/p/6396656.html
Copyright © 2011-2022 走看看