蓝盟IT外包,建筑设计的五个核心要素是什么?

发布者:上海IT外包 来源:www.linemore.com


  首先,表现性能是核心元素之一,或者为什么我的架构?只有免费的系统才行。因此,性能优化是许多小企业无法销售的障碍。让我们说,当然,有很多方法可以优化您网站的性能:
  (1)优化网络前端性能:
  优化浏览器访问(浏览器缓存,页面压缩传输,合理的设计页面,减少cookie传输)
  减少http请求避免创建太多的通信链接。尽可能地组合js,css和图像文件。避免太多请求。同时,系统的后端请求也可以合理地设计,以避免过多的交互。
  使用浏览器的缓存。 http标头设置文件名Cache-Control和Expires.js,例如,带有时间戳。更新后更新时间戳;否则,缓存;尽量避免同时更新大量静态资源。
  压缩静态资源。
  CSS位于页面顶部,js位于底部。提前进行css渲染。同时,它可以防止由js引起的页面阻塞。但你需要逐个案例。例如,如果页面的太阳节点需要依赖于生成js,则可以相应地改变文件的位置。
  减少cookie的传输。同时,静态资源具有独立的域名,并且在发送静态资源请求时不会发送cookie。这降低了传输成本。 Cookies可以通过document.cookie获得。
  2. CDN加速
  缓存,文件,CSS和脚本的图像。但CDN对PC的加速效果要好于移动端。经过调查,发现最后一英里的延迟越大,CDN的相对有效性就越差(参见文章为什么CDN会加速“不”对移动客户端的影响)。
  反向代理
  它可以提供七层负载均衡(均衡策略的http请求),可以提供静态资源缓存,请求转发和网络攻击防范。最受欢迎的是nginx。
  (2)优化应用服务器性能:
  如果请求的静态接口没有阻塞,但动态数据仍然是卡,则表示MySQL处理的请求太多,可以使用服务器的本地缓存和分布式缓存,或者可以通过异步操作加速响应,在高并发请求的情况下。您可以将群集中的多个应用程序服务器组合用于外部服务,从而提高整体处理能力并提高性能,如下所示:
  1.分布式缓存(网站性能优化的第一定律:优先使用缓存优化性能)
  通常,存储在高速缓存中的数据的读/写比率大于2: 1,并且它必须是热数据。如果使用缓存,则应考虑数据的短期不一致性,或者如果实时更新缓存,则应考虑性能和资源开销。
  如果考虑缓存雪崩,则直接在数据库中的大量请求可能产生大量服务。因此,可以在高速缓存中实现聚类,以避免由于丢失太多数据而导致的服务压力的突然增加。
  考虑用于接入点数据的高速缓存的加热负载。例如,在高峰期之前,接入点数据预先存储在高速缓存中。通过这种方式,提高了服务的最大性能。
  为了避免恶意攻击,查询中不存在的数据总是使缓存内存无法频繁访问和访问数据库。也可以定期缓存和清理不存在的数据。同时,还有识别和阻止恶意请求的机制。
  分布式缓存必须分散和集中管理。通过相互通信和不同实例之间的同构,确保可扩展性并降低系统复杂性。
  2.异步(以后可以做的任何事情都应该在以后完成,感觉像是一个懒惰的负担)
  峰值修整的目的是通过分布式消息队列实现的。通过业务匹配技术解决问题。例如,12306的尾巴。
  小组
  集群的采用也是服务虚拟化的体现。在提供具有更高性能和更高可用性的服务的同时避免特定问题。
  4.代码优化。
  在多线程中,如果是密集计算,则线程数不得超过CPU核心数。如果正在处理IO,则线程数=[任务执行时间/(任务执行时间 -  IO超时)] *计算CPU核心数。此外,我们必须将对象设计为无状态对象,使用本地对象并正确地细化阻塞。
  重用资源。例如,使用单例模式,例如使用一组连接。
  合理设置JVM参数以避免不合理的完整Gc。
  5.优化存储性能。
  使用B +树实现的关系数据库索引。许多NoSQL数据库用于存储LSM树。 LSM在内存分裂中保留最新的验证数据,直到内存无法归因,继续与LSM磁盘下的树合并。对于写操作更是如此,读操作是查询最近写的数据场景,其性能远大于b + tree; HDFS使用MapReduce绑定进行海量数据存储和分析。同时访问和冗余,可以自动执行高可靠性。它相当于实现RAID功能。
  (3)数据库层的优化:
  数据库层是最易受攻击的层,应用程序设计,通常,当需要请求数据库层上游的拦截仅支持“容量内”的访问请求时,什么通过服务层进入队列和缓冲区,使更低级别的数据库安静。但是,如果请求增加,仍有大量查询到MySQL的压力,这个时候找到解决MySQL瓶颈的方法,这个时候可以使用索引,缓存,性能SQL优化工具,NoSQL数据库也可用于优化数据模型,存储结构。有关详细信息,请参阅我的帖子可能关注[主题] MySQL优化,共有12个,已经完成。(4)指标来衡量网站的性能(响应时间重要,TPS,系统性能计数器等,通过这些指标,以确定系统的设计是否符合目标)
  响应时间
  并发号码如果目前没有相应的准确监控,则可能对不同业务模型的并发目标数量有不同的估计。当我们的系统,使最大竞争的估计,有计算每秒* 3上座率的平均数粗略的方法,但是我们还需要具体情况。
  性能最常见的是QPS(每秒查询数),HPS(每秒http请求数)和TPS(每秒事务数)。
  表现计数器包括系统负载,线程数,CPU,内存使用情况等。你可以使用top,free,cat/proc/cpuinfo和其他命令来查看。系统负载定义为CPU当前执行的子进程数/等待CPU执行的线程总数。当它的值与逻辑CPU的数量相同时,它是最佳状态,这意味着所有资源都被使用到最大值。但是有些人认为当负载是逻辑CPU数量的0.7倍时,它会更好。
  (5)高可用性:包括高可用性应用程序,高可用性服务,高可用性数据和高可用性监视。为了获得高可用性,我决定打开一章。
  建筑设计的五个核心要素是什么?
  第二,安全
  互联网是开放的,任何人都可以从任何地方访问该网站。该网站的安全架构是为了保护网站免受恶意攻击和访问,并保护网站的重要数据,使其不被盗。
  安全的五个要素:机密性,完整性,可用性,可控性和可审计性。
  1.安全系统架构。
  1)安全服务是指计算机网络提供的安全措施,包括认证服务,访问控制,数据机密性服务,数据完整性服务和不可否认服务。
  2)特定安全机制是用于实现安全服务的机制,包括加密机制,数据签名机制,访问控制机制,数据完整性机制,认证交换机制,填充机制流量,路由控制机制和公证机制。
  3)通用安全机制不是专门为任何特定服务设计的。它属于安全管理,分为可靠的功能,安全标记,事件检测,安全审计跟踪和安全恢复。
  2,安全防护等级
  1)用户的自我保护水平。
  2)系统审计的保护级别。
  3)安全标记的保护等级。
  4)结构化保护水平。
  5)访问验证保护级别
  衡量网站安全架构的标准是解决现有和潜在的攻击和秘密。
  建筑设计的五个核心要素是什么?
  有可靠的应对策略吗?
  第三,可用性
  测量系统体系结构的设计是否符合高可用性的目的是假设当系统中的一个或多个服务器处于非活动状态并且发生几个不可预见的问题时,整个系统仍然可用。通常,有三种方法,冗余,分组和分发。
  网站高可用性的主要手段是冗余。该应用程序在多个服务器上实现,并同时提供服务。数据存储备份在多个服务器上。任何服务器一般不会影响应用程序。通常的实现意味着多个服务器通过负载平衡设备形成集群。
  建筑设计的五个核心要素是什么?
  第四,可扩展性
  可扩展性是指能够持续扩展或更新系统功能,而对现有系统的影响最小。系统基础结构中的性能是稳定的,无需频繁更改,应用程序依赖性较小且已加入,并且当系统添加新功能时,无需修改结构和现有系统代码。这无话可说。可扩展性基于良好的早期架构设计。合理业务的逻辑抽象,水平/垂直切割的分布等。
  网站可扩展架构的主要手段是事件驱动架构和分布式服务。
  事件驱动事件通常使用消息队列来实现,消息队列将消息生成和处理逻辑分开。
>
400-635-8089
立即
咨询
电话咨询
服务热线
400-635-8089
微信咨询
微信咨询
微信咨询
公众号
公众号
公众号
返回顶部