存档
Linux下误删除文件恢复(Ext3文件系统)
今天又误删除了一些代码文件,还没提交到SVN的文件,郁闷,如果重写工作量非常巨大,还要找到了误删除恢复的方法。
方法请参考:http://blog.s135.com/linux_ext3_undelete/
我已经成功恢复了。哈哈
如何开发php扩展(续)
UML基础概念总览
视图
UML中的视图大致分为如下5种:
1、用例视图。用例视图强调从系统的外部参与者(主要是用户)的角度看到的或需要的系统功能。
2、逻辑视图。逻辑视图从系统的静态结构和动态行为角度显示如何实现系统的功能。
3、组件视图。组件视图显示代码组件的组织结构。
4、并发视图。并发视图显示系统的并发性,解决在并发系统中存在的通信和同步问题。
5、配置视图。配置视图显示系统的具体部署。部署是指将系统配置到由计算机和设备组成的物理结构上。
原型设计工具和思维导图工具
今天淘到几个工具,从互联网产品经理常用软件及工作平台看到的
AxureRP:网站原型策划利器,AxureRP 5.5 汉化破解
还有一个工具Balsamiq Mockups,主要表达产品设计概念、理念、基本布局,元素,不能设计交互原型。
1、概念图,主要表达产品设计概念、理念、基本布局,元素。只有这个需求的时候我推荐 Balsamiq Mockups,它的出品效果是手绘风格,但不能做交互动作。上手快,小图1分钟内容即可搞定,因为它有强大的控件,浏览器、图片、文本框等等都有了,直接拖进去即可,点击查看视频演示。
2、产品原型、交互演示、原型细节设计等。这个时候推荐使用Axure PR快速原型制作软件,由美国Axure Software Solutions, Inc.公司开发。Axure (ak shûr)、RP是Rapid Prototyping (快速原型缩写) 。Axure RP 能让操作它的人快速准确的创建基于Web的网站流程图、原型页面、交互体验设计、标注详细开发说明,并导出Html原型或规格的Word开发文档。点击查看视频演示,交互实例演示 。
UIDesigner:QQ出的软件原型设计工具,需要发邮件到cdc@vip.qq.com申请使用权限。如果通过审核会把软件发送到你的邮箱。
快速开发一个PHP扩展
原文见:http://blog.csdn.net/heiyeshuwu/archive/2008/12/05/3453854.aspx
我是在Ubuntu 10.04环境做的试验
介绍下我的步骤
一、安装apache
sudo apt-get install apache2 php5 php5-dev php5-cli
安装了apache + PHP + php-dev环境,还有php命令行
二,下载php源码
http://www.php.net/downloads.php
三、参照黑哥的文章按步骤即可
补充知识:
apache启动|停止|重启: sudo /ect/init.d/apache2 start|stop|restart
apache的httpd.conf在ubuntu10.04下的路径:/ect/apache2
php.ini路径:/etc/php5/apache2/php.ini ,如果找不到php.ini,先看下是否按照了php
【转】Oracle数据库提高命中率及相关优化
关于Oracle中各个命中率的计算以及相关的调优
1)Library Cache的命中率:
.计算公式:Library Cache Hit Ratio = sum(pinhits) / sum(pins)
- SQL>SELECT SUM(pinhits)/sum(pins)
- FROM V$LIBRARYCACHE;
通常在98%以上,否则,需要要考虑加大共享池,绑定变量,修改cursor_sharing等参数。
阅读全文…
【转】九大Oracle性能优化基本方法详解
Oracle性能优化基本方法包括一下几个步骤,包括:
1)设立合理的Oracle性能优化目标。
2)测量并记录当前的Oracle性能。
3)确定当前Oracle性能瓶颈(Oracle等待什么、哪些SQL语句是该等待事件的成分)。
4)把等待事件记入跟踪文件。
5)确定当前的OS瓶颈。
6)优化所需的成分(应用程序、数据库、I/O、争用、OS等)。
7)跟踪并实施更改控制过程。
8)测量并记录当前性能
9)重复步骤3到7,直到满足优化目标
下面来一一详述。
阅读全文…
[gcc]undefined reference to `__gxx_personality_v0′
当你用gcc编译cpp文件时会出现undefined reference to `__gxx_personality_v0′的错误
解决方法是:
1,把cpp改名为.c如果你写的是c代码
2,如果你是c++代码,那么请使用g++
参见:http://heyunhuan513.blog.163.com/blog/static/16020422009923992100/
浅析:setsockopt()改善socket网络程序的健壮性
转载自:http://blog.csdn.net/wuhuiran/archive/2007/12/01/1910126.aspx
1. 如果在已经处于 ESTABLISHED状态下的socket(一般由端口号和标志符区分)调用
closesocket(一般不会立即关闭而经历TIME_WAIT的过程)后想继续重用该socket:
BOOL bReuseaddr=TRUE;
setsockopt(s,SOL_SOCKET ,SO_REUSEADDR,(const char*)&bReuseaddr,sizeof(BOOL));
2. 如果要已经处于连接状态的soket在调用closesocket后强制关闭,不经历
TIME_WAIT的过程:
BOOL bDontLinger = FALSE;
setsockopt(s,SOL_SOCKET,SO_DONTLINGER,(const char*)&bDontLinger,sizeof(BOOL));