Http 协议中ETag的用法
大网站一般都是用F5或其它的负载均衡设备,用户的每次请求落在那台real server都是不一定的,一次偶然的机会,发现相同的一个资源在两次访问时,http头中的etag是不相同的,主要是该资源一定是没有被修改的,于是想到etag的算法中可能使用到了资源在不同real server上可能不同的因子。
精选技术长文、实践记录与系统化阅读
低噪声、高可扫读;标题、摘要、来源、标签一目了然。
采集自各技术站点的近期文章。
大网站一般都是用F5或其它的负载均衡设备,用户的每次请求落在那台real server都是不一定的,一次偶然的机会,发现相同的一个资源在两次访问时,http头中的etag是不相同的,主要是该资源一定是没有被修改的,于是想到etag的算法中可能使用到了资源在不同real server上可能不同的因子。
稍微盘点一些平时就很常见的现象: 1、很多产品经理觉得自己行,可领导不知道自己行,把一个不错的项目安排给似乎不是很胜任的同事了- 心里不平衡 ; 2、对团队对项目的问题,发表了数次个人的提议,但领导却一直没有得以重视,事实上问题还是很严重-心里有落差; 3、个人想加薪晋升,或收到了一些不平衡的待遇,想和领导沟通又不知道怎么处理和领导说,怎么处理和领导的关系-心里没有底; 4、抱怨领导没有本事,只会混,自己没有...
路遥知马力,日久见人心
1、轮询(默认)每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。 2、weight 指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。例如: upstream bakend { server 192.168.0.14 weight=10; server 192.168.0.15 weight=10; } 3、ip_hash 每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题。
PHP为了避免数字索引和数字字符串索引(注1)的混乱, 引入了zend_symtable_*系列函数, 并应用于数组中. 这样一来, 数字字符串索引也就会被当作数字索引, 然而总是有一些情况, 是PHP的维护者没有想到的... 比如, 类型转换时刻.
昨天折腾了一下自己的网站,试图进行一些迁移工作,这其中遇到的首要问题是Mysql的乱码问题。由于Mysql是从版本 4迁移到Version 5的,原来的字符集是latin1,现在是UTF8,这就遇到了经典的乱码问题,即使通过phpadmin来访问,也是一片纷乱,还好在前端的展现正常。 在网上搜一下,很多帖子和方法,最后我通过如下步骤,终于纠正了多年来的乱码问题。
之前也是因为总结,从写《手把手教你设计SNS社区》开始,一直是坚持着对很多产品做产品形态、功能、规划的解构、分析,这个过程中更多的是沉淀、思考、总结的过程。最近越来越意识到自己在乎了事物本身,忽略了事理本身,所以接下来插播写《产品经理怎么和人打交道》系列作为:我新的、对外分享的、实战思考篇章。事理,其实就是事物的道路,也可以理解为透过事物看本质。作为产品经理来讲,看产品、分析产品、规划产品、运营产...
Xdebug插件是调试PHP代码的利器,可以很方便的指出你语法中的错误。但是在Ubuntu下面我一直没有安装这个插件,原因只有一个字――懒。以为简简单单的任务,可实际安装过程中却也经历了许多痛楚,记录一下,增强回忆。 运行phpize错误首先下载Xdebug,根据经验,最新版往往会让你遇到很多痛不欲生的问题,且大多没有解决办法。所以我选择了2.0.5一个老版本。关于如何安装这个插件,官网给了我们很多方法,包括编译安装和PECL安...
当其他创建对象的方法都不适合于你时,寄生构造器模式通常能满足你。该模式的主要意图是通过创建一个构造函数,在构造函数内部创建另一个对象并为其赋予方法,在最后将这个对象返回。
前几天我再开发一个叫 河蟹工具条 的时候,其中有个功能就是获取本页面的短网址。这个想法是好的,可是在我付诸于行动的时候,发现这个需要跨域。起初我的想法就是,跨域的最简单的方法就是增加一个script标签,因为script标签是允许跨域的。但是问题又来了,对方的API返回的是个json对象,用script标签只能执行,却不能获取到里面的东西,也就是说返回的东西是不可控的。
熟悉其它面向对象语言的人们在看待JS混合模式时总是感觉很奇怪,将构造函数和原型模式分开写让他们感觉很不爽。这里略微抱怨一下,众口总是难调。十全九美其实挺好。那么为了让这一部分人爽起来,就有必要来介绍一下动态原型模式。 The dynamic prototype pattern seeks to solve this problem by encapsulating all of the information within the constructor while maintaining the benefits of using both a constructor and...
写了一个简单的,可以应付一些简单的项目了。
这个是从网上找到的..现在做个记号..以免以后可能遇到..
现在是Web 2.0时代,AJAX使用得非常多。但是使用纯粹的AJAX,经常会遇到跨域的问题。其实归结起来,解决跨域问题,也不外乎几种方式:1、代理方式2、on-Demand方式3、iframe方式4、用户本地转储方式 (local)5、其实还是在服务端A用iframe解决了与服务器B通信的问题6、PHP + HTML(含JS)其实这几种方式,原理基本上都是一样的,绕开AJAX对于跨域的限制。下面就对这几种处理方式大概谈一下。1、web代理方式即用户访问A网站时所产生的...
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where num is null 可以在num上设置默认值0,确保表中num列没有null值,然后这样查询: select id from t where num=0 3.应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全...
在LAMP阵营中,MySql占有很大比重,经常都会对数据库进行操作,但若不注意一些细节,很可能导致不必要的麻烦!这里就将谈谈MySql的相关优化问题,主要是从提高MySql数据库服务器的性能的思路进行考虑,主要包含以下8个方面的优化:1、选取最适用的字段属性; 2、使用连接(JOIN)来代替子查询(Sub-Queries); 3、使用联合(UNION)来代替手动创建的临时表; 4、事务; 5、锁定表; 6、使用外键; 7、使用索引;...
近日,看到一关于PHP数组排序的问题,居然在瞬间没有想出如何实现!真的是有点丢分呢。。。于是想起CSDN上曾有一篇文章说过只有20%的人能够实现二分查找,看来我在那20%之外了于是想了一下,得出以下实现算法,供大家借鉴。
在Linux中,对于用户的管理是经常都需要的。当然也就包括用户的新增、删除,用户密码的修改。1、新增用户 adduser格式:adduser username说明:这个命令会自动的创建用户、用户组、用户主目录;同时要求输入用户密码等。而useradd只会创建一个用户,其它什么都不会处理。需要注意的是,这个命令需要root用户组才具体执行权限。
新换了服务器后,需要将某个文件夹映射到Windows下做为一个网盘使用,于是安装了samba。但却出现了这种的问题,在samba.conf中添加了[cc]read only = nopath=/var/wwwpublic=yes重启samba,却总是提示找不到网络!我晕哦,怎么会呢?!原来,我的电脑和Debian服务器并不在同一个网段,所以无法连接!这简单嘛,换IP嘛,搞成同一网段即可!这下应该可以了吧!我晕,居然总是没法通过验证!怎么回事呢?我的samba是跑起来了的呀!怎...
近日,在一项目中需要采用JS获取Select选择框所选中项的值,居然一下子忘记了如何获取。于是看了DOM文档,真觉得是自己老了,连这么简单的东西都忘记了。为怕以后再忘记,也给同行一个提示,遂记录于此。