自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(28)
  • 资源 (6)
  • 收藏
  • 关注

转载 使用swoole实现异步任务处理

使用swoole实现异步任务处理,有以下几个目标:能够异步非阻塞处理任务能够实时查询任务状态任务完成之后,可以执行一些操作或者回调swoole内置的swoole_http_server正好非常适合处理这种业务,示例代码实现如下#!/bin/env php<?php$http = new swoole_http_server("0.0.0.0", 9501);

2017-12-19 09:15:22 2440

转载 RPC是什么

什么是rpc框架先回答第一个问题:什么是RPC框架? 如果用一句话概括RPC就是:远程调用框架(Remote Procedure Call)那什么是远程调用?通常我们调用一个php中的方法,比如这样一个函数方法: localAdd(10, 20),localAdd方法的具体实现要么是用户自己定义的,要么是php库函数中自带的,也就说在localAdd方法的代码实现在本地

2017-12-12 11:32:30 868

转载 DAL、DAO、ORM、Active Record辨析

模型 Model模型是MVC中的概念,指的是读取数据和改变数据的操作(业务逻辑)。一开始我们直接把和数据库相关的代码放在模型里(sql直接写在代码中),这样就会导致以后的维护相当麻烦。业务逻辑的修改都需要开发者重新写sql,如果项目需要分库,需要将sql语句抽出来,放到单独的一层。这一层就是DAL(数据访问层)。持久层Persistence持久层只是一个逻辑概念而已,主要任

2017-12-08 12:46:30 759

转载 一致性哈希算法原理

一致性Hash算法背景  一致性哈希算法在1997年由麻省理工学院的Karger等人在解决分布式Cache中提出的,设计目标是为了解决因特网中的热点(Hot spot)问题,初衷和CARP十分类似。一致性哈希修正了CARP使用的简单哈希算法带来的问题,使得DHT可以在P2P环境中真正得到应用。  但现在一致性hash算法在分布式系统中也得到了广泛应用,研究过memcached缓存数

2017-12-08 11:10:03 199

转载 php-app开发接口加密范例

