什么是内存泄露?什么引起的
内存泄漏是因为一块被分配内存既不能被使用,也不能被回收,直到进程结束。 原理上是不合理的内存使用造成变量不能释放;资源不释放,具体原因还看情况。
ip地址可以被伪造吗?
开发层面很难,因为ip在传输层,而应用层面的修改比较容易。
有100万个奖品,没人可中3次,怎么办?
这个问题的关键解决的点有两个,有限资源读写更新一致的问题,也就是锁;并发的处理。 读写更新涉及到脏读、表锁一致性,是否允许不一致的情况,是否用分布式所,数据量太大是否需要用到异步; 并发的问题负载均衡,增加qps能力,缓存的应用。 总之缓存、异步、分布式。
btree索引与hash索引的长度复杂度?为什么不用hash索引?
O(log(n)),O(1) 因为hash是散列的,不支持范围查找。
memcache跟redis的区别
我觉得这两个东西不该一起比较,应该算两个对于KV存储的阶段,memcache进本满足我们高效, 要求,但是不能持久化、分布式支持不够问题还是要redis更好,对于各种类型的查询复杂度优化, 高可用性的支持更好。
php快速输出响应
fastcgi_finish_request(),会立刻断开http连接并返回输出,支持php-fpm的fastcgi模式, Apache可以用 ob_end_flush(); ob_start();
怎么对系统的QPS进行优化
提高QPS可以从水平和垂直两个反面进行,水平扩展机器,垂直可采用增加一步特性(减少耗时处理)、减少数据库交互、优化业务逻辑。
mysql查询优化有什么心得
索引、关联查询、返回列优化 是否可以将一个复杂查询分成多个简单查询 优化COUNT()查询 优化关联查询