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

技术确实于无声处听惊雷,有的东西需要自己去经历,有的东西则需要自己思考后再快速从别人的经验中获取得到。以最快的方法到达目标。技术就是一层窗户纸,再捅破之前,需要自己切身去思考体会实现之难,最后别人从旁点拨一下,犹如醍醐灌顶,大彻大悟。怪不得他原来就是技术总监,自有他的道理。
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.写服务器压力瓶颈压力

一般服务器负载均衡,都是一般做主从分离。减少写库的压力,但是如果同时对写库访问呢?

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

3,获取ip (header头部信息)
一般获取浏览器端的ip地址,$_SERVER["REMOTE_ADDR"]通过这个全局变量获取。
但是如果浏览器是通过层层服务器代理访问的服务器资源呢?那又如何获取原始的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也只是手握一把简单的刀剑而已。简单的语法或许一个月就可以掌握。但是需要更多的实际经历跟经验,才能运用自如,打遍无敌。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值