我发现大部分技术人,多多少少都会遇到下面的困惑,比如: AJAX 跨域访问时总被浏览器的同源策略阻止,其背后的原理及符合其设计思想的解决方案是什么? AJAX 跨域访问时总被浏览器的同源策略阻止,其背后的原理及符合其设计思想的解决方案是什么? 缓存可以提升性能,但什么样的 HTTP 消息才会被浏览器 ...
分类:
Web程序 时间:
2019-10-22 00:38:02
阅读次数:
395
一、对象池 运用对象池化技术可以显著地提升性能,尤其是当对象的初始化过程代价较大或者频率较高。下面是ObjectPool源码中涉及的几个类。当你看过.Net Core源码很多时,你会发现,微软的开发很多都是这种模式,通过Policy构建Provider,通过Provider创建最终的类。 二、使用 ...
分类:
Web程序 时间:
2019-10-19 09:27:52
阅读次数:
108
在XMLHttpRequest请求中使用ArrayBuffer方式,和后端服务器进行二进制的传输交互。 在项目中发现随着用户增长,部分前端功能,请求的数据量越来越大,传统的josn的方式,在下载、序列化时非常慢,因此尝试使用二进制+压缩的方式提升性能。 服务端Java代码: 客户端JS代码: pak ...
分类:
Web程序 时间:
2019-10-15 20:51:28
阅读次数:
125
70年代有过超复杂指令的实验,可能是用解释器做的。设计者尝试缩小“机器能做什么”和“高级语言需要什么”之间的语义鸿沟。几乎没有任何人考虑过设计更简单的机器,就像现在没有太多研究关心如何设计低耗能的电子表格,网络,Web服务器,等等。 有一个团体反抗这种趋势,尝试吸收西摩·克雷在高性能计算机上的理念, ...
分类:
其他好文 时间:
2019-10-04 15:06:03
阅读次数:
121
今年3月,Intel公布了牵头开发的CXL开放互连技术,服务于下一代高性能计算、数据中心,底层基于PCIe,可消除CPU与设备、CPU与存储之间的计算密集型工作负载的传输瓶颈,显著提升性能。 随后,几家巨头开始筹备组成CXL联盟,并先后吸纳了IBM、赛灵思(Xilinx)、AMD、ARM等行业巨头加 ...
分类:
其他好文 时间:
2019-10-04 09:17:06
阅读次数:
121
一、Lambda 的延迟执行 有些场景的代码执行后,结果不一定会被使用,从而造成性能浪费。而Lambda表达式是延迟执行的,这正好可以作为解决方案,提升性能 。 性能浪费的日志案例 注意:日志可以帮助我们快速的定位问题,记录程序运行过程中的情况,以便项目的监控和优化。 一种典型的场景就是对参数进行有 ...
分类:
编程语言 时间:
2019-09-30 21:57:44
阅读次数:
108
base64的好处是什么?今天在跟小伙伴讨论这个问题,要是全站用Php把图片转为base64行不行? 1. 提升性能: 网页上的每一个图片,都是需要消耗一个 http 请求下载而来的, 图片的下载始终都要向服务器发出请求,要是图片的下载不用向服务器发出请求,base64可以随着 HTML 的下载同时 ...
分类:
Web程序 时间:
2019-09-30 14:41:39
阅读次数:
99
MQ背景&选型 消息队列作为高并发系统的核心组件之一,能够帮助业务系统解构提升开发效率和系统稳定性。主要具有以下优势: 削峰填谷(主要解决瞬时写压力大于应用服务能力导致消息丢失、系统奔溃等问题) 系统解耦(解决不同重要程度、不同能力级别系统之间依赖导致一死全死) 提升性能(当存在一对多调用时,可以发 ...
分类:
其他好文 时间:
2019-09-28 17:57:08
阅读次数:
98
大家或许知道,Python 为了提高内存的利用效率,采用了一套共用对象内存的分配策略。 例如,对于那些数值较小的数字对象([ 5, 256])、布尔值对象、None 对象、较短的字符串对象( 通常 是 20)等等,字面量相等的对象实际上是同一个对象。 我很早的时候曾写过一篇《 "Python中的“特 ...
分类:
编程语言 时间:
2019-09-14 00:17:41
阅读次数:
146
//原文链接:https://www.cnblogs.com/fangfuhai/p/5500065.html 在工作中,String类是我们使用频率非常高的一种对象类型。JVM为了提升性能和减少内存开销,避免字符串的重复创建,其维护了一块特殊的内存空间,这就是我们今天要讨论的核心,即字符串池(St ...
分类:
编程语言 时间:
2019-09-12 21:49:25
阅读次数:
89