web性能权威指南(High Performance Browser Networking) https://www.cnblogs.com/qcloud1001/p/9663524.html HTTP协议是前端性能乃至安全中一个非常重要的话题,最近在看<web性能权威指南(High Performance Browser Networking)>,把其中关于HTTP部分的内容拿出来分享一下,加了一点自己的想法,当然没有<HTTP权威指南>讲得详细,但对于理解我们平常做的事情很有启…
第2章 TCP篇 互联网的核心是两个协议,IP和TCP. IP也叫Internet协议,提供主机到主机的路由和寻址:TCP,传输控制协议,在不可靠的传输通道上提供一个可靠的网络抽象.TCP / IP协议也通常被称为Internet协议套件,在1974年,它首次在一篇题为<一个用于分组网络互通的协议>的论文中被Vint Cerf和Bob Khan提出. 最初的RFC建议(RFC 675)几经修订,在1981年发表TCP / IP V4正式规范,但分为了两个独立的RFC: RFC 791 - In…
Chapter 1. Primer on Latency and Bandwidth As a result, to improve performance of our applications, we need to architect and optimize our protocols and networking code with explicit awareness of the limitations of available bandwidth and the speed of…
延迟 定义和标准延迟 延迟简单地说,它是一种转移或信息包从起点到终点,所花费的时间. 延迟=发送延迟+传播延迟+处理延迟+排队延迟: Propagation delay 传播时延 传播时延这个概念.是指电磁信号或者光信号在传输介质中传输的时延.而在光纤或者铜线中.光信号和电磁信号的传播速度都在20万公里/秒以上,在传输介质中传输的是电磁信号或者光信号,而不是数据! Transmission delay 传送时延 发送时延是指结点在发送数据时使数据块从结点进入到传输媒体所需的时间,也就是从数据块的…
JavaScript 数据访问(通译自High Performance Javascript 第二章)   JavaScript 数据访问(翻译自High Performance Javascript 第二章) 计算机科学中一个经典的问题是决定如何存储数据,以便进行快速的读取和写入操作. 在代码执行期间,数据如何存储将会关系到它们的检索速度.在Javascript中,由于只存在少数的操作来进行数据存储, 这个问题似乎 变得简单了.但是,与其他语言一样,Javascript中数据的存储方式将决定它…
不多说,直接上干货! 前期博客 基于CentOS6.5下Suricata(一款高性能的网络IDS.IPS和网络安全监控引擎)的搭建(图文详解)(博主推荐) 或者 基于Ubuntu14.04下Suricata(一款高性能的网络IDS.IPS和网络安全监控引擎)的搭建(图文详解)(博主推荐) [root@suricata suricata-3.1]# pwd /root/suricata-3.1 [root@suricata suricata-3.1]# vim /etc/suricata/suri…
减少分配率 这个几乎不用解释,减少了内存的使用量,自然就减少GC回收时的压力,同时降低了内存碎片与CPU的使用量.你可以用一些方法来达到这一目的,但它可能会与其它设计相冲突. 你需要在设计对象时仔细检查每个它并问自己: 我真的需要这个对象吗? 这个字段是我需要的吗? 我能减少数组的尺寸吗? 我能缩小primitives的尺寸吗(用Int32替换Int64,其它)? 这些对象,是否只有在极少数情况下,或者只有初始化的时候才用到? 是否能将一些类转为结构体使他们在栈上分配或者成为某个对象的一部分?…
将长生命周期对象和大对象池化 请记住最开始说的原则:对象要么立即回收要么一直存在.它们要么在0代被回收,要么在2代里一直存在.有些对象本质是静态的,生命周期从它们被创建开始,到程序停止才会结束.其它对象显然不需要永远存在下去,但他们的生命周期会存在程序的某些上下文里.它们的存活时间会超过0代(1代)回收.这些类型的对象可以作为池化对象的备选.这虽然需要你手动管理内存,但实际情况下这是一个很好的选择.另外一个重要的需要池化的对象是分配在LOH里的大对象. 没有一个单一的标准方案或者API来实现对象…
libtnet是一个用c++编写的高性能网络库,它在设计上面主要参考tornado,为服务端网络编程提供简洁而高效的接口,非常易于使用. Echo Server void onConnEvent(const ConnectionPtr_t& conn, ConnEvent event, const void* context) { switch(event) { case Conn_ReadEvent: { const StackBuffer* buffer = static_cast<co…
安卓工作室 文件浏览器 android studio  File browser 作者:韩梦飞沙 Author:han_meng_fei_sha 邮箱:313134555@qq.com E-mail: 313134555 @qq.com 点击上方菜单栏中的工具-->安卓-->安卓设备监视器 ,然后出现 安卓设备监视器 这一界面, click the Tools in the top menu bar -->Android-->Android Device Monitor , and…