当前位置:首页 > > 正文内容

java网站性能优化

2020-12-1463
java网站性能优化,javaweb性能优化有哪些,下面小编从以下几点详细介绍一下java网站性能优化

一、如何对网站进行性能优化

1、删除功能:重要数据伪删除,删除校验用户(避免A用户可以删除任何人数据)。文件上传预览删除功能不能做服务器文件删除,不要为了节省服务器资源给用户留下接口。如果要资源有限,那么在删除的时候也需要做用户校验(文件命名或文件路径关联用户ID等)
2、发短信:基本上没有人愿意自己和短信运营商直接对接短信业务,1般都是通过第3方短信服务商购买短信。在用户主动获取短信的时候前端做图片验证码校验,后端做发送量,发送间隔校验(图片验证码是可以被机识别的)。做短信日志记录,这些日志可以为前面的后台校验提供数据,系统运行期间的各种好处就不11举例了。重要功能做语音验证码,比如注册送现金的活动,短信验证码可以被识别
3、页面数据获取:用户平凡的刷新数据会加大服务器压力,当然谁也挡不住用户刷新是吧,但是减少主动刷新次数也是1个减小服务器压力的方法,咱不能自己坑自己吧,(Table页切换做校验,有数据就不再拉取等等)
4、前端静态资源做CDN,可以提高用户访问速度,减少服务器压力
5、用户输入做SQL注入,javascript脚本注入
6、用到的Ajax请求:做ajax加拦截器,通过消息头过滤掉非ajax的地址栏访问,(谁然不1定能全部拦截,但是拦掉1部分小白还是可以得,总不能是个人就能攻击吧)
7、用户输入数据校验,输入文字长度,数字输入大小,int 、long等数据类型合理使用,(积分兑换的时候用户只有1积分,你让他输入兑换积分,你输入21000000000,int 接收的时候,超出了范围成了负数1永远大于负数),还有1点很重要,你的任何校验都不要依靠前端,毕竟前端是为用户的体验而生的,为了自己的安全还是多写点后台校验吧,
8、异常捕获:不要将异常信息抛给用户,首先不美观,其次这些错误信息中可能含有SQL错误,通过这些sql可以了解到你的数据库结构
9、前端数据获取的时候减少不必要字段输出,java面向对象,表数据面向对象,本来页面只需要两个数据,结果你返回了1个实体,前端可已查看到你数据库表结构,多看几个页面那么你的数据库设计就给了人家了呢
10、用户信息加密传输,1定不要把重要数据留在客户端,泄密重要信息的责任是要你承担的哦
11、 现在越来越多人使用阿里云服务器,做客户项目的时候服务器是客户购买的,当然阿里云账户客户也有,你的配置文件不加密客户就能看见你的系统配置,结合上面的搞搞你的数据库,那你的产品还有什么秘密,至于代码,你觉得他值钱么
12、 前端JS 脚本 和页面分离,压缩或加密,不要你的团队幸幸苦苦开发的唯美的页面和效果,被人家1个ctrl+s拿去回家研究了,何况你的js中还有大量的逻辑
13、 线程安全:
1、synchronized同步 (有序性、可见性),
2、使用生产者消费者模式,(唤醒notify(),等待wait())
3、volatile同步(可见性,非有序性,只在无基础数据的赋值操作,直接操作主内存,减少主内存复制到工作内存的cpu消耗)
104、 数据库读写分离的时候要注意个别业务读也要读在主库上(避免主从同步失败或延时)

二、Java性能优化中文版PDF下载

文件比较大,给你下载地址吧:
http://download.csdn.net/download/hx0_0_8/8434567

三、提高Java性能的几个高效用法

1.循环

■ 在重要的循环里,消除循环终止判断时的方法调用。。。
例如:将...

for( int i = 0; i < collection.size(); i++){
...
}

替换为…

for( int i = 0; n = collection.size(); i < n; i++){
...
}

通常,把与循环index不相关的移到循环的外面

for( int i = 0; terminal = x.length; i < terminal; i++){
X[i] = x[i] / scaleA * scaleB
}

应该该成:

Double scale = scaleb / scaleA;
for( int i = 0; terminal = x.length; i < terminal; i++){
X[i] = x[i] * scale
}

2.字符串

■ 消除字符串连接
■ 创建长字符串时,总是使用StringBuffter代替String
■ 预先分配StringBuffer空间
StringBuffer sb = new StringBuffer(5000);

3.基本数据类型

■ 在重要的循环里使用基本数据类型(int型数据通常比long/double型数据更快)
■ 基本数据类型(Boolean,Integer,etc)的包装类主要用在当传递的方法参数必须是1个对象的引用时(而不是1个基本数据类型)
■ 对所有的常量代数表达式使用static final修饰符
1 使常量更容易引用(编译器预先计算常量表达式)

4.异常

■ 异常只用于单个真正的错误条件
1 抛出1个异常和执行1个catch代码块花费是很高的(主要由于当创建1个异常时要获得线程栈的1个快照)
1 只当条件真的异常时才抛出1个异常
■ 使编译器和运行时最优化,将几个方法调用放在1个try/catch块中,而不是为每个方法调用实现几个try/catch块

