Visual Studio中断NPM套件库服务

微软在VS代码1.7版本中断了npm套件库的服务之后,推出了VS代码1.7.1版本。

VS代码1.7版本提供的自动类型获取(ATA)功能,旨在监视开发人员的package.json文件,并自动将所有依赖项(dependencies)的类型声明文件(type declaration files)安装在文件系统上的缓存中。这不同于以前依靠开发人员手动安装类型声明文件来为package.json中的依赖项提供IntelliSense。

以下摘录于项目经理Wade Anderson的微软1.7回滚事件报告,事件发生在他们团队在V1.7版本中将ATA功能推向市场之后:

11月2日 4:12 pm PST npm与我们联系, 告知他们监测到巨大的套件库活动峰值,这些活动来自于试图在@types范围内访问不存在的包(package)的客户端。峰值时,这些请求占所有流量的大约10%(有趣的是,VS代码用户发送请求的数量大约与npm监测到的印度的请求数量相同),并短暂地妨碍了他们的服务。

npm dev ops迅速采取行动,以减轻无意的DDoS攻击,并判断该事件来源于VS代码 1.7版本。关键原因是大量对不存在的包(package)的请求。

Anderson解释说,TypeScript语言服务器会先检查package.json中所列出的模块是否已在应用缓存中,然后再为那些不在缓存中的模块向npm 发送请求:请求@ types/{module},添加任何尚未存在的模块。

“每次打开一个项目或文件,会为不存在的模块发出请求,并预期着将新的类型声明文件添加到@types范围。这导致了npm响应404错误信息。鉴于不在@types范围内的模块数量很大,大量的404会短暂影响npm的可用性”,Anderson说。

除了应对ATA的无意DDoS攻击之外,1.7版本还实现了许多重要更新,包括在HTML中CSS的自动补全。现在开发人员可以看到CSS语言特性了,它用于嵌入到HTML中的CSS样式的自动补全、验证和着色注释,如下图所示。

根据微软的博客文章,该版本还包含“多目标调试”的初期实现。这功能允许在VS代码的单个实例中同时活跃着多个调试进程。该更新使开发人员可以同时调试扩展及其调试适配器和/或语言服务器,同时还可以在单个项目文件夹中调试客户端和服务器,以及调试集群程序。

1.7版本还提供了Node.js调试,把那些必要但极少改变的属性设置成灰色,删除不太常用的属性,并把重写和改进的文档以及注释链接到在线文档。

Anderson说VS代码团队将与Typescript团队合作,为ATA寻找一个“令人满意的修复”。

本文转自d1net(转载)

时间: 2024-08-18 02:42:32

Visual Studio中断NPM套件库服务的相关文章

如何在visual studio中使用graphviz库?

问题描述 如何在visual studio中使用graphviz库? 刚学C++不久,还没有用过第三方的库,看了很多网站都没有详细说明.求助. 解决方案 ? ? ?很长时间没有写blog了!现在正处寒假,在平时的项目经验中偶有所感,再次简单mark一下,谨防遗失! ? ? ?实际上在visual studio中创建动态链接库是非常简单的!相对于使用__declspec(dllexport)来对函数导出的方式,在visual studio中充分利用集成环境的遍历可以非常简单! &nb......答

使用Visual Studio的动态连接库创建通用数据库连接对话框

1.在VS(此处目录文件以vs2010为例)安装目录下("%Visual Studio安装目录%/Common10/IDE/Microsoft.Data.ConnectionUI.Dialog.dll")找到Microsoft.Data.ConnectionUI.dll.Microsoft.Data.ConnectionUI.Dialog.dll和汉化资源文件Microsoft.Data.ConnectionUI.Dialog.resources.dll,注意汉化资源文件需要放在zh-

Visual Studio管理C++第三方库的解决方法

