图灵学院 java架构学习-代码架构与部署拓扑架构图详解
架构可以细分为业务架构、应用架构、技术架构,代码架构,部署架构,.
业务架构是策略,应用程序架构是策略,技术架构是设备。其中,应用程序体系结构将过去与将来联系在一起,一方面,它承担着业务体系结构的实现,另一方面影响了技术的选择。
熟悉业务,形成业务架构,在业务架构的基础上建立相应的应用程序架构,最后实现技术架构。
如何为当前需求选择合适的应用程序体系结构,如何面向未来并确保体系结构的平稳过渡,这是软件开发人员(尤其是架构师)需要深入思考的问题。
上篇文章我们了解了业务架构和应用架构。这篇文章,我们来了解一下代码架构和技术架构等。
代码架构主要定义:
一、代码单元:
1、配置设计
2、框架、类库。
二、代码单元组织:
1、编码规范。
2、项目模块划分
3、顶层文件结构设计,比如mvc设计。
4、依赖关系
技术架构,也可以叫系统架构
技术架构:确定组成应用系统的实际运行组件(lvs,nginx,tomcat,php-fpm等),这些运行组件之间的关系,以及部署到硬件的策略。
技术架构主要考虑系统的非功能性特征,对系统的高可用、高性能、扩展、安全、伸缩性、简洁等做系统级的把握。
系统架构的设计要求架构师具备软件和硬件的功能和性能的过硬知识,这也是架构设计工作中最为困难的工作。
部署拓扑架构图(实际物理架构图):
拓扑架构,包括架构部署了几个节点,节点之间的关系,服务器的高可用,网路接口和协议等,决定了应用如何运行,运行的性能,可维护性,可扩展性,是所有架构的基础。这个图主要是运维工程师主要关注的对象。
如果你想了解更多关于java架构师的专业知识,可以一起交流:11604这里面都是同行05674,有资源分享包括但不限于(分布式架构、高可扩展、高性能、高并 发、Jvm性能调优、Spring,MyBatis,Nginx源码分析,Redis,ActiveMQ、、Mycat、Netty、Kafka、Mysql 、Zookeeper、Tomcat、Docker、Dubbo、Nginx)。欢迎一到五年的工程师加入,合理利用自己每一分每一秒的时间来学习提升自己,不要再用"没有时间“来掩饰自己思想上的懒惰!趁年轻,使劲拼,给未来的自己一个交代!