性能分析利器之perf浅析

作为服务器后台开发,不仅仅要写业务逻辑,后台意味着高并发,稳定性,当你写了很多逻辑,发现性能有问题的时候,也要学会性能分析,进行性能优化, 也许你会接触很多性能分析工具:valgrind,gperftools,gprof, oprofile, 有时间慢慢一一介绍,在学习perf的过程中,也学习和加深了很多之前的知识,本文抛砖引玉,希望能帮助大家了解一些性能分析更深的一些东西。

1. perf简介

perf是一款linux内置的性能分析工具,随着内核发布,也被称为perf_events, perf tools, PCL(Performance Counters for Linux), 发布于Linux kernel version 2.6.31, perf是怎么工作的呢?perf如何使用?本文是来介绍一下。

perf官方wiki的介绍是:Linux profiling with performance counters

Read More

func_calling_conventions

实际上,GCC的Windows 端口必须有 __stdcall,因为它应该能够为Win32平台生成一致的代码。 但是由于Linux下只有一个标准调用约定,并且它与缺省编译器输出一致,因此不需要这个语句。

Read More

SWIG之为C/C++的API生成Python调用接口基础

现在游戏业务的cache基本都是接入tcaplus,以前业务自己拥有cache的时候我们可以很方便去通过脚本去访问玩家的数据,所以最近想能不能对tcaplus生成Python的访问接口,由于tcaplus只提供了C++ API屏蔽了底层的协议数据细节,不太好直接写Python访问接口,偶然间接触到了SWIG,差不多花了一周时间,通过官方手册完成了SWIG对Tcaplus Python 接口的封装。

Read More

你知道svn的needs-lock属性吗

我们都知道svn对于文本文件可以支持多人合作修改,会自动将多人对于同一文件的操作进行合并,但对于二进制文件只能爱莫能助了!

我们游戏开发中,对于数值配置表通常都是通过excel表格进行配置的,很多策划都对同一个表格修改时就会出现冲突,当冲突发生时,就需要将自己的修改保存到其他地方,然后回滚或删除表格,update为最新的后,再次进行修改提交,当然这种做法是不可取的。修改excel的正确姿势是:在对execel表格进行修改时,先get lock,然后进行修改-提交.

Read More