博文

mysql配置(转)(2012-05-24 13:30:00)

摘要:Shell代码   ##################################################### mysql 性能提高配置 Begin#####################################################   skip-name-resolve   #禁止MySQL对外部连接进行DNS解析!!所有远程主机连接授权都要使用IP地址方式   back_log = 384   #back_log参数的值指出在MySQL暂时停止响应新请求之前的短时间内多少个请求可以被存在堆栈中。    key_buffer_size = 256M   #key_buffer_size指定用于索引的缓冲区大小,增加它可得到更好的索引处理性能。对于内存在4GB左右的服务器该参数可设置为256M或384M。   max_allowed_packet = 4M   thread_stack = 256K   table_cache = 128K   sort_buffer_size = 6M   #查询排序时所能使用的缓冲区大小。所以,对于内存在4GB左右的服务器推荐设置为6-8M。   read_buffer_size = 4M   #读查询操作所能使用的缓冲区大小。和sort_buffer_size一样,该参数对应的分配内存也是每连接独享。   join_buffer_size = 8M   #联合查询操作所能使用的缓冲区大小,和sort_buffer_size一样,该参数对应的分配内存也是每连接独享。   myisam_sort_buffer_size = 64M   table_cache = 512   thread_cache_size = 64   query_cache_size......

阅读全文(1378) | 评论:0

Linux2.6内核epoll介绍(转)(2012-01-29 10:07:00)

摘要:http://blog.csdn.net/rstevens/archive/2007/10/30/1858067.aspx http://hi.baidu.com/jmlover/blog/item/24c28b131e6b48d7f7039ee6.html
http://hi.baidu.com/jmlover/blog/item/e64df724f12926348744f91b.html



名词解释:man epoll之后,得到如下结果:

NAME
epoll - I/O event notification facility

SYNOPSIS
#include <sys/epoll.h>

DEscrīptION
epoll is a variant of poll(2) that can be used either as Edge or Level
Triggered interface and scales well to large numbers of watched fds.
Three system calls are provided to set up and control an epoll set:
epoll_create(2), epoll_ctl(2), epoll_wait(2).
......

阅读全文(3257) | 评论:0

eth0 设备的 MAC 地址与预想的不符(转)(2012-01-19 17:32:00)

摘要:  今天打开虚拟机要做测试,改了IP地址重起network发现报“eth0设备的MAC地址与预想的不符,忽略”错误,上网一查说是因为以前网卡的信息与当前网卡信息记录不符造成,于是按照网上说法进行修改。 vi /etc/sysconfig/network-scripts/ifcfg-eth0后把最后一项的MAC改成当前的MAC信息,重起就好了。 问题很容易解决不过我反复弄了好几次才搞好,有一个这样的疑惑一直不解: 第一次改ifcfg-eth0中的MAC信息前,我是ifconfig命令查看的eth0信息: 察看后把原来的ifcfg-eth0中的MAC信息改好后,service network restart后发现依然报“eth0设备的MAC地址与预想的不符,忽略”错误,于是: 第二次改ifcfg-eth0中的MAC信息,我是ip address show命令查看的eth0信息: 这次改完ifcfg-eth0的MAC信息重起后OK,看来我的MAC是小写的才对,所以第二次没有继续报错。疑惑阿!为什么不同命令看到的MAC信息会有大小写之分内?大牛有知道原因请告知小弟阿。
......

阅读全文(4543) | 评论:0

GCC 提供的原子操作(2012-01-05 10:50:00)

摘要:gcc从4.1.2提供了__sync_*系列的built-in函数,用于提供加减和逻辑运算的原子操作。

其声明如下:

type __sync_fetch_and_add (type *ptr, type value, ...)
type __sync_fetch_and_sub (type *ptr, type value, ...)
type __sync_fetch_and_or (type *ptr, type value, ...)
type __sync_fetch_and_and (type *ptr, type value, ...)
type __sync_fetch_and_xor (type *ptr, type value, ...)
type __sync_fetch_and_nand (type *ptr, type value, ...)


type __sync_add_and_fetch (type *ptr, type value, ...)
type __sync_sub_and_fetch (type *ptr, type value, ...)
type __sync_or_and_fetch (type *ptr, type value, ...)
type __sync_and_and_fetch (type *ptr, type&nbs......

阅读全文(2793) | 评论:0

linux 套接字选项定义(2012-01-05 10:49:00)

摘要:1.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));
3.在send(),recv()过程中有时由于网络状况等原因,发收不能预期进行,而设置收发时限:
int nNetTimeout=1000;//1秒
//发送时限
setsockopt(socket,SOL_S0CKET,SO_SNDTIMEO,(char *)&nNetTimeout,sizeof(int));
//接收时限
setsockopt(socket,SOL_S0CKET,SO_RCVTIMEO,(char *)&nNetTimeout,sizeof(int));
4.在send()的时候,返回的是实际发送出去的字节(同步)或发送到socket缓冲区的字节
(异步);系统默认的状态发送和接收一次为8688字节(约为8.5K);在实际的过程中发送数据
和接收数据量比较大,可以设置socket缓冲区,而避免了send(),recv()不断的循环收发:
//接收缓冲区
int nRecvBuf=32*1024;//设置为32K
setsockopt(s,SOL_SOCKET,SO_RCVBUF,(const char*)&nRecvBuf,sizeof(int));
//发送缓冲区
int nSen......

阅读全文(2414) | 评论:0