zoukankan      html  css  js  c++  java
  • 技术就是一层窗户纸-于无声处看大神

    技术确实于无声处听惊雷。有的东西须要自己去经历。有的东西则须要自己思考后再高速从别人的经验中获取得到。以最快的方法到达目标。技术就是一层窗户纸,再捅破之前,须要自己切身去思考体会实现之难。最后别人从旁点拨一下,宛如醍醐灌顶。大彻大悟。怪不得他原来就是技术总监。自有他的道理。
    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也仅仅是手握一把简单的刀剑而已。简单的语法也许一个月就能够掌握。

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

  • 相关阅读:
    IOS 修改UIAlertController的按钮标题的字体颜色,字号,内容
    UITableView heightForHeaderInSection遇到的坑
    .19-浅析webpack源码之compile流程-rules参数处理(2)
    .18-浅析webpack源码之compile流程-rules参数处理(1)
    .17-浅析webpack源码之compile流程-入口函数run
    .16-浅析webpack源码之编译后流程梳理
    .15-浅析webpack源码之WebpackOptionsApply模块-plugin事件流总览
    .14-浅析webpack源码之Watchpack模块
    .13-浅析webpack源码之WatcherManager模块
    .12-浅析webpack源码之NodeWatchFileSystem模块总览
  • 原文地址:https://www.cnblogs.com/yutingliuyl/p/6949569.html
Copyright © 2011-2022 走看看