|
web项目性能很重要,开发迭代过程中难免会有所忽视,性能会伴随产品的迭代而有所衰减。特别在移动端,网络一直是一个很大的瓶颈,而页面却越来越大,功能越来越复杂。并没有简单的几条黄金规则就可以搞定性能优化工作,我们需要一套性能监控系统持续监控、评估、预警页面性能状况、发现瓶颈,指导优化工作的进行。
1. 监控指标
前端性能指标主要有一下几种:
-
页面加载耗时:Page Load Time
-
首屏加载耗时:Above-the-Fold Time
-
重定向耗时:redirectEnd - redirectStart
-
DNS查询耗时 :domainLookupEnd - domainLookupStart
-
TCP链接耗时 :connectEnd - connectStart
-
HTTP请求耗时 :responseEnd - responseStart
-
解析dom树耗时 : domComplete - domInteractive
-
白屏时间 :responseStart - navigationStart
-
DOM ready耗时 :domContentLoadedEventEnd - navigationStart
-
onload时间:loadEventEnd - navigationStart,也即是onload回调函数执行的时间。
除此之外还需要关注接口的成功调用率、接口响应时间、资源加载时间以及前端异常捕获等。
市场上有很多收费的监控系统,像阿里的ARMS等等,我们这里就不讨论了。如果我们从零开发一个完整的前端监控系统的话,还是需要一定的时间的,加上可能人手不足,大部分忙着业务的开发,所以大部分中小公司都选择一些第三方的付费监控系统。
我们有没有可能快速搭建一个上线可用的前端性能系统呢,答案是可以的,就是采用一些开源的前端性能监控系统,加上二次开发。这里我推荐几个给大家。
1. performanceKit
1.1 功能定义
前端基础性能监控
通用的性能监控只能是较简单的基础监控,很多更深入复杂的性能监控,需要针对特定的环境、场景配合页面设计、曝光等条件去定制化设计api,并在合适的地方调用。
例如采集Speed Index、Perceptual Speed Index、视觉完整时间(Visually Complete)、首次有效渲染时长(First Meaningful Paint)等指标。
1.2 npm安装
与基于每个单元功能的旧方法相比,网络系统单元之间的这种互操作性支持更大的能力和灵活性。这种新方法还支持大型复杂系统,例如由多个供应商摄像头组成的系统。然而,为了使其工作,每个单元的软件不仅必须以保护其免受网络威胁的方式进行维护和更新,而且还必须以与系统中每个其他单元兼容的方式进行更新,以支持所需的操作。
展望未来,物联网设备制造商将面临巨大且不断增长的挑战,既要保持其设备的持续安全性,又要保持与各种系统的互操作性(这些系统将与他们的设备进行交互,以执行所需的功能)。
因素三:提高安全性的影响
如上所述,当今的网络环境包括黑客、恶意软件和自动攻击者。作为回应,网络设备制造商不仅增加了其产品的基本安全性能,而且还增加了更高级别的安全保护。例如,一些联网监控摄像头不仅需要密码才能访问其管理功能,而且现在还包括一个功能,如果连续发生太多次失败的登录尝试,该功能可以暂时锁定IP地址。
随着越来越多的系统将使用多个物联网设备来完成越来越广泛的功能,管理设备的密码也将变得越来越重要和复杂。今天,VMS还必须存储系统中每个可访问摄像头的当前密码,此外该密码还存储在本地每个摄像头中。同样,配备了向VMS或其他系统发送主动消息的摄像头也必须存储这些系统的密码。这两者都需要了解其相关方的安全协议,以避免触发锁定或发出警报,例如,当一个自动系统试图更新其固件时,摄像头自身的安全协议会有什么反应——它会把这种尝试视为攻击吗?
今天,系统管理员为图省事而不是完全管理这种复杂性仍然太常见。事实上,加利福尼亚州最近颁布了一项法律,禁止制造商向该州销售带有默认密码的监控摄像头,因为发现很多监控系统的默认密码仍然有效。而且,随着物联网设备数量的增加,这一挑战的复杂性只会在未来继续增加。
未来
知道黑客将对每台连接互联网的设备进行漏洞探测,那么公司可以采取什么措施来生存和减轻网络攻击?
当然,所有用于网络安全的常规措施仍然适用,例如建立和实施密码管理策略。但是,每个策略都需要根据物联网设备给组织网络系统带来的变化进行审查,例如,为员工制定的密码策略(包括密码的长度和复杂性以及更改的频率)是否适合公司设施中的物联网设备?如何检测、记录、限制和锁定每台物联网设备的失败登录尝试?在新物联网设备的背景下对现有策略进行思考,将大大有助于在任何大规模推出之前加强安全基础。
此外,应制定具体计划,为自动化网络测试做准备,包括定期发现每个连网的设备,然后根据需要自动检查固件和软件版本并进行更新。这是组织有机会领先于由黑客触发的自动僵尸网络攻击的唯一方法。
另一个最佳实践是拥有一个准备采取行动的“危机响应小组”。 通常,这些小组将由物理和逻辑安全人员组成,并且能够在网络事件期间共同评估并采取行动。这些小组还可以扩大其工作范围,不仅仅是在事件发生期间——实际上,通过在关键时刻协同工作,组织更容易承担更长期的工作,因为大家对需要做什么有着共同的理解。
通过采取积极主动的方法来降低物联网设备风险,组织可以减少其网络的可攻击面,确保遵守适用的法规,并留出时间专注于最重要的安全措施。此外,了解物联网设备如何改变网络安全格局,将有助于团队现在就做好准备!

(编辑:南昌站长网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|