/**inc 解析接口客户端接口传输规则:1.用cmd参数(base64)来动态调用不同的接口,接口地址统一为 http://a.lovexpp.com2.将要传过来的参数组成一个数组,数组添加timestamp元素(当前时间戳,精确到秒),将数组的键值按照自然排序从大到小排序3.将数组组成 key=val&key=val的形式的字符串,将字符串与XPP_KEY连接在一起,用md5加密

2017-12-08 11:07:12 466

转载 解决“Failed to convert path to a short DOS path: C:\Windows\system32\java.exe” 问题

官方Android SDK for windows通常可以从http://dl.google.com/android/android-sdk_r*-windows.zip下载,但这个地址下载的sdk中不包括platform-tools、platform等关键性文件夹,这些文件通常是从下载的android-sdk-windows中启动AVD Manager.exe进行下载的,而国内访问Google站

2012-07-13 14:07:37 1287

转载 mysql常用的hint

<br />对于经常使用oracle的朋友可能知道,oracle的hint功能种类很多,对于优化sql语句提供了很多方法。同样,在mysql里,也有类似的hint功能。下面介绍一些常用的。<br /><br />强制索引 FORCE INDEX<br />SELECT * FROM TABLE1 FORCE INDEX (FIELD1) …<br />以上的SQL语句只使用建立在FIELD1上的索引,而不使用其它字段上的索引。<br />忽略索引 IGNORE INDEX<br />SELECT

2011-03-24 10:31:00 335

转载 解读Supesite的数据库缓存与文件缓存机制

各种系统开发中都会大量的使用缓存,用于提高程序执行速度,避免过于频繁的查询或者是过于复杂的查询的性能消耗。例如网站名称这样的设置项,每个页面都会调用到,这属于频繁查询。另外一种比如是一个连接了3,4个表的sql查询,每次查询都会造成很大的数据库消耗,这属于复杂查询。supesite中的缓存类型supesite中有2种缓存,一种是文件缓存,一种是数据库缓存。文件缓存的做法就是执行一次查询,然后将返回的结果生成一个.php的缓存文件,可以直接在程序中include进来,所有需要的地方都是直接include,

2011-03-24 09:40:00 1078

原创 Drupal: apachesolr与apachesolr_attachments的安装与配置

<br />1. 分别从http://drupal.org/project/apachesolr与http://drupal.org/project/apachesolr_attachments这两个模块,解压到sites/all/modules目录下。<br /> <br />2. 先别急着激活这两个模块。先检查本机是否安装了java5以上和PHP5.1.4以上。如果是PHP5.2以下,那么则需要更为复杂的步骤,请参考apachesolr目录下的README.txt。java最好安装JDK,不要J

2011-02-22 18:57:00 780 1

转载 PHP代码优化

<br />1.如果一个方法可静态化,就对它做静态声明。速率可提升至4倍。<br /><br />2.echo 比 print 快。<br /><br />3.使用echo的多重参数(译注:指用逗号而不是句点)代替字符串连接。<br /><br />4.在执行for循环之前确定最大循环数,不要每循环一次都计算最大值。<br /><br />5.注销那些不用的变量尤其是大数组,以便释放内存。<br /><br />6.尽量避免使用__get,__set,__autoload。<br /><br />7.req

2011-02-17 23:37:00 366

转载 使用MySQL-Proxy实现数据库读写分离

<br />MySQL-Proxy处在MySQL数据库客户和服务端之间的程序,它支持嵌入性脚本语言Lua。这个代理可以用来分析、监控和变换(transform)通信数据,它支持非常广泛的使用场景: <br />1·负载平衡和故障转移处理 <br />2·查询分析和日志 <br />3·SQL宏(SQL macros) <br />4·查询重写(query rewriting) <br />5·执行shell命令 <br />MySQL Proxy最强大的一项功能是实现“读写分离(Read/Write Spl

2011-02-17 23:00:00 428

原创 Mysql索引优化 (查阅整理)

<br />一、什么是索引?<br /><br />  索引用来快速地寻找那些具有特定值的记录,所有MySQL索引都以B-树的形式保存。如果表有1000个记录,通过索引查找记录至少要比顺序扫描记录快100倍。如果不加索引的话,那么查找任何哪怕只是一条特定的数据都会进行一次全表扫描,如果一张表的数据量很大而符合条件的结果又很少,那么不加索引会引起致命的性能下降。但是也不是什么情况都非得建索引不可,比如性别可能就只有两个值,建索引不仅没什么优势,还会影响到更新速度,这被称为过度索引。<br

2011-02-17 18:35:00 452

转载 MySQL查询的性能优化 – 查询缓冲提高查询速度

一般我们使用SQL语句进行查询时,数据库服务器每次在收到客户端发来SQL后,都会执行这条SQL语句。但当在一定间隔内(如1分钟内),接到完 全相同的SQL语句,也同样执行他。虽然这样能确保数据的实时性,但在大多数时候,数据并不需求完全的实时,也就是说能有一定的延时。如果是这样的话,在 短时间内执行完全相同的SQL就有些得不偿失。  幸好MySQL为我们提供了查询缓冲的功能(只能在MySQL 4.0.1及以上版本使用查询缓冲)。我们能通过查询缓冲在一定程度上提高查询性能。  我们能通过在MyS

2011-02-17 16:02:00 529

转载 通过JSONP实现JQuery跨域

<br /><br />什么是JSONP<br /><br />JSONP即JSON with Padding。由于同源策略的限制,XmlHttpRequest只允许请求当前源(域名、协议、端口)的资源。如果要进行跨域请求,我们可以通过使用 html的script标记来进行跨域请求,并在响应中返回要执行的script代码,其中可以直接使用JSON传递javascript对象。这种跨域的通讯方式称为JSONP。<br />对于上面的解释,我们可以简单这样理解:JSONP就是可以通过JavaScript

2011-02-16 11:07:00 1870

转载 “InnoDB”和“MyISAM”的不同之处

<br />InnoDB和MyISAM是许多人在使用MySQL时最常用的两个表类型,这两个表类型各有优劣,视具体应用而定。基本的差别为:MyISAM类型不支持事务处理等高级处理,而InnoDB类型支持。MyISAM类型的表强调的是性能,其执行数度比InnoDB类型更快,但是不提供事务支持,而InnoDB提供事务支持已经外部键等高级数据库功能。<br /><br />  MyIASM是IASM表的新版本,有如下扩展:<br /><br />  1·二进制层次的可移植性。<br />

2011-02-15 18:53:00 400

转载 基本的SQL语句练习(学生课程表)

创建表DROP TABLE IF EXISTS student;CREATE TABLE student(sno int auto_increment primary key,sname varchar(8),ssex varchar(3),sage int ,sclass varchar(6)) ENGINE=InnoDB DEFAULT CHARSET=utf8;INSERT INTO student(sname,ssex,sage,sclass) VALUES('李

2011-02-15 18:47:00 3248

转载 HTTP协议

<br />HTTP协议是什么?<br />简单来说,就是一个基于应用层的通信规范:双方要进行通信,大家都要遵守一个规范,这个规范就是HTTP协议。<br />HTTP协议能做什么?<br />很多人首先一定会想到:浏览网页。没错,浏览网页是HTTP的主要应用,但是这并不代表HTTP就只能应用于网页的浏览。HTTP是一种协议,只要通信的双方都遵守这个协议,HTTP就能有用武之地。比如咱们常用的QQ,迅雷这些软件,都会使用HTTP协议(还包括其他的协议)。<br />HTTP协议如

2011-02-15 18:09:00 256

转载 PHP编码规范

一、 变量命名a) 所有字母都使用小写b) 首字母根据变量值类型指定i. 整数iii. 浮点数fiii. 字符串siv. 布尔值bv. 数组avi. 对象ovii. 资源rviii. 混合类型mc) 使用’_’作为每一个词的分界例如:$i_age_max

2011-02-15 17:36:00 234

原创 内容发布后的节点跳转问题

<br />在ez publish中每创建或修改完成一个节点的内容,按发布按钮提交后,页面总会跳转到其父节点而不是我们创建或编辑本身节点。其实在ez publish中已经考虑到了用户这种需求。我们在kernel/content/edit.php的第90行开始可以看到这样一串代码:<br />// Remember redirection URI in session for later use.// Note: This code is safe to place before permission c

2011-02-15 14:22:00 326

转载 构建大型网站所面临的问题

<br />如何构建大型网站?大家都是很关心的话题。其中大型网站架构包括高互动性高交互性的数据型大型网站,以高负载高数据交换高数据流动性的网站为例,比如海内,开心网等类似的web2.0系列架构。我们从架构的方面去看问题,实现语言方面并不是问题,语言的优势在于实现而不是好坏,不论你选择任何语言,架构都是必须要面对的。<br />这里讨论一下大型网站需要注意和考虑的问题:<br />1、海量数据的处理<br />众所周知,对于一些相对小的站点来说,数据量并不是很大,select和update就可以解决我

2011-02-14 11:50:00 377

原创 Drupal 安装wysiwyg所见即所得编辑器(tinymce )并汉化

编辑器的使用数FCKeditor大家最比较熟悉。今天自己做一个站,想尝试用一用tinymce,其实都差不到哪里去,只是尝个新鲜。1. 下载Wysiwyg APIhttp://drupal.org/project/wysiwyg 版本与drupal版本适合即可,解压到sites/all/modules 目录里面。后台激活Wysiwyg模块。2. 在admin->settings->wysiwyg profile安装配置下面,有很多编辑器可供选择安装。我们用的是tinymce编辑器,所以到 http://t

2011-02-13 22:22:00 2399

原创 Drupal模块后台配置的分析

<br />开始接触drupal,难免对模块里面的函数摸不着头脑。这里以Question模块为例,分析后台配置表单的生成处理以及数据的存储等一系列过程。<br /> <br />首先看下question_menu函数:<br />function question_menu() { $items = array(); $items['admin/content/question'] = array( 'title' => 'Questions', 'description'

2011-02-12 16:46:00 822

转载 PHP编译转换工具

<br />    目前有很多工具可以将PHP转换成C或C++,编译成二进制可执行文件、PHP扩展、CGI/FastCGI形式的Web程序、内嵌web server(MicroServer)形式的离线Web应用、使用PHP-GTK的桌面图形界面应用、以及控制台应用软件,包括PHC(http://www.phpcompiler.org/)、PCC(RoadSand PHP Compiler,http://code.roadsend.com/pcc)、 RPHP(RoadSand Raven,htt

2011-02-11 23:33:00 1106

原创 PHP基本知识点

<br />1. HTTP协议中几个状态码的含义:503 500 401 200 301 302。<br />    HTTP状态码<br /><br />    1**:请求收到,继续处理<br />    2**:操作成功收到,分析、接受<br />    3**:完成此请求必须进一步处理<br />    4**:请求包含一个错误语法或不能完成<br />    5**:服务器执行一个完全有效请求失败<br /><br />    500——服务器产生内部错误<br />

2011-02-11 23:30:00 2349

原创 eZ publish [ParadoxPDF extension]--"IO problem" for images and CSS

<br />Problelm:<br /> <br />PDF creating works fine, but the PDF is missing the images. Also, it does not seem to be able the CSS file of the extension and current and total page numbers are not printed.<br /><br />From the log:<br />org.xhtmlrendere

2011-02-11 19:11:00 732

原创 Drupal API 制作首页

1.在template.php中添加函数phptemplate_show_frontpage():function phptemplate_show_frontpage(){ //获取vocabulary为1的terms $taxtree = taxonomy_get_tree(1,0); //提前设置首页每个单元的个数为5 variable_set('feed_default_items', 5); foreach($taxtree as $tax){

2011-02-11 17:33:00 480

转载 svn export — 导出目录树。

<br /> <br />概要<br /><br />svn export [-r REV] URL[@PEGREV] [PATH]<br /><br />svn export [-r REV] PATH1[@PEGREV] [PATH2]<br /><br />描述<br /><br />    第一种从版本库导出干净工作目录树的形式是指定URL,如果指定了修订版本REV,会导出相应的版本,如果没有指定修订版本,则会导出HEAD,导出到PATH。如果省略PATH,URL的最后一

2011-02-11 17:22:00 4716

转载 Tar压缩文件

Tar压缩文件[root@test /root]#tar [-zxcvfpP] filename [root@test /root]#tar -N 'yyyy/mm/dd' /path -zcvf target.tar.gz source 参数说明: -z :是否同时具有gzip的属性? -x :解开一个压缩档案的参数指令! -t :查看tarfile里面的档案!-c :建立一个压缩档案的参数指令 -v :压缩的过程中显示档案! -f :使用档名,请留

2011-02-11 15:48:00 3474

eZ Publish 中文技术手册

eZ Publish 中文技术手册,暂时缺乏reference, 谢谢Michael Lee的辛苦劳动。。

2009-04-02

php 5 in practice(Book and Code)

php 5 in practice(Book and Code) 源码与书籍 php 5 in practice(Book and Code) 源码与书籍

2009-07-15

MySQL性能调优与架构设计

本书以 MySQL 数据库的基础及维护为切入点,重点介绍了 MySQL 数据库应用系统的性能调优,以及高可用可扩展的架构设计。   全书共分3篇,基础篇介绍了MySQL软件的基础知识、架构组成、存储引擎、安全管理及基本的备份恢复知识。性能优化篇从影响 MySQL 数据库应用系统性能的因素开始,针对性地对各个影响因素进行调优分析。如 MySQL Schema 设计的技巧,Query 语句的性能优化方式方法及MySQL Server中SQL层和存储引擎层的优化思路。同时还分析了 MySQL 数据库中主要存储引擎的锁定机制。架构设计篇则主要以设计一个高可用可扩展的分布式企业级数据库集群环境为目标,分析介绍了通过 MySQL 实现这一目标的多种架构方式。主要包括可扩展和高可用两部分内容,可扩展部分包括设计原则、Replication 的利用、数据切分、如何使用 Cache 和 Search,以及 NDB Cluster等内容。高可用则主要包括 Dual Master、DRBD、NDB Cluster,以及系统监控等方面。   本书主要面向有一定的 MySQL 基础或至少有一定SQL语言基础的读者朋友。

2011-05-31

php5 in practice English version

php5 in practice English version

2009-07-01

导入邮箱的通讯录源代码

导入邮箱的通讯录源代码 导入MSN联系人至邀请名单 通过链接邀请

2008-12-31

最新PHP手册2008年12月26日更新

最新PHP手册2008年12月26日更新 最新PHP手册2008年12月26日更新

2009-01-01

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除