码迷,mamicode.com
首页 > 其他好文 > 详细

技术就是一层窗户纸-于无声处看大神

时间:2017-06-06 10:46:38      阅读:151      评论:0      收藏:0      [点我收藏+]

标签:server   文件   压力   remote   防止   头信息   浏览器   一般来说   des   

技术确实于无声处听惊雷。有的东西须要自己去经历。有的东西则须要自己思考后再高速从别人的经验中获取得到。以最快的方法到达目标。技术就是一层窗户纸,再捅破之前,须要自己切身去思考体会实现之难。最后别人从旁点拨一下,宛如醍醐灌顶。大彻大悟。怪不得他原来就是技术总监。自有他的道理。
1.get 跟 post 的差别。


一般无非就是:1、get通过url提交。能够提交的数据有限。

post是通过http作为content提交,能够提交数据量大。
2、get是通过url提交,对用户可见。

不安全。

post是通过http的content提交,对用户不透明,安全性高。


可是这都基本不是运用真正的差异。

至少安全性。通过简单的抓包就能够得到post的提交的数据,数据一样不安全。

真正应该从结构层面考虑这个问题,究竟什么时候应该用get。什么时候应该用post提交。


应该了解rset.
然后再来看看get跟post。
GET操作是安全的。

所谓安全是指无论进行多少次操作,资源的状态都不会改变。

比方我用GET浏览文章,无论浏览多少次,那篇文章还在那,没有变化。

当然。你可能说每浏览一次文章。文章的浏览数就加一,这不也改变了资源的状态么?这并不矛盾,由于这个改变不是GET操作引起的。而是用户自己设定的服务端逻辑造成的。
POST操作既不是安全的,也不是幂等的。比方常见的POST反复载入问题:当我们多次发出相同的POST请求后,其结果是创建出了若干的资源。



安全和幂等的意义在于:当操作没有达到预期的目标时,我们能够不停的重试,而不会对资源产生副作用。从这个意义上说。POST操作往往是有害的,但非常多时候我们还是不得不使用它。

2.写server压力瓶颈压力

一般server负载均衡,都是一般做主从分离。降低写库的压力,可是假设同一时候对写库訪问呢?

添加一个中间层,类似于cpu跟磁盘之间的效率问题。能够添加一个中间缓存。内存来中间缓存这些资源动作。然后再从中间层一次性提交到sqlserver进行操作。mysql的批量插入,比单独一条条效率会要高非常多。

3,获取ip (header头部信息)
一般获取浏览器端的ip地址,$_SERVER["REMOTE_ADDR"]通过这个全局变量获取。
可是假设浏览器是通过层层server代理訪问的server资源呢?那又怎样获取原始的ip地址?
协议知识:
http协议,都是将ip地址封装在header头信息里面,依次加密。

无论通过多少次代理。都是会将上一次的ip信息封装到header头部信息。

这个应该是当时网络七层协议的基本知识点。
运用到实际的http协议,就是应该能够通过http 的header头部信息拿到原始的ip信息。

4,推断一个数是不是2的倍数最快捷的方法
除以2求余?这是我立刻引入脑海的办法。

办法:利用php自带的转成二进制,1001的形式,末尾为1的肯定是被二整除。

以此为例,三进制,八进制。十六进制。

5,include require细节差异

一般来说:include文件,就算includes的文件有错误。主程序也不会报错。会跳过去,继续运行。
require文件,假设引入的文件有错误。主代码快会停止运行。报错。
为了防止反复引入,一般都会用include_once跟requre_once.

可是问题来了:假设是这种话,那么什么情况都用include_once就能够啦。

为啥还须要require的存在?


这就是,人类非常早曾经制造了刀剑。可是手持刀剑,那也仅仅是简单的刀剑而已。而可以将刀剑有套路的练习下去,才干进化成武术。

这样手里的刀剑,才干发挥最大的作用。

php仅仅是一把武器。掌握php也仅仅是手握一把简单的刀剑而已。简单的语法也许一个月就能够掌握。

可是须要很多其它的实际经历跟经验,才干运用自如,打遍无敌。

技术就是一层窗户纸-于无声处看大神

标签:server   文件   压力   remote   防止   头信息   浏览器   一般来说   des   

原文地址:http://www.cnblogs.com/yutingliuyl/p/6949569.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!