try{
Some.method1(); //Difficut for javac
} catch (method1Exception e) { //and the JVM runtime
//Handle exception 1// to optimixe this code
}

try{
Some.method2();
} catch (method2Exception e) {
// Handle exception 2
}

try{
Some.method3();
} catch (method3Exception e) {
// Handle exception 3
}

try{
Some.method1();
Some.method2();
Some.method3(); // easier to optimize
} catch (method1Exception e) {
// Handle exception 1
} catch (method2Exception e) {
// Handle exception 2
} catch (method3Exception e) {
// Handle exception 3
}

5.基准

■ 注意,所有这些技巧会因不同的平台和虚拟机而不同
1 例如:在有些servlet容器内,通过1个OutputStream作为字节输出会更快
1 在其它的容器内,通过1个PrintWriter输出字符会更快
■ 这些技巧描述的是最可移植的建议
■ 你可能需要运行1些基准来判断在你的平台上怎么样是最快的

四、如何优化web网站的性能

提升页面加载速度
1、图片大小越小打开速度越快
2、网页中代码不要臃肿所以不要有无用代码
3、js css使用外部引入
4、如果js css 不是显示用户看到的信息 而是1些特效的话放在最后加载。

五、java web性能优化有哪些

最常见的优化方案代码优化最简单的就是提高代码的重用性,不管是前端代码还是后端代码,学会把公共性的代码抽取出来,事物的控制,特别是当对数据库进行增加删除修改的时候,保持数据的1致性,数据库的话加索引,视图等等,SQL语句关联的时候注意尽量用高效的sql语句。1般的优化差不多就是这样,当然,更多的要更难了。

如果您对于java网站性能优化,javaweb性能优化有哪些,还是不太理解,欢迎留言评论。

相关文章

大连市seo报价

大连市seo报价

大连市seo报价,大连网站优化公司多少钱,下面小编从以下几点详细介绍一下大连市seo报价: 一、大连做网站 大连网站建设 大连网络优化 选谁家吗? 大连华企智源科技有限公司位于大连市高新技术产业园...

现下SEO的发展前景

现下SEO的发展前景

每一次算法的更新,都会对SEO行业发生影响,也会对于我们造成不同的问题,例如:现下SEO的发展前景,虽然是一个问题,但是牵涉到了包含:技术、运营、前景、发展、seo、seo的发展、SEO未来、思考等众...

广州seo推广专员

广州seo推广专员

广州seo推广专员,网络SEO推广专员是做什么的,下面小编从以下几点详细介绍一下广州seo推广专员: 一、SEO专员和推广专员的区别 SEO专员局限于做SEO方面的事情:可能是发外链,更新文章,做...

百度白皮书的发布,各位大神怎么看?

百度白皮书的发布,各位大神怎么看?

随着互联网的越发展越发达,很多人发现SEO优化效果不是那么好了,还会碰到很多之前没遇到的问题,例如:百度白皮书的发布,各位大神怎么看?,虽然是一个问题,但是牵涉到了包含:网站、百度、百度SEO等众多因...

潍坊seo诊断

潍坊seo诊断

潍坊seo诊断,seo免费诊断工具有哪些,下面小编从以下几点详细介绍一下潍坊seo诊断: 一、SEO诊断的工具有哪些 百度站长平台,站长工具等。网上搜索1下,网站诊断工具就能找到很多。 二、如何做...

seo的标题写法

seo的标题写法

seo的标题写法,seo怎么写标题,下面小编从以下几点详细介绍一下seo的标题写法: 一、网站seo标题标签怎么写? 网站页面通过编程语言实现给每个文章页面的标题自动加上标签。所以我们写文章的时候...

怎么查看网站推广效果

怎么查看网站推广效果

怎么查看网站推广效果,如何看别人的网站怎么做的推广,下面小编从以下几点详细介绍一下怎么查看网站推广效果: 一、网站怎么推广? 1. 搜索引擎推广方法2. 电子邮件推广方法3. 资源合作推广方法。4...

SEO优化的工具

SEO优化的工具

SEO优化的工具,SEO常用到的工具有哪些,下面小编从以下几点详细介绍一下SEO优化的工具: 一、SEO常用到的工具有哪些? 1、百度站长工具百度站长现在改名为百度搜索资源平台,它提供了1个强大的...

维诺seo团队

维诺seo团队

维诺seo团队,维诺seo团队:多长的文章最有利于SEO优化,下面小编从以下几点详细介绍一下维诺seo团队: 一、维诺seo团队:多长的文章最有利于SEO优化 这种问题 1看 就不懂 seo...

重庆推广网站排名价格

重庆推广网站排名价格

重庆推广网站排名价格,重庆网站建设价格费用是多少,下面小编从以下几点详细介绍一下重庆推广网站排名价格: 一、重庆网站建设做1个网站要多少钱 每个地方都有网站建设公司每个公司的收费标准也不1样先去网...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。