- 博客(157)
- 资源 (11)
- 收藏
- 关注
原创 RTMP低延时配置
listen 1935;max_connections 1000;vhost __defaultVhost__ { tcp_nodelay on min_latency on; play { gop_cache off; queue_length 10; mw_latency 100; } publish { mr ..
2021-01-07 17:38:38 1228 1
原创 SIMD中半精度浮点数转单精度浮点数的方法
SIMD_INLINE float Float16ToFloat32(uint16_t value){ union Bits { float f; int32_t si; uint32_t ui; }v; union Bits2 { float f; int32_t si; uint32_t ui; }s; const int SHIFT = 13; co...
2020-03-24 20:48:22 1052
原创 MySql5.0 Table错误is marked as crashed and last (automatic) repair failed
错误分析:此错误为表损坏,修复即可。一般原因为服务器突然断电,而有程序还在往表里写数据。或者表的数据很大。避免浪费时间去修表。注意服务器操作时停掉数据库。解决办法:首先进入数据库,执行命令 show processlist;查看正在对此表的操作,如果有repire 修复、 读表等相关进程kill 掉再修复。因有相关进程,修复的时候不会报错,但是发现修复完毕后,还是提示这个错误,即...
2016-12-03 21:04:34 6038
原创 python学习笔记(7)-高级特性(三)-列表生成式与生成器
1. 列表生成式列表生成式即List Comprehensions,是python内置非常简单却强大的可以用来创建list的生成式。如:>>> range(1,11)[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]>>> L = []>>> for i in range(1,11):... L.append(i
2016-03-16 10:32:39 657
原创 python学习笔记(6)-高级特性(二)-迭代
如果给一个list或者tuple,我们可以通过for循环来遍历这个列表或者元组,这种遍历就是迭代。 在python中,使用for...in 来完成迭代的。python的for循环不仅可以用在list或者tuple上,还可以作用在其他可迭代对象上,对于有无下标,只要是可迭代对象,都可以迭代,比如dict:>>> s = {'a':1,'b':2,'c':3}>>> for
2016-03-16 10:30:44 559
原创 python学习笔记(5)-高级特性(一)-切片
前提: 对于经常取指定索引范围的操作,用循环十分繁琐,python提供了切片(slice)操作符,能大大简化这种操作。 对于一个元组或列表,取特定元素,只需要一行代码就搞定。>>> Name = ['xiaohong','xiaofang','xiaowang','xiaoxiao'][0:3]表示取列表中前三个元素,从索引0开始,到3结束,但不
2016-03-16 09:01:56 463
原创 python学习笔记(4)-进程和线程(二)-多线程
1. 多任务可以由多进程完成,也可以由一个进程内的多个线程完成。一个进程至少有一个线程。Python的标准库提供了两个模块,thread和threading,thread是低级模块,threading是高级模块,对thread进行了封装,绝大多数下,我们只需要使用threading这个高级模块。启动一个线程就是把一个函数传入并创建Treading实例,然后调用start() 开始执行。
2016-03-15 12:00:04 528
原创 python学习笔记(3)-进程和线程(一)-多进程
一. 多进程1. 要让python实现多进程,首先了解操作系统的知识。Unix/Linux操作系统提供了一个fork()系统调用,它非常特殊。普通的函数调用,调用一次返回一次,但是fork()调用一次,返回两次,因为操作系统自动把当前进程(父进程)复制了一份(子进程)。然后分别在父进程和子进程内返回。子进程永远返回0,而父进程返回子进程的ID,这样做的理由是,一个父进程可以fork
2016-03-15 10:06:12 610
原创 python学习笔记(2)-IO编程
一. 文件读写 读写文件就是请求操作系统打开一个文件对象,然后通过操作系统提供的接口从这个文件对象中读取数据,或者把数据写入这个文件对象。1.读文件 try: f = open('demo1.py', 'r') print f.read()finally: if f: f.close()调用read()会一次性读取文件的
2016-03-14 18:33:38 412
原创 python学习笔记(1)-错误处理、调试和测试
一. 错误处理python内置try...except...finally...的错误处理机制。示例:try: print 'try...' r = 10 / 0 print 'result:', rexcept ZeroDivisionError, e: print 'except:', efinally: print 'finally..
2016-03-14 17:40:07 799
原创 varnish性能测试
为了测试反向代理服务器带来的性能的提升,测试一下使用反向代理服务器和不使用反向代理服务器的性能数据对比。1. 不使用反向代理测试对一幅图片57817字节的图片进行1000次请求,并发量为100,性能数据如下:经过多次测试,发现在没有使用反向代理的情况下,apache每秒处理4500~5000个请求。2.接下来使用varnish反向 代理加速http请
2016-03-11 16:16:03 1388
转载 Web性能压力测试工具之ApacheBench(ab)详解
PS:网站性能压力测试是性能调优过程中必不可少的一环。只有让服务器处在高压情况下才能真正体现出各种设置所暴露的问题。apache中有个自带的,名为ab的程序,可以对apache或其它类型的服务器进行网站访问压力测试。ApacheBench命令原理:ab命令会创建很多的并发访问线程,模拟多个访问者同时对某一URL地址进行访问。它的测试目标是基于URL的,因此,既可以用来测试Apache的负载
2016-03-11 09:50:56 750 1
原创 web 应用加速方案:Varnish
在没有任何优化的情况下,每一个HTTP请求,web服务器都必须从服务器的磁盘中读取请求页面的数据,然后发送给客户端。相对内存访问速度来说,磁盘访问的速度及其缓慢(内存访问速度是磁盘访问速度的10的5次方到6次方倍)。把访问过的页面缓存到内存中,下次访问直接从内存中读取,能有效的加快web应用的访问速度。传统代理与反向代理: 一般情况下,使用浏览器直接连接其他Internet站
2016-03-11 09:29:41 720
原创 nginx 多站点配置
在nginx配置文件下,nginx.conf 中添加站点配置文件,例如 gaosj.conf 里配置了 gaoshijun.me 站点的信息,就在nginx.conf中 include /path/gaosj.conf 即可。
2016-03-10 16:44:05 349
转载 Varnish的安装与配置
一、Varnish的安装与配置1、Varnish安装(rpm包软件)rpm --nosignature -i https://repo.varnish-cache.org/redhat/varnish-3.0.el5.rpmyum install varnish varnish-libs-devel -y接口如有安装疑惑请访问varnish官网https
2016-03-10 15:48:06 529
转载 Nginx支持php配置
Nginx本身是不支持对外部程序的直接调用或者解析,所有的外部程序(包括PHP)必须通过FastCGI接口来调用。FastCGI接口在Linux 下是socket,(这个socket可以是文件socket,也可以是ip socket)。为了调用CGI程序,还需要一个FastCGI的wrapper(wrapper可以理解为用于启动另一个程序的程序),这个 wrapper绑定在某个固定socket
2016-03-09 15:42:10 564
原创 centos7 下GPRS-Modem 短信猫配置以及发送短信调试说明
说明:短信猫配置为:GPRS-Modem ; 有人公司旗下的一款。为USB口短信猫,并使用了串口转接线。1.准备usb口短信猫还是九口串行线短信猫。串口短信猫不需要装驱动,usb口可以使用usb转串口线。使用转串口线也不要装驱动。工具:linux下 minicom2.7 下载地址 http://download.csdn.net/detail/u012675743/94565
2016-03-09 15:14:25 2668
原创 openssl生成证书,双向验证
1. 首先生成服务器端的私钥server.key,同理也可以生成客户端的key,client.key:openssl genrsa -des3 -out server.key 10242.生成签名的公钥client.crt:openssl req -new -x509 -key client.key -out client.crt -days 3
2016-03-09 14:41:05 1085
原创 php标准库(SPL)-SPL函数
array class_implements ( mixed $class [, bool $autoload ] ) — 返回指定的类实现的所有接口。array class_parents ( mixed $class [, bool $autoload ] ) — 返回指定类的父类。int iterator_apply ( Traversable $iterator , cal
2016-03-09 14:35:53 852
原创 php标准库(SPL)-迭代器-AppendIterator和ArrayIterator详解
原型:AppendIterator extends IteratorIterator implements OuterIterator {/* 方法 */public __construct ( void )public void append ( Iterator $iterator )public mixed current ( void )public void g
2016-03-09 14:00:12 1245
原创 php标准库(SPL)-数据结构(二)-SplStack详解
2.SplStack原型:SplStack extends SplDoublyLinkedList implements Iterator , ArrayAccess , Countable {/* 方法 */__construct ( void )void setIteratorMode ( int $mode )/* 继承的方法 */public void SplDo
2016-03-09 11:59:08 1084
原创 php标准库(SPL)-数据结构(一)-SplDoublyLinkedList详解
SPL是用于解决典型问题(standard problems)的一组接口与类的集合。1. SplDoublyLinkedList 原型:SplDoublyLinkedList implements Iterator , ArrayAccess , Countable {/* 方法 */public __construct ( void )public void
2016-03-09 11:33:18 901
转载 PHP中用var_export和serialize做数组缓存的性能测试
一般我们把数组缓存到文件中的话,都是先要转成字符串的形式,然后再存入文本文件中,一般有两种机制把数组转成字符串,第一种是$str = var_export($arr, true);第二种是$str = serialize($arr);这两种机制转换之后的字符串是不一样的,第一种是数组的原型模式,第二种是序列化后的形式。第一种存入文件中的只要加上标签,就形式了一个可用的数组原
2016-01-21 10:49:51 768
转载 他山之石-查找附近点--Geohash方案讨论
随着移动终端的普及,很多应用都基于LBS功能,附近的某某(餐馆、银行、妹纸等等)。基础数据中,一般保存了目标位置的经纬度;利用用户提供的经纬度,进行对比,从而获得是否在附近。目标:查找附近的XXX,由近到远返回结果,且结果中有与目标点的距离。针对查找附近的XXX,提出两个方案,如下:一、方案A:====================================
2016-01-19 19:58:36 404
原创 php扩展geoIP的使用
geoIP扩展可以通过IP地址获取用户详细的位置信息。是一种以键值的方式存取数据。GeoCounty => GeoIP.Example: <?PHP include('geoip.inc.php'); //打开数据文件 $gi = geoip_open("GeoIp.dat",GEOIP_STANDARD); //获取国家名称 $country_name
2016-01-19 19:43:22 1051
转载 他山之石-部署PHP时的4个配置修改说明
以下就是部署PHP时的4个配置修改说明,大家一个一个进行学习研究。1、short_open_tag 是什么呢? 决定是否允许使用代码开始标志的缩写形式( )。 如果要和 XML 结合使用PHP,可以禁用此选项以便于嵌入使用 。否则还可以通过php来输出, 例如: 。 如果禁用了,必须使用 PHP 代码开始标志的完整形式( )。 注意:本指令
2016-01-19 18:26:40 358
转载 他山之石-刷新PHP缓冲区为你的站点加速
这篇文章主要介绍了通过刷新PHP缓冲区可以加速你的站点,非常实用的小技巧,需要的朋友可以参考下 在当前 PHP 版本的默认配置下,“输出缓冲(Output Buffering)”是被打开的。旧版本则不是这样,在旧版本的 PHP 中,字符串在每次被输出的时候(通过 echo 或 print 函数),都会触发一次发送到客户端浏览器的动作。“输出缓冲”的引入,使得这一过程更加快速、更加高效
2016-01-19 08:39:55 347
转载 他山之石-php编译中遇到error解决办法!
1) Configure: error: xml2-config not found. Please check your libxml2 installation.Solutions :Quote:#yum install libxml2 libxml2-devel (For Redhat & Fedora)# aptitude install libxml2-dev (For
2015-12-31 11:15:03 506
转载 他山之石-PHP多线程的实现方法详解
多线程是java中一个很不错的东西,很多朋友说在php中不可以使用PHP多线程了,其实那是错误的说法PHP多线程实现方法和fsockopen函数有关,下面我们来介绍具体实现程序代码,有需要了解的同学可参考。 当有人想要实现并发功能时,他们通常会想到用fork或者spawn threads,但是当他们发现php不支持多线程的时候,大概会转换思路去用一些不够好的语言,比如perl。
2015-12-26 19:14:03 678
转载 他山之石-sphinx全文检索之PHP使用教程
数据表:CREATE TABLE email (emailid mediumint(8) unsigned NOT NULL auto_increment COMMENT '邮件id',fromid int(10) unsigned NOT NULL default '0' COMMENT '发送人ID',toid int(10) unsigned NOT NULL default
2015-12-23 21:57:06 429
转载 他山之石-php缓存技术总结
1、全页面静态化缓存也就是将页面全部生成html静态页面,用户访问时直接访问的静态页面,而不会去走php服务器解析的流程。此种方式,在CMS系统中比较常见,比如dedecms;一种比较常用的实现方式是用输出缓存:Ob_start()******要运行的代码*******$content = Ob_get_contents();****将缓存内容写入html文件*****
2015-12-23 13:30:44 473
转载 【php中的curl】php中curl的详细解说
cURL可以使用URL的语法模拟浏览器来传输数据,因为它是模拟浏览器,因此它同样支持多种协议,FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE 以及 LDAP等协议都可以很好的支持,包括一些:HTTPS认证,HTTP POST方法,HTTP PUT方法,FTP上传,keyberos认证,HTTP上传,代理服务器,cooki
2015-12-03 13:34:10 417
原创 php启用zend guard loader扩展问题
经过测试,我使用的phpstudy 配置的环境。要想启用该扩展,必须将thread safe设置为disabled状态。其中php5.3版本已经不能支持手动启用和禁用threadsafe。需要切换版本为5.4或者更高(更高版本没有测试过) 。首先说下在使用phpstudy切换版本时可能出现的问题,我在测试时出现了500 系统内部错误,此时首先检查软件版本是否最新,升级后解决问题。
2015-10-11 21:24:47 4413
原创 继承父类配置smarty
继承父类然后重写其私有属性是不可能的。在不改其源代码的情况下,这就需要使用smarty提供的两个接口函数。setTemplateDir()和setCompileDir()配置如下:class Mysmarty extends Smarty{ publicfunction __construct(){
2015-09-20 10:40:01 679
原创 调用webservice接口实现几个查询
写着玩玩.....1. 查询手机号码归属地 查询手机号码归属地 请输入正确的手机号进行查询... <?PHP ERROR_REPORTING(0); $code = $_POST['code']; if($_POST['submit']){ $soapclient = new SoapClien
2015-09-10 10:16:05 2469
原创 SOAP-ERROR: Parsing WSDL: Couldn't load from * ,Premature end of data in tag definitions line 2
今天写了个wsdl.xml,测试的时候出现这个错误:SOAP-ERROR: Parsing WSDL: Couldn't load from '*\soap\wsdl.xml' : Premature end of data in tag definitions line 2找了找网上资料,和我问题相似的有很多,但是最终没有得到解决,汇下总:1. 在php.ini中打开soap需要的扩
2015-09-09 21:07:57 6126
转载 免费的webservice接口
股票行情数据 WEB 服务(支持香港、深圳、上海基金、债券和股票;支持多股票同时查询)Endpoint: http://webservice.webxml.com.cn/WebServices/StockInfoWS.asmx 复制 EndpointDisco: http://webservice.webxml.com.cn/WebServices/StockInfoWS.asmx?dis
2015-09-09 16:04:31 643
原创 猴子选大王
问题描述:一群猴子按编号围成一圈,然后从第一只开始数,数到第m只,把他踢出圈,然后再从他后面开始数,数到第m只,再把他踢出圈,如此下去,直到剩下最后一个猴子为止。算法实现:<?PHP function MonkeyKing($n,$m){ $monkey = range(1,$n);//生成1-n的数组 $i = 0; while(count($monkey)>1
2015-08-25 10:13:04 705
原创 strip_tags()函数使用注意
strip_tags ()函数用来 从字符串中去除 HTML 和 PHP 标记。示例:<?php$text = 'Test paragraph. Other text' ;echo strip_tags ( $text );echo "\n" ;// 允许 和 echo strip_tags ( $text , '' );?>今天在写博客项目的时候,发现使用此函数时,会
2015-08-14 15:39:48 4561
原创 二分查找
算法解析: 如果搜寻的数列已经排好序,应该尽量利用他们排好序的特性,以减少搜寻比对的次数,这是查找的基本原则,二分查找就是这个原则的代表。在二分查找中,从数列的中间开始查找,如果这个数小于我们所要查找的数,由于数列已排序,则该数左边的数一定小于要查找的数,如果要查找的数大于中间数,则从左边查找。算法实现:<?PHPfunction bin_sch($ar
2015-08-13 09:22:09 610
docker_rpm.zip
2020-05-26
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人