- 博客(87)
- 资源 (8)
- 收藏
- 关注
转载 MySQL server has gone away报错原因分析
[转自: http://www.cnblogs.com/cenalulu/archive/2013/01/08/2850820.html]MySQL server has gone away报错原因分析在平时和开发的交流 以及 在论坛回答问题的或称中会发现这个问题被问及的频率非常高。程序中报错: MySQL server has gone away 是什么意思? 如何避免?
2014-02-09 23:53:14
813
转载 webgame中常见安全问题、防御方式与挽救措施
【转自】http://www.cnxct.com/experience-with-webgame-of-security-and-defense/十月一的假期间,在知乎上看到一个问题《网页游戏都有哪些安全问题?》,我是一个网页游戏开发者,对这个问题非常感兴趣,印象比较深刻。当时是在游玩,也没时间细看这个问题。后来,在微博上,有一位朋友的转发,又让我看到这个问题,冥冥中,有种想回答的冲动。上
2013-10-25 09:00:45
3789
原创 CentOS 通过端口号查看运行程序的路径
如题, 通过两条命令就可以实现:# netstat -anp | grep 8080tcp 0 0 :::8080 :::* LISTEN 2437/java# ll /proc/2437 | grep cwd这就可以了。做个记录。
2013-05-15 16:08:17
3395
转载 Centos 6.3 64bit 编译LNMP环境
本方转自:http://blog.renhao.org/2011/09/centos-6-x64-compile-lnmp-environment/, 在这文章有所调整,主要做个记录方便日后查询。OS: Centos 6.2 64bit一、目录规划:#应用安装目录/data/apps/#web 网站目录/data/webapp/#数据库存放目录/da
2013-05-02 23:34:49
1339
转载 浅谈php web安全
转载自:http://www.phpben.com/tb.php?sc=3b1ce8&id=79前言:首先,笔记不是web安全的专家,所以这不是web安全方面专家级文章,而是学习笔记、细心总结文章,里面有些是我们phper不易发现或者说不重视的东西。所以笔者写下来方便以后查阅。在大公司肯定有专门的web安全测试员,安全方面不是phper考虑的范围。但是作为一个phper对于安全知识
2013-04-22 09:50:09
3707
转载 Mysql应用层面的优化
本书若不讲解一章关于连接到MySQL的应用程序优化的内容,那就不能算完整,因为人们常常把一些性能方面的问题都归咎到MySQL身上。书里面我们更多地是讲到MySQL的优化,但是,我们不想让你错过这个更大的图景。一个糟糕的应用设计会使你无论怎么优化MySQL也弥补不了它带来的损失。实际上,有时候对于这类问题的答案是把它们从MySQL上脱离开来,让应用自己或其他工具来做这些事情,这样或许会有较好的性能表
2012-09-25 11:17:18
2526
转载 mysql_pconnect的水挺深,apache下的数据库长连接
先了解什么是数据库的持久化连接:持久化连接背后的思想是客户端进程和数据库之间的连接可以通过一个客户端进程来保持重用, 而不是多次的创建和销毁。这降低了每次需要创建一个新连接的开销,未使用的连接被缓存起来并且准备随时被重用。下面是来自网络上的解释,个人觉得这个比喻更好理解,就借用过来:持久化链接就像酒店的服务生,服务完一位客人后,它不休息而继续服务下一位客人,注意
2012-09-25 09:33:49
2646
转载 为什么程序员总是不能准确估测项目时间
程序员的时间换算表----为什么程序员不擅长估算时间原文链接:Programmer Time Translation Cheatsheet -or- Why Programmers Are Bad at Estimating Times一个曾经与我一起工作过的经验丰富的项目经理声称,他拿到程序员的时间估算以后,先将它乘以π,然后转化下一个时间数量级后,才能得到真正的值。1 天转化成3.
2012-08-11 21:34:44
923
原创 读《代码大全2》笔记:变量的力量
变量名的力量11.1选择好变量名的注意事项 你可不能像给狗取名字那样给变量命名----仅仅因为它很可爱或者听上去不错。狗和狗的名字不一样,它们是不同的东西,变量和变量名就本质而言却是同一事物。这样一来,变量的好与坏就在很大程度上取决于它的命名的好坏。在给变量命名的时候需要小心谨慎。 最重要的命名注意事项 为变量命名时最重要的考虑事项是,该名字要完全,准确
2012-01-09 17:12:15
4172
原创 读《代码大全2》笔记:使用变量的一般事项
第十章, 使用变量的一般事项前言利用构建活动来填补需求和架构中存在的细小间隙是一种行之有效的做法,但把蓝图设计得精细到已经能完全展现出所有的细节则实在是一种低效的做法。10.1 数据认知创建数据的第一步是了解所要创建的数据的种类。10.2 轻松掌握变量定义隐式声明:是指你在使用一个未定义的变量的时候,编译器会自动为你声明此变量。隐式变量声明对任何一种语言来说都是最具危险
2012-01-04 13:32:58
870
原创 读《代码大全2》笔记:伪代码编程过程
第九章,伪代码编程过程9.1 创建类和子程序的步骤概述 创建一个类可以有多种不同的方式,但一般而言这都是一个迭代过程,先对一个类做总体设计,列出这个类内部的特定子程序,创建这些子程序,然后从整个上复查这个类的构建结果。创建一个类的步骤1、 创建类的总体设计:设计一个类的过程中包含一些特有的设计任务——定义类的特定职责,定义类说要隐藏的“秘密”,以及精确的定义
2011-12-26 16:08:37
1293
原创 读《代码大全2》笔记:防御式编程
防御式驾驶:你永远不能确定另外一位司机将要做什么。你要承担其保护自己的责任,哪怕是其他司机犯的错误。防御式编程的主要思想:子程序应该不因传入错误数据而被破坏,哪怕是有其他子程序产生的错误数据。 8.1 保护数据免遭非法输入数据的破坏1、检查所有来源于子程序外部的数据的值。2、检查所有输入参数的值。3、决定如何处理错误的输入数据库。 8.2 断言断言是指在开发期间
2011-12-19 16:42:21
807
转载 读《代码大全2》笔记:高质量的子程序
第七章,高质量的子程序前言子程序是为实现一个特定的目的而编写的一个可被调用的方法或过程。7.1 创建子程序的正当的理由1、 降低复杂度。当内部循环或内部嵌套层次很深的时候,就要考虑从子程序中提取出新的子程序了。子程序以其抽象,封装,信息、细节的隐藏来实现管理复杂度的功能。2、 引入中间、易懂的抽象。通过命名将一段代码重组织,使其更易理解。3、 避免代码重复。4、
2011-12-15 17:27:46
782
原创 PHP urledcode 在JS里的转换
一些数据在PHP里用urledcode了,传到前端,需要把数据转换,不然有些特殊的字符会以%开始的转换字符,JS decodeURIComponent 函数可以转换。Decodes URL-encoded string function urldecode (str) { // Decodes URL-encoded string // //
2011-12-15 16:09:24
1175
原创 读《代码大全2》笔记:类的质量
类的质量核对表:1.抽象数据类型1.1 是否把程序中的类都看做时抽象数据类型了?是否从这个交大评估它们的接口?2.抽象2.1 类是否有一个中心目的?2.2 类的命名是否恰当?其名字是否表达了其中心目的?2.3 类的接口是否展现了一致的抽象?2.4 类的接口是否能让人清楚明白地知道该如何使用它?2.5 类的接口是否足够完整,能让其它类无
2011-12-08 17:48:01
636
原创 读《代码大会2》笔记:创建类的理由
1、对现实世界中的对象建模2、对抽象对象建模3、降低复杂度4、隔离复杂度5、隐藏实现细节6、限制变化所影响的范围7、隐藏全局数据8、让参数传递更顺畅9、创建中心控制点10、让代码更易于重用11、为程序族做计划12、把相关操作放到一起13、实现特定的重构
2011-12-08 16:41:32
547
原创 读《代码大全2》笔记:软件构建中的设计师
1、软件的首要技术使命就是管理复杂度。以简单性作为努力目标的设计方案对些最有帮助。2、简单可以通过两种方式来获取:一是减少在同一时间所关注的本质性复杂度的量,二是避免生成不必要的偶然的复杂度。3、设计是一种启发式的过程。固执于某一种单一方法会损害创新能力,从而损害你的程序。4、好的设计都有是迭代的。你尝试设计的可能性越多,你的最终设计方案就会变得越好。5、信息隐藏是个非常有价值的概
2011-11-30 15:10:56
267
原创 读《代码大全2》笔记:软件构造中的设计核对表
设计实践1、你已经做过多次迭代,并且从众多尝试结果中选择最佳的一种,而不是简单选择第一次尝试的结果吗?2、你尝试用多种方案来分解系统,以确定最佳方案吗?3、你同时用自下而上和自上而下的方法来解决设计问题吗?4、为了解决某些特定的问题,你对系统中的风险部分或者不熟悉的部分创建过原型、写出数量最少的可抛弃的代码吗?5、你的设计方案被其他人检查了吗(无论正式与否)?6、你一直在展
2011-11-30 14:46:09
1399
原创 常见设计模式
常见设计模式模式描述Abstract Factory(抽象工厂)通过指定对象组的种类而非单个对象的类型来支持创建一组相关的对象Adapter(适配器)把一个类的接口转变成为另外一个接口Bridge(桥接)把接口和实现分离开来,使它们可以独立的变化莫测Composite(组合)创建一个包含其他同类对象的对象,使得
2011-11-29 15:39:50
635
原创 读《代码大全》笔记:主要的构建实践核对表
主要的构建实践核对表:编码 1、 你有没有确定,多少设计工作将要预先进行,多少设计工作在键盘上进行(在编写代码的同时)? 2、 你有没有规定诸如名称、注释、代码格式等“编码约定”? 3、 你有没有规定特定的由软件架构确定的编码实践,比如如何处理错误条件、如何处理安全性事项、对于类接口有哪些约定、可重用的代码遵循哪些标准、在编码时考虑多少性能因素等?
2011-11-23 11:23:57
844
原创 读《代码大全》笔记:架构核对表
针对各架构主题 1、 程序的整体组织结构是否清晰?是否包含一个良好的架构全局观(及其理由)? 2、 是否明确定义了主要的构造块(包括每个构造块的职责范围及与其他构造块的接口)? 3、 是否明显涵盖了“需求”中列出的所有功能(每个功能对应的构造块不太多也不太少)? 4、 是否描述并论证了那些最关键的类? 5、 是否描述并论证了数据设计? 6
2011-11-22 18:17:21
1209
原创 读《代码大全》笔记:需求核对表
读《代码大全》笔记,需求核对表:针对功能需求:1.是否详细定义了系统的全部输入,包括其来源、精度、取值范围、出现频率等?2.是否详细定义了系统的全部输出,包括其目的地、精度、取值范围、出现频率格式等?3.是否详细定义了所有的输出格式(如:web页面、报表等)?4.是否详细定义了所有硬件及软件的外部接口?5.是否详细定义了全部外部通信接口,包括
2011-11-22 15:59:14
1293
原创 libltdl.so.3: cannot open shared object file
今天在Centos下扩展PHP mcrypt出现个小问题,mcrypt.so已经编译出来,重启Apache后发现在mcrypt扩展无效,检查php.ini中的设置是正确无误后,PHP -m 检查看扩展发现有个警告,提示:PHP Warning: PHP Startup:
2011-10-13 18:26:40
4804
转载 centos下 MySQL 5.5.14 编译安装
mysql 最新的版本都需要cmake编译安装,估计以后的版本也会采用这种方式,所以特地记录一下安装步骤及过程,以供参考。注意:此安装是默认centos下已经安装了最新工具包,比如GNU make, GCC, Perl, libncurses5-dev,如果在编译安装过程中发现有缺失的工具包,先yum install 单独下载安装再继续即可。以下安装中涉及的几点需要提前说明的问题:
2011-09-02 16:41:46
2397
转载 CentOS 下 Apache + Subversion 实现版本控制
CentOS 下 Apache + Subversion 实现版本控制2010-01-17 16:19 首先要说明一点的是Apache并不是必须安装的,如果你只用在CentOS下本地实现版本控制的话,否则你至少要选择一种服务器与SNV配合使用才能实现远程
2011-08-08 02:19:33
1949
翻译 正确配置Mysql5的双主从
这两天为Mysql的主从配置花了不少精力,有两台相同的Centos服务器,基础的LAMP环境是我自己编译的,所以比较熟悉,由于需要Mysql做主从,一位同事自己配置,但死活配置有问题,我在他的基础上检查也重新配置,解决了一些问题,但出现各种问题,最后无法忍受,我直接把之前的重新推
2011-07-29 11:33:40
1920
转载 基于CentOS构建高性能的LAMP平台
基于CentOS构建高性能的LAMP平台大纲:一、系统安装二、编译安装基本环境三、配置虚拟主机及基本性能调优四、基本安全设置五、附录及相关介绍一、系统安装1. 分区 /boot 100M左右 SWAP 物理内存的2倍(如果
2011-07-22 01:35:27
1097
原创 判断浏览器是否支持wap
近期在工作中要处理一个问题根据用户的浏览器判断是访问wap2还是wap1。虽然之前有处理过访问的浏览器是否支持Wap,但之前的方法不太适合,目前的需求。在网络上找这方面的资源与分析比较成熟的几个wap站。分析:一般根据浏览器的访问头信息分析是否支持wap,由于目前的浏览器各标准不同与信息差别比较大,就有一定的难度。我的方法是尽量抓取浏览器的头信息,分析共同点处理。目前分析的信息,主要有用的两个
2011-06-21 23:29:00
2080
原创 bash: vim: command not found
bash: vim: command not found 把VIM安装在个人目录下,如:/home/qingfly/vim/,直接vim 命令提示找到vim命令,这主要是在默认的系统环境下找不到vim,需要在环境里指定vim的安装目录。步骤如下:针对个人环境设置,#进入个人目录cd ~#个人环境配置文件vi ~/.bash_profile #加入VIM路
2011-06-17 18:27:00
9911
3
原创 Linux php5 curl 扩展
方法一安装cURL wget http://curl.haxx.se/download/curl-7.17.1.tar.gz tar -zxf curl-7.17.1.tar.gz./configure --prefix=/usr/local/curlmake & make install 安装php 只要打开开关 --with-curl=/usr/l
2011-06-15 14:11:00
11338
转载 Linux php5 oci pdo install
1)安装oracle client相关包 1> 用查看Linux系统: uname -m 如果看到信息包含有64,说明你的Linux是64位系统,没有则是32位的,下载相应的包。我这是64位系统。去(Linux 64位版)http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html
2011-06-08 18:43:00
5300
转载 Linux 下 apache 日志分析与状态查看
<br /><br />假设apache日志格式为:<br /> <br />118.78.199.98 – - [09/Jan/2010:00:59:59 +0800] “GET /Public/Css/index.css HTTP/1.1″ 304 – “http://www.a.cn/common/index.php” “Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; GTB6.3)”<br /> <br />问题1:在apachelog
2011-05-19 16:15:00
13065
原创 PHP 编程规范
<br />原文来自哪已经无从考证,只能说是来自网络,小有发动。整个规范有点长,后部分的一些建议个人觉得很不错。<br /> <br /><br />PHP 编程规范<br /> 1. 命名规范<br /> 1.1变量<br /> 1.1.1全局变量<br /> 全局变量使用$g_开头,如$g_data_list。<br /> 1.1.2 一般变量<br /> 一般的变量使用小写字母命名,单词之间使用下划线分隔。<br /> 变量名字应该使用名词或者形容词+名词的方式
2011-05-11 23:16:00
1557
原创 Sqlite 插入数据慢解决方法
sqlite 插入数据很慢的原因是因为它是已文件的形式存在磁盘中,每次访问时都要打开一次文件,如果对数据进行大量的操作,那时很慢。解决方法是用事务的形式提交:因为我们开始事务后,进行的大量操作的语句都保存在内存中,当提交时才全部写入数据库,此时,数据库文件也就只用打开一次。我在没有用事务形式插入4366条数据时用了507.781s,平均每一插入一条数据是116ms,用事务形式,插入只用了391ms,相关很大吧。事务方式:begin;INSERT INTO "table" VALUES ('a', 'b'
2011-04-29 16:56:00
11478
原创 oracle 数据导出导入
数据库的导出导入:导出表步骤:1、导出表结构与数据;2、导出序列;3、导出触发器;4、导出视图导出表工具:PLSQL Developer设置环境变量: 变量名: NLS_LANG 变量值: AMERICAN_AMERICA.ZHS16GBK (这里主要是解决数据库的字符集问题,根据数据库的字符集设置,保证导出的字符集是一样的。)导出表操作:a、启动PLSQL Developer,输入数据库的用户名和密码,数据库地址后要加上端口号与监听服务名如:10.8.6.221:1521/ORCL。b、导出表结构与数据
2011-04-22 10:55:00
5381
转载 用vim比较文件(Using vim to compare files)
<br /><br />1. 使用vim的比较模式打开两个文件:<br /> vim -d file1 file2<br />或<br /> vimdiff file1 file2<br /><br />2. 如果已经打开了文件file1,再打开另一个文件file2进行比较:<br /> :vert diffsplit file2<br />如果没有用vert命令,diffsplit则会分上下两个窗口。<br /><br />3. 如果已经用split方式打开了两
2011-04-20 03:37:00
1313
原创 通过图片src链接地址偷走白名单获取手机号
问题描述: 因为WAP网站没有和移动的网关签约,从WAP的访问头文件中得不到用户的手号码,但一些业务必需需要用户的手机号。怎么获取用户的手机号呢,第一种方案是:做个表单让用户手动填写手号发送获取;第二种方案是通过走移动提供的白名单获取。这里我们选择第二种,增加用户的体验。基本思路: 在网站的页面上放一个1px透明GIF图片,通过图上的地址是请求一个模块,这个模块在后端偷偷的完成走白名单的过程并记录下手机号到SESSION或内存里。用户访问第二个页面时从SESSION里或内存里获取
2011-04-14 22:00:00
3584
转载 Hessian 1.0.5-RC2 常见问题
公司因业务需求准备开放一些API接口让代理商使用,周末抽了些时间了解了一下这方面的技术后,决定采用caucho.com的Hessian实现(hessian使用方便又高效)测试环境 Window XP JDK 1.6 Resin3.1.9 Spring2.0.8 hessian-3.0.20.jar(这个版本要与spring的对应,不要一味的追求最新版,我因为这个,不知是好还是坏的毛病吃了N多苦头) HessianPHP-1.0.5-RC2
2011-04-07 17:05:00
2589
原创 xdebug 安装与配置
1、下载XDEBUG模块首先要知道自己的PHP是哪个版本,才能下载相应的xdebug模块。怎么知道自己的PHP版本呢,用PHPinfo()函数查看自己的参数,在info信息里查找Compiler,它的值是MSVC9 (Visual C++ 2008),说明你的PHP是用Visual C++2008编译的,Configure Command看到VC98字样的是VC6编译的。查看PHP是非安全线程(NTS)还是安全线程(TS),Thread Safety disabled是NTS,enabled是TS。确实不知
2011-03-30 17:23:00
7019
原创 Linux保持SSH连接时间设置
<br />连接SSH服务器刚刚离开一会就断开,不得不需要反复连接服务器,为了使SSH服务器可以保持足够的连接时间,大家可以按以下方法设置:<br />基于安全的理由,如果用户连线到 SSH Server 后闲置,SSH Server 会在超过特定时间后自动终止 SSH 连线。以下是设定终止连线时间的方法:<br />1、打开 /etc/ssh/sshd_config 文件,找到一个参数为 ClientAliveCountMax,它是设定用户端的 SSH 连线闲置多长时间后自动终止连线的数值,单位为分钟
2011-03-25 13:51:00
24656
MySQL 5.1参考手册
2011-08-17
php5 模式设计介绍
2010-05-17
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人