php开发

微信支付在某些情况下加载请求非常慢的问题分析和解决办法

今天在开发公司的项目过程,在使用微信支付的时候,请求非常慢。

主要请求慢的原因是微信支付需要授权,获取openid,

 $tools = new \JsApiPay();
$openId = $tools->GetOpenid();
了解微信的人都知道,微信的授权获取微信openid 需要进行2各小步骤,第一步先获取code,

第二步拿到code,再去请求第二个接口,获取openid。

由于微信授权,普通的浏览器是看不到效果的,所以可以通过抓包的时候来搞,抓包软件,我mac用的是青花瓷

通过一步步分析发现。原来是在第二部的时候,请求非常慢:主要请求接口域名是:

https://api.weixin.qq.com

但是我其他服务器都是好好的,非常快啊,为何部署支付的服务器这么慢呢?

腾讯不应该出现这么慢的服务器啊。

于是分别在2个服务器上ping了下。最后对比下发现,虽然本地和服务器上ping返回的time差不多的,

但是,明显服务器上返回1个ping,本地都返回6~9个ping了,说明还是服务器问题。

如果同时ping  ip的话,就差不多,进而想到,很可能是服务器设置的DNS的问题,

服务器DNS解析的微信接口的API地址非常慢。

ssh 登录下服务器:

看下,dns是使用安徽的一个老的dns,和谷歌的dns,果断换成腾讯的dns和阿里云的dns

搜嘎。感觉速度非常快了。

如果各位遇到这个问题,记得这么去排查下。

这个主要是由微信支付引起的一个微信授权api的问题。


PHP CURL实现并发多线程的抓取url地址

PHP CURL实现并发多线程,主要就是以:curl_multi_ * 的类库。一个简单的demo

另外感觉curl多线程没有想想那么的好,各位适应php的扩展 pthread

$urls = array(
    'http://localhost/test/time.php',
    'http://localhost/test/time.php',
    'http://localhost/test/time.php',
    'http://localhost/test/time.php',
    'http://localhost/test/time.php',
    'http://localhost/test/time.php',
    'http://localhost/test/time.php',



» 阅读全文

砸金蛋:PHP+jQuery实现的砸金蛋中奖功能

砸金蛋:PHP+jQuery实现的砸金蛋中奖功能。当然案例是3个,你也可以改为1个金蛋,进行抽奖

1.png - 大小: 75.65 KB - 尺寸: 1124 x 688 - 点击打开新窗口浏览全图

抽奖算法:



» 阅读全文

关键词: 砸金蛋

刮刮卡:利用HTML5的画布Canvas的实现移动端刮刮卡效果

我们利用HTML5的画布canvas,结合其提供的API,在Canvas元素上绘制一个灰色蒙层,然后通过检测用户鼠标移到和手势来绘制一个透明的图形,这样就能看到Canvas背景下的真实图片,就达到刮刮卡效果。
HTML
我们只需要在页面中加入canvas标签元素,其他的就看javascript的了。注意canvas元素是HTML5才有的元素,运行在支持HTML5的现代浏览器上,特别是移动。

1.png - 大小: 40.87 KB - 尺寸: 966 x 542 - 点击打开新窗口浏览全图

DEMO:


http://www.jincon.com/download/guaguaka/

» 阅读全文

关键词: canvas , 刮刮卡

PHP+jQuery实现的大转盘抽奖程序

PHP+jQuery实现的大转盘抽奖程序

1.png - 大小: 137.97 KB - 尺寸: 1122 x 876 - 点击打开新窗口浏览全图

演示地址:

http://www.jincon.com/download/lottery/

抽奖算法部分:

» 阅读全文

一个java解密算法改写为php解密算法的代码

java了解的太基础了,反正改写解密算法够了,这个解密算法也挺简单的。于是就写了下,将java改为php版本的


public class Jincon {

    public static void main(String []args) {
        String [] names ={"解密的密文"};
        for( String name : names ) {
          System.out.print( name );
          System.out.print(",");
          Decrypt(name) ;

» 阅读全文

关键词: java , php , 解密算法

Centos搭建PHP7.0.x教程,让php5.3和php7兼容共存


本人博客http://www.jincon.com/ 使用的是 php5.3.x版本的,为了装逼测试下,php7 。

本文主要是Centos搭建PHP7.0教程,同时让php5.3和php7共存:

先安装php5.3 就不说,说Centos搭建PHP7.0教程:


# wget  http://php.net/get/php-7.0.4.tar.gz/from/a/mirror

解压安装
# tar zxvf php-7.0.4.tar.gz
# cd php-7.0.4

可以先查看下安装帮助,当然你也可以不管
# ./configure   --help    


由于我博客原本5.3的就是安装在 /usr/local/php 下面,所以新版的php7 我就安装到 /usr/local/php7 了,

1.jpg - 大小: 231.98 KB - 尺寸: 1742 x 728 - 点击打开新窗口浏览全图



» 阅读全文

关键词: php7教程

同一服务器php2个版本php5.3和php5.4共存的搭建笔记

同一服务器php2个版本php5.3和php5.4共存的搭建方法

应一个兄弟帮忙的需求操作这个,兄弟的服务器,一个需要zend+php 5.4 ,一个网站需要 5.3,

之前兄弟直接买了2个服务器,感觉太浪费钱了,于是给他搭建了下,有了以下搭建笔记:

基本上是shell,各位自己试试,深夜了,写的有点乱,有问题留言,


php5.3 我就不管了,网上一堆教程,或者使用lnmp一键安装包各种爽歪歪,

主要说下php5.3和php5.4共存的搭建笔记,源码是 军哥的网站盗的,哈哈


#!/bin/bash

echo  "[+] Installing Php 5.4..."
wget http://soft.vpser.net/web/php/php-5.4.41.tar.gz

tar zxvf php-5.4.41.tar.gz php-5.4.41
cd php-5.4.41


» 阅读全文

关键词: php5.3和php5.4共存