目前的项目依赖于很多第三方库,每次要再一个新的环境编译/运行,都要花很长时间先编译/安装各种第三方库,而且会出现各种问题,因此决定将所有第三方库编译好之后,放入工程的子目录中,以后就不用重复编译了. 目录结构 整理后的目录结构如下: 一些设置 如此修改目录结构之后,VS工程的一些设置需要进行修改,分别说明一下: 输出文件的路径 在工程属性中 Configuration Properties > General > Output Directory 指定的是编译出来的lib/dll/exe存放的

Visual Studio 2010微软云计算架构构建云服务

4月12日,作为全球发布活动的第一站,微软新一代开发工具Visual Studio 2010在中国率先上市.Visual Studio 2010是微软云计算架构重要组成部分之一,它拥有强大的开发功能,支持开发者基于Windows Azure开发更多应用,从而进一步丰富微软的云计算平台.如果说今年初正式推出商用的云操作系统Windows Azure是微软云计算的左膀,那Visual Studio 2010就是微软云计算的右臂.众所周知,作为一个平台的供应商,微软平台的推广很大程度上将依赖于上面应用

有感 Visual Studio 2015 RTM 简介 - 八年后回归 Dot Net,终于迎来了 Mvc 时代,盼走了 Web 窗体时代

有感 Visual Studio 2015 RTM 简介 - 八年后回归 Dot Net,终于迎来了 Mvc 时代,盼走了 Web 窗体时代 太阳火神的美丽人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致"创作公用协议 转载请保留此句:太阳火神的美丽人生 -  本博客专注于 敏捷开发及移动和物联设备研究:iOS.Android.Html5.Arduino.pcDuino,否则,出自本博客的文章拒绝转载或再转载,谢谢合作. 关于

visual studio 2012安装配置方法图文教程 附opencv配置教程_实用技巧

在同学的帮助下,终于成功配置了vs+opencv,将详细过程记录在此,方便以后查阅 一.安装vs2012 下载vs2012,官方下载地址 1.双击安装文件,设置安装路径   2.选择需要的安装包 3.安装进行中   4.终于安装完成 5.点击启动 提示输入产品秘钥   YKCW6-BPFPF-BT8C9-7DCTH-QXGWC 激活成功 6.出现其它配置页面   这里选择C++为默认开发环境 7.启动   8.注意,有时可能出现兼容性问题,需要下载更新包   点击安装即可. 二.安装opencv

Visual Studio .NET使开发人员能够快速地构建和部署XML Web服务和应用程序

visual|web|web服务|xml|程序 Visual Studio .NET使开发人员能够快速地构建和部署XML Web服务和应用程序(2002.02.25)   来自:CSDN    华盛顿莱得蒙德,2002年2月8日 --四年以来,微软一直从事Microsoft .NET(公司下一代XML Web服务和应用程序的理念,它们以无缝的.安全的方式联接了整个互联网上的人.设备和信息)的基础工作.下周,微软将庆祝.NET的一个重要的里程碑--该工具将向全世界发行,通过程序员它将推动下一代的网

简介Gulp, Grunt, Bower, 和 Npm 对Visual Studio的支持

[原文发表地址]Introducing Gulp, Grunt, Bower, and npm support for Visual Studio Web 开发,特别是前端 Web 开发,正迅速变得像传统的后端开发一样复杂和精密.大多数项目不仅仅是通过 FTP上传一些 JS 和 CSS 文件.而现在的前端生成过程,可以囊括SASS 和LESS扩展.CSS/JS的压缩包.JSHint 或 JSLint的运行时 .或者更多.这些生成任务和进程都和像Gulp和Grunt这样的工具一起协调工作.此外,类

Visual Studio 2010的Web项目jQuery库

我们知道在Visual Studio 2010的非空Web项目(含Webform和MVC)中,都自动包含了jQuery库在项目的Scripts文件夹中.  点击放大 但细心的人们都看到了正式版中包含的jQuery版本是1.4.1版,而不是jQuery官方最新发布的1.4.2版.处于新版效率的极大提升以及部分bug的修复,推荐大家跟新使用1.4.2版,而放弃1.4.1版.单个项目的调整比较简单就是把旧版本的删除,然后添加上1.4.2版的相应文件即可.但我们很多人可能更希望是以后创建的项目都是1.4