您好,欢迎光临! 推荐您使用Chrome浏览器访问本站。

php_network_getaddresses: getaddrinfo failed: Name or service not known

1,040 views
php_network_getaddresses: getaddrinfo failed: Name or service not known  在使用 file_get_contents远程请求url时,出现警告:   php_network_getaddresses: getaddrinfo failed: Name or servicenot known   这个问题通常是由于 Apache/PHP主机连不上dns服务器。   首先,要在命令行下检查,是否能ping通远程主机。   如果ping不通,那么你的name server(如果是fedora,在/etc/resolv.conf文件中)设置有问题。找一个可以使用的dns,   用该dns的ip替换/etc/resolv.conf 中第一个nameserver的ip,然后重启apache。   如果能ping通,那么apache现在连的是一个有问题的dns服务器。你需要重启......

秒杀核心设计(减库存部分)-防超卖与高并发

1,182 views
秒杀核心设计(减库存部分)-防超卖与高并发假设有两个表,一个存放buy_record用户秒杀记录,一个是产品表goods 通过在buy_record添加uid,goods_id并加唯一索引 开启事务 插入 insert into buy_record if(唯一索引报错?){ 抛异常,用户已经秒过了,回滚 }else{ update goods set goods_num=goods_num-1  where goods_id=$goods_id and goods_num>0 ;//更新库存 if(受影响行数<=0){ 抛异常,商品秒完了,回滚 } }       其他方案: 主要思路: 1、前端三板斧【扩容】【限流】【静态化】 2、后端两条路【内存】+【排队】   解决方案1: 将存库从MySQL......

MySQL5.6之Index Condition Pushdown(ICP,索引条件下推)

750 views
MySQL5.6之Index Condition Pushdown(ICP,索引条件下推)ICP(index condition pushdown)是mysql利用索引(二级索引)元组和筛字段在索引中的where条件从表中提取数据记录的一种优化操作。ICP的思想是:存储引擎在访问索引的时候检查筛选字段在索引中的where条件(pushed index condition,推送的索引条件),如果索引元组中的数据不满足推送的索引条件,那么就过滤掉该条数据记录。ICP(优化器)尽可能的把index condition的处理从server层下推到storage engine层。storage engine使用索引过过滤不相关的数据,仅返回符合index condition条件的数据给server层。也是说数据过滤尽可能在st......

APNs 推送原理及如果提高推送质量

723 views
APNs 推送原理及如果提高推送质量在 iOS 平台上,大部分应用是不允许在后台运行并连接网络的。在应用没有被运行的时候,只能通过 Apple Push Notification Service (APNs) 把数据发送到终端用户。对于互联网应用,正确高效的使用 APNs 显然非常重要。 Apple 为应用开发者提供了一个 APNs  推送接口,称为 binary interface。 Binary Interface V1 最初版本的 binary interface 协议如下图,这里我们称之为 v1。 Binary Interface V1 v1 协议有几个问题: 消息是否发送成功没有明确的反馈; 如果一个消息发送失败,比如因为 deviceToken 不合法,APNs 会在大约 500......

phpredis ‘RedisException’ with message ‘read error on connection’

2,505 views
phpredis ‘RedisException’ with message ‘read error on connection’问题: redis扩展是基于php 的socket方式实现的 php.ini中的一个配置项:default_socket_timeout = 60 因此该参数同样起作用。 解决方法: 1、直接修改php.ini,将其设置为我们想要的值(这个不推荐) 2、在脚本中设置:ini_set(‘default_socket_timeout’, -1); //不超时