zoukankan      html  css  js  c++  java
  • 总结一些面试的问题

    1、redis是单线程还是多线程?

    redis是单线程的,memcached使用的是多线程

    http://blog.jobbole.com/100079/

    2 、redis数据类型?set集合的大小?list中BLPOP和LPOP的区别?

    string list hash set 有序set

    scard key

    BLPOP 是列表的阻塞式(blocking)弹出原语。

    它是 LPOP 命令的阻塞版本,当给定列表内没有任何元素可供弹出的时候,连接将被 BLPOP 命令阻塞,直到等待超时或发现可弹出元素为止。

    3、yaf的本地类和全局类

    全局类是指, 所有产品之间共享的类, 这些类库的路径是通过ap.library在php.ini(当然,如果PHP在编译的时候, 支持了with-config-file-scan-dir,那么也可以写在单独的ap.ini中)

    而本地类是指, 产品自身的类库, 这些类库的路径是通过在产品的配置文件中, 通过ap.library配置的.

    在Yaf中, 通过调用Yaf_Loader的registerLocalNamespace方法, 来申明那些类前缀是本地类, 即可.

    http://www.laruence.com/manual/yaf.autoloader.html#yaf.autoloader.library

    4、php7新特性?

    标量类型声明

    返回值类型声明

    null合并符

    太空船操作符

    define 定义常量数组

    匿名类

    http://php.net/manual/zh/migration70.new-features.php

    5、php魔术方法

    __construct(), __destruct(), __call(), __callStatic(), __get(), __set(), __isset(), __unset(), __sleep()__wakeup(), __toString(), __invoke(), __set_state(), __clone() 和 __debugInfo() 

    http://php.net/manual/zh/language.oop5.magic.php#object.invoke

    6、php的unset会释放内存吗?
    别怀疑,PHP的unset确实会释放内存(当然, 还要结合引用和计数, 这部分的内容请参看我之前的文章深入理解PHP原理之变量分离/引用), 但这个释放不是C编程意义上的释放, 不是交回给OS.而会把这块内存, 归入自己维护的空闲内存列表. 而对于小块内存来说, 更可能的是, 把它放到内存缓存列表中去(后记, 某些版本的PHP, 比如我验证过的PHP5.2.4, 5.2.6, 5.2.8, 在调用get_memory_usage()的时候, 不会减去内存缓存列表中的可用内存块大小, 导致看起来, unset以后内存不变, 见评论).

    http://www.laruence.com/2011/03/04/1894.html

    7、如何防止对外的公共接口被刷(如短信接口)?

    (1)增加图形验证
    (2)单IP请求次数限制
    (3)限制号码发送

    https://zhuanlan.zhihu.com/p/20879468

  • 相关阅读:
    Linux 命令笔记
    MySQL指令笔记
    悲观锁与乐观锁
    缓存在高并发场景下的常见问题
    死锁相关问题
    Java并发性和多线程
    Java同步和异步,阻塞和非阻塞
    内存溢出和内存泄漏
    JavaAndroid项目配置文件笔记
    Maven安装配置
  • 原文地址:https://www.cnblogs.com/dilei/p/6403175.html
Copyright © 2011-2022 走看看