![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
系统-linux
吓人的鸟
程序员
展开
-
系统性能检测--磁盘io
先罗列一些工作中用得比较多的系统检测工具吧,top、ps、iostat、vmstat、free (-m)、tcpdump...1.磁盘io相对于内存读写是巨慢无比的,数据库操作也是,所以在一些io密集的程序里面可以用内存映射、memcached来进行优化2.就个人理解来描述一下磁盘访问 cpu访问文件数据时,先在cpu cache和memory查找,没找到就通知io子系统去磁盘加原创 2012-01-08 00:40:38 · 1831 阅读 · 0 评论 -
cocos2d-x android 调试
搭建2dx的android开发环境官网有教程(http://www.cocos2d-x.org/projects/cocos2d-x/wiki/Chapter_1_-_How_to_Create_a_New_cocos2d-x_project_on_multi-platforms),2dx的中文网站也有翻译(http://cocos2d.cocoachina.com/resource/show?n原创 2013-08-28 22:34:46 · 2972 阅读 · 0 评论 -
浅谈游戏服务器架构(待续)
先给个URL,这是我最近看的几篇游戏服务器架构文章里写得比较好的一个,http://www.doc88.com/p-57286039026.html关于游戏服务器架构,鸟人准备写一点自己的认识目前鸟人还没自己设计过一款服务器架构,所以下面写的仅仅是自己在工作和学习中对服务器架构的一些理解和设想,不足之处通过以后的积累慢慢改善这里说的主要是C/S结构的服务器架构,可以是客户端游戏原创 2012-03-26 00:15:23 · 3021 阅读 · 4 评论 -
TCP keepalive
原文:http://hi.baidu.com/tantea/blog/item/580b9d0218f981793812bb7b.html系统需配置如下参数:/proc/sys/net/ipv4/tcp_keepalive_intvl (每次探测间隔)/proc/sys/net/ipv4/tcp_keepalive_probes (探测次数)/proc/sys/net/ip转载 2012-06-01 11:58:46 · 1653 阅读 · 0 评论 -
wchar <---> char
源头是百度博客一大仙儿的,经过自己几次改进,应该没有问题了#include#include #include #include using namespace std;size_t get_wchar_size(const char *str){ size_t len = strlen(str); size_t size=0; size_t i; for(i=0;原创 2011-09-22 14:09:51 · 1621 阅读 · 0 评论 -
vim
# [esc, v, V, i] 按esc后进入命令模式,按v/V后进入选重模式,按i进入编辑模式# [h, j, k, l] 命令模式下的前上下右键。# [:e!] 不保存本次编辑,但不退出# [:q!] 不保存本次编辑,退出# [:wq] 保存本次编辑退出# [:!sh] 在vim中暂时切换到shell下,可以采用ctrl + d命令回到vim中。# [0原创 2011-09-14 14:59:19 · 1097 阅读 · 0 评论 -
编码问题,写得灰常好,转载过来方便以后查看
快下班时,爱问问题的小朋友Nico又问了一个问题: "sqlserver里面有char和nchar,那个n据说是指unicode的数据,这个是什么意思。" 并不是所有简单的问题都很容易回答,就像这个问题一样。于是我答应专门写一篇BLOG来从头讲讲编码的故事。那么就让我们找个草堆坐下,先抽口烟,看看夜晚天空上的银河,然后想一想要从哪里开始讲起。嗯,也许这样开始比较好……很久很久以转载 2011-11-01 11:52:09 · 931 阅读 · 0 评论 -
mysql character set , collation
转自 http://www.itpub.net/thread-884746-1-1.html字符集和Collations的一般介绍一个character set (字符集)是一组符号和编码,而一个 collation 是在一个字符集里比较字符的一套规则,让我们通过一个虚构的字符集例子来说明区别。假设我们有个四个字母的字母表:`A', `B', `a', `b'.我们给每个字转载 2015-07-29 15:56:07 · 3475 阅读 · 0 评论 -
mysql调优及点滴记录
关于“select count(*)”和“select count(col)”的效率比较(参考http://hi.baidu.com/wrjgg/item/f5b823b4e1dca79918469729): 1.任何情况下SELECT COUNT(*) FROM tablename是最优选择; 2.尽量减少SELECT COUNT(*) FROM tablename原创 2012-06-27 10:59:26 · 2449 阅读 · 1 评论 -
《系统程序员成长计划》阅读笔记--温故之用
《系统程序员成长计划》下载页面1.程序在数据存放位置 1>.bbs 未初始化或者初始化为零的全局变量区 程序运行期间一直有效,占运行时的内存空间,不占目标文件的空间 2>.data 初始化过的全局变量区 程序运行期间一直有效,既占运行时的内存空间,又占目标文件的空间 3>.rodata (read only data)常量数据区 有些立即数会和指令编码在一起存原创 2011-12-12 15:30:46 · 1267 阅读 · 0 评论 -
shell手册--笨鸟巨制
三年前,鸟人刚接触linux环境,用ssh终端连上服务器,两眼一黑(啥命令也不会).....每次把成老师在我电脑上操作的命令用history原创 2014-04-22 09:53:57 · 19165 阅读 · 10 评论 -
新浪开放平台---oauth2认证流程 casperjs自动登录和授权 api需要注意的问题及bug
官网 http://open.weibo.com/API http://open.weibo.com/wiki/API%E6%96%87%E6%A1%A3_V2SDK http://open.weibo.com/wiki/SDK商业API http://open.weibo.com/wiki/Business_API%E6%96%87%E6%A1%A3一、OAuth认证原创 2012-05-26 20:40:28 · 7382 阅读 · 2 评论 -
关于线程安全和可重入的区别,写得很好所以转过来了
源出处:http://waret.iteye.com/blog/744169线程安全函数 • 概念: 线程安全的概念比较直观。一般说来,一个函数被称为线程安全的,当且仅当被多个并发线程反复调用时,它会一直产生正确的结果。 • 确保线程安全: 要确保函数线程安全,主要需要考虑的是线程之间的共享变量。属于同一进程的不同线程会共享进程内存空间中的全局区转载 2012-02-20 23:09:41 · 6255 阅读 · 1 评论 -
mysql主从复制(master/slave)
官方英文文档:http://dev.mysql.com/doc/refman/5.1/en/replication.html官方中文文档:http://dev.mysql.com/doc/refman/5.1/zh/replication.html原理: MySQL使用3个线程来执行复制功能(其中1个在主服务器上,另两个在从服务器上。当发出START SLAVE时,从服务器创建一个I/原创 2013-08-31 09:29:27 · 2208 阅读 · 0 评论 -
图文并茂的描述数字签名(digital signature)和数字证书(digital certificate)
数字签名是什么?作者:David Youd翻译:阮一峰原文网址:http://www.youdzone.com/signature.html1. 鲍勃有两把钥匙,一把是公钥,另一把是私钥。2.鲍勃把公钥送给他的朋友们----帕蒂、道格、苏珊----每人一把。3.苏珊给鲍勃写信,写完后用鲍勃的公钥加密,达到保密的效果。4.鲍勃收信后,用私钥转载 2012-02-06 15:09:52 · 1576 阅读 · 0 评论 -
负载均衡工具
DNS轮循 DNS轮循是指将相同的域名解释到不同的IP,随机使用其中某台主机的技术。但其具有明显的缺点:一旦某个服务器出现故障,即使及时修改了DNS设置,还是要等待足够的时间(刷新时间)才能发挥作用,在此期间,保存了故障服务器地址的客户计算机将不能正常访问服务器。DNS负载均衡采用的是简单的轮循负载算法,不能区分服务器的差异,不能反映服务器的当前运行状态,不能做到为性能较好的服务器多分配请求转载 2012-02-02 23:08:44 · 1279 阅读 · 0 评论 -
apache设置相关:python写CGI http/put目录
python编写cgi脚本参考:http://www.tutorialspoint.com/python/python_cgi_programming.htm1.在apache上设置cgi脚本目录,在http.conf加入下列配置并重启apache AllowOverride None Options ExecCGI Order allow,deny A原创 2012-01-03 16:45:22 · 1764 阅读 · 0 评论 -
why nosql ?
出处:http://www.crazyfrom.com/operations/experience/nosql.htmlNoSQL概念随着web2.0的快速发展,非关系型、分布式数据存储得到了快速的发展,它们不保证关系数据的ACID特性。NoSQL概念在2009年被提了出来。NoSQL最常见的解释是“non-relational”,“Not Only SQL”也被很多人接受。(转载 2012-02-22 11:01:34 · 1103 阅读 · 0 评论 -
epoll
Linux I/O多路复用技术在比较多的TCP网络服务器中有使用,即比较多的用到select函数。Linux 2.6内核中有提高网络I/O性能的新方法,即epoll 。1、为什么select落后首先,在Linux内核中,select所用到的FD_SET是有限的,即内核中有个参数__FD_SETSIZE定义了每个FD_SET的句柄个数,在我用的2.6.15-25-386内核中,该值是10转载 2012-02-17 11:13:51 · 1764 阅读 · 0 评论 -
syn flood attack
有没有这种情况:用机器人发起很多个对游戏服的tcp连接,建立连接后也不发数据,就是让服务器去创建N多socket以达到破坏游戏目的的(占用服务器进程打开文件数量、如此多的socket对网络模型的事件监听多少应该有些影响)?突然想到上述问题,群里发问,答曰syn flood attack,好奇,度娘之,得如下文章。虽答非所问,然多学无害,故,转载。原文http://www.n转载 2012-03-22 23:25:56 · 1723 阅读 · 0 评论 -
google-perftools分析程序瓶颈(最耗cpu的代码块)
文档和结果分析在官网上都有 http://google-perftools.googlecode.com/svn/trunk/doc/cpuprofile.html1.下载安装google-perftools2.在需要分析的程序块前后加上初始化和结束的语句 ProfilerStart("CPUProfile"); ProfilerStop();原创 2011-12-08 15:47:16 · 4198 阅读 · 0 评论 -
linux下条件变量的使用
条件变量使我们可以睡眠等待某种条件出现。(windows下可以用互锁函数模拟linux下的条件变量)条件变量是利用线程间共享的全局变量进行同步的一种机制,主要包括两个动作:一个线程等待"条件变量的条件成立"而挂起;另一个线程使"条件成立"(给出条件成立信号)。为了防止竞争,条件变量的使用总是和一个互斥锁结合在一起。 条件变量类型为pthread_cond_ 条件变量和互斥锁一样,原创 2012-04-06 22:09:09 · 2419 阅读 · 0 评论