首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

合并压缩js,css利器,珞樱http concat开源

artifactId>luoying-web 0.1.6 http concat组件 主流的http1.1算是短连接,合并...js,css为单个文件,使用浏览器缓存,gzip传输等手段能有效的减少浏览器和服务器的交互次数和减小传输数据,在有限的资源下可以提高一下网站响应速度和负载。...MVC后端的写页面不讲究,是有一些开源的组件是可以合并js和css,但不尽人意,多个css的url语法的相对路径没处理,不支持ETag缓存,gzip, 没考虑热更新等。...resourceConcat.setResponseBufferSize(10 * 1024); try { //开启资源文件监控,使用NIO WatchService,可实时更新内存中的缓存的资源文件内容,默认采访过的js...//部署后基本不会变化的不开启省些资源 resourceConcat.watchResources(this.getServletContext(), "/js

1.2K30
您找到你想要的搜索结果了吗?
是的
没有找到

CSS 和 JS 合并压缩工具 Minify 及其 WordPress 插件

网站性能优化是一个永恒的话题,前面我已经介绍了 WordPress 后端性能优化的一系列方法,下面讲解下 Web 前端的性能优化,其中最重要是减少 HTTP 请求和压缩文件的大小,今天来介绍下使用 Minify...来合并压缩 CSS 和 JavaScript 文件, Minify 介绍 Minify 是一个使用 PHP5 开发的应用,可以帮你合并以及压缩 CSS 和 JS 文件, 通过遵循一些 YSlow 的优化规则来提高网站的性能...它会合并多个CSS 或者 JavaScript 文件,移除一些不必要的空格和注释,进行 gzip 压缩,并且会设置浏览器的缓存头。...b=js&f=jquery-a.js,jquery-b.js,jquery-c.js。...(JS 和 CSS 分别一个),并且自定 Gzip 压缩

2.3K10

使用 grunt-scp 来部署 js 代码

在很久之前,我接到任务,要帮忙协助前端做团队建设和流程优化(重点在于代码review上),当时出过一版方案来做静态资源的部署——js、css、imgs。但由于当时对前端的参与度不够,方案并不合适。...测试完毕之后,正常来说使用git和gitlab做代码管理的情况下,应该是提一个merge request出来,然后其他同学review代码,没问题之后进行合并。...但是另外一个问题是,dest目录的另外一个作用是分发最终的js、css。分发是指把打包好的静态文件放到cdn上去。因此可能需要在部署的服务器上重复打包的逻辑。...grunt scp的研究过程就不说了,只说一句,不懂的地方看源码吧,文档太少,直接贴配置吧: // 需要安装grunt-scp // 省略的grunt配置xxxxxxx scp: { options...配置xxxxxxx grunt.registerTask('deploy-test', ['build-test', 'scp:js_css']); // 省略的grunt配置xxxxxxx 相对于之前使用一个

74020

Grunt :初次使用及前端构建经验

在使用 Grunt 之前,项目静态文件几乎没进行压缩合并便直接放到线上,部分文件手动复制粘贴到某压缩网站进行压缩。...没压缩合并的文件显然耗资源,手动压缩的文件后期不易维护,每修改一次便要重复复制粘贴,很不方便。Grunt 的加入帮忙解决了以上问题,让开发人员更加专注于开发。...合并压缩静态资源 我开始使用 Grunt 的时候只是用来对 css,js 文件进行合并压缩,使用到的插件分别如下: "devDependencies": { "grunt": "^0.4.5",...,便用 concat 把 css 或 js 目录下的文件进行了合并,再用 cssmin 或 uglify 把刚刚合并的文件压缩,最后用 clean 把合并但未压缩的文件删除掉。...最后总结一下,以上的方式的好处就在于开发时期不需要去合并压缩文件,方便调试。而生产环境则是尽可能去合并压缩,减少用户的请求时间。

2.3K00

前端构建工具grunt

grunt是什么 grunt是目前非常流行的前端构建工具,支持自定义插件,有丰富的插件帮助我们完成构建任务 自动化完成我们指定的任务,例如压缩、编译、单元测试、linting等 前端为什么需要构建工具...使网页加载变慢,为了解决这个问题,就需要把多个文件合并,来减少网络请求的数量,也需要把文件压缩,来提高网络传输速度 开发js的人多了,互相的协作调用也就多了,js文件的数量同样会变多,这就需要单元测试来保证质量...,也需要做好代码的语法检查 由于js的开发越来越复杂,那么我们就需要生成文档,来描述各个模块和方法 这时我们就会发现,开发之外的工作繁琐了很多,不仅需要写好代码,还需要做好 合并压缩、单元测试 等一系列的工作...,我们就会渴望有一个便利的构建工具来完成这些工作 grunt能做什么 我们在grunt中定义好各个任务,让grunt来自动完成这些任务 例如: (1)合并压缩,把多个js或css文件合并压缩 (2...、语法检查、单元测试、合并压缩、生成文档、打包、发布等一系列的工作

1.1K50

菜鸟进阶——grunt

是一套前端自动化工具,基于nodeJS的命令行工具,一般用于: ① 压缩文件 ②合并文件 ③简单语法检查 Grunt 基于 Node.js ,用 JS 开发,这样就可以借助 Node.js 实现跨系统跨平台的桌面端的操作...安装 Grunt 和所需要的插件 就现在的这个示例项目而言,我打算让 Grunt 帮忙实现下面几个功能:检查每个 JS 文件语法、合并两个 JS 文件、将合并后的 JS 文件压缩、将 SCSS 文件编译...也就是说,在 Uglify 插件下面,有一个 build 任务,内容是把 XX.js 压缩输出到 xx.min.js 里面。如果你需要更多压缩任务,也可以参照 build 多写几个任务。...下面我们打算先把 src 目录下面的两个 JS 文件合并起来,然后再用 jshint 检测一下是否有语法问题,如果正确,再用 uglify 对合并起来的文件进行压缩。...('compressjs',['concat','jshint','uglify']); 意思就是依次执行 合并、检查、压缩 任务。

1.4K10

grunt任务之seajs模块打包

grunt与seajs          grunt是前端流行的自定义任务的脚手架工具,我们可以使用grunt来为我们做一些重复度很高的事情,如压缩合并js语法检查等。...在实际生产中,如果紧紧定义一系列seajs模块而并不进行合并压缩的话,加载性能很低,原因大家都懂的,seajs在浏览器端处理依赖模块,并进行异步加载,这个过程中会有多个http请求,大大降低页面的加载速度...所以结合grunt构建工具,我们可以将模块的依赖处理放到服务端进行,并将所有模块合并压缩,完成生产所需的最终文件。         ...我们计划将生成的文件(处理完依赖且合并压缩后的文件)放到dist文件夹下面,最终通过view/hello.html引用, ? 设置transport:util任务的idleading = ‘.....然后经过合并压缩之后,生产最终的application.js文件,在view/hello.html中引用(开篇提到)。

2.1K90

JS 图片压缩

前言 说起图片压缩,大家想到的或者平时用到的很多工具都可以实现,例如,客户端类的有图片压缩工具 PPDuck3, JS 实现类的有插件 compression.js ,亦或是在线处理类的 OSS 上传,...文件上传后,在访问文件时中也有图片的压缩配置选项,不过,能不能自己撸一套 JS 实现的图片压缩代码呢?...压缩思路 涉及到 JS 的图片压缩,我的想法是需要用到 Canvas 的绘图能力,通过调整图片的分辨率或者绘图质量来达到图片压缩的效果,实现思路如下: 获取上传 Input 中的图片对象 File 将图片转换成...base64 格式 base64 编码的图片通过 Canvas 转换压缩,这里会用到的 Canvas 的 drawImage 以及 toDataURL 这两个 Api,一个调节图片的分辨率的,一个是调节图片压缩质量并且输出的...总结 本文仅针对图片压缩介绍了一些思路,简单的使用场景可能如下介绍,当然也会引申出来更多的使用场景,这些还有待大家一起挖掘。

25.7K21

StreamingFileSink压缩合并小文件

本篇将会介绍StreamingFileSink的基本用法、如何压缩数据以及合并产生的小文件。...; 在Flink中的ParquetAvroWriters未提供压缩格式的入口,但是可以自定义一个ParquetAvroWriters,在创建ParquetWriter时,指定压缩算法: public class...snapshotState阶段中,如果checkpoint周期时间较短,就会更快发生文件滚动,增大checkpoint周期,那么文件就能积累更多数据之后发生滚动,但是这种增加时间的方式带来的是数据的一定延时; 下游任务合并处理...四、总结 本文重点分析了StreamingFileSink用法、压缩与小文件合并方式,StreamingFileSink支持行、列两种文件写入格式,对于压缩只需要自定义一个ParquetAvroWriters...类,重写其createAvroParquetWriter方法即可,对于小文件合并比较推荐使用下游任务合并处理方式。

1.7K20
领券