技术架构职责和应该注意哪些
- 商业价值
产品在市场中的定位,同类型的产品分析,分析自有系统的优劣势,在市场中的竞争的优势在哪,预期能达到什么市场的中的什么价值,
- 满足需求
最基本的要求就是满足业务需求。系统就是为了实现业务目的
- 技术架构
合适技术选型、技术规范、开发规范、文档规范、测试规范、接口边界、信息流等
- 团队管理
人员结构、系统进度等
- 系统质量
为系统设计高质量的代码,例如采用代码规范、代码审查、自动化测试等方式,提高代码质量和可维护性。
- 拓展性
系统会不断扩展。架构在设计的时候,就应该考虑到系统的扩展性。
当系统要增加一个新的系统模块时,是否可以在不改动或尽量少改动的情况下完成?这就是在考验系统架构的扩展性。模块之间应该是独立的,完整的,低耦合的。模块和模块之间的交互应该是接口化的,标准化的
- 伸缩性
架构设计的时候,要考虑其伸缩性。每个节点都可以进行扩展或缩减。注意,这里说的是节点可以进行单独扩展,而不是整体复制。这是因为,当系统压力增加时,往往并不是所有服务的压力都会增加,而是会定位到某几个服务上,这时候,如果整体复制,那就会造成没有必要的资源浪费,即增加了成本,又没有达到充分的利用
- 安全性
实施身份验证和授权机制,确保只有授权用户能够访问敏感信息。
对输入数据进行有效的验证和过滤,以防止SQL注入、跨站脚本攻击等安全漏洞。
定期进行安全审计和漏洞扫描,及时修复发现的安全问题。
使用加密技术来保护数据的传输和存储。
日志监控等
- 可用/稳定性
可用性,指的是可以满足用户的正常使用。注意,这里说的是正常使用。一个交互的完成耗时一分多钟,这就不算正常了
一个架构,最基本的要求之一时,没有单点。即至少要保证,某时间段内,服务器组中任何一个机器单独宕机时,不会影响服务的正常使用。
- 性能
性能是一个网站的基本参数,有一系列指标可以衡量,如响应时间,TPS等。其中,最直观的,也是最应该满足的,就是响应时间。
响应时间(RT):响应时间批系统对请求作出响应的时间。更直接的场景是,用户在浏览器上访问某个链接或点击某个按钮,到获取到想要的结果的时间。以打开某个页面为例,时间分别是100ms,1s,3s,假设你现在就是这个访问者,想象一下你内心的小火苗。所以,不要让用户等太久。页面打开,100ms以内,交互操作,1s以内。题外话,通过一些UI设计可以缓解用户在等待时的厌倦感。比如,添加Loading动画,更长的交互可以添加进度条,异步进行等。
外传
原创不易,如若本文能够帮助到您的同学
支持我:关注我+点赞+收藏⭐️
留言:探讨问题,看到立马回复
格言:己所不欲勿施于人 扬帆起航、游历人生、永不言弃!