- 博客(22)
- 资源 (5)
- 收藏
- 关注
转载 ClassName::class
自PHP 5.5起,关键词 class 也可用于类名的解析。使用 ClassName::class 你可以获取一个字符串,包含了类 ClassName 的完全限定名称。 namespace NS { class ClassName {} echo ClassName::class; // NS\ClassName}
2015-11-26 12:27:04 598
原创 gethostbyname失败要配置dns
gethostbyname()返回对应于给定主机名的包含主机名字和地址信息的hostent结构指针。结构的声明与gethostaddr()中一致。返回对应于给定主机名的主机信息struct hostent *gethostbyname(const char *name); 这个函数的传入值是域名或者主机名,例如"www.google.cn"等等。传出值,是一个hosten
2015-11-24 11:18:25 4506
转载 mysql主从同步详解和一些细节
MYSQL管理之主从同步管理MYSQL主从同步架构是目前使用最多的数据库架构之一,尤其是负载比较大的网站,因此对于主从同步的管理也就显得非常重要,新手往往在出现主从同步错误的时候不知道如何入手,这篇文章就是根据自己的经验来详细叙述mysql主从的管理。MYSQL主从同步的作用(1) 数据分布(2) 负载平衡(load balancing)(3) 备份(4) 高可
2015-11-20 11:04:47 1909
转载 percona-toolkit使用教程之复制类工具
转载:http://blog.chinaunix.net/uid-20639775-id-3229211.html1. pt-heartbeatl 功能介绍:监控mysql复制延迟l 用法介绍:pt-heartbeat [OPTION...] [DSN] --update|--monitor|--check|--stop测量复制落后主mysql或者主Postg
2015-11-20 10:40:20 355
原创 服务器重启导致mysql同步出错
服务器重启导致mysql同步出错151119 11:05:04 mysqld_safe Starting mysqld daemon with databases from /data/mysql151119 11:05:04 InnoDB: The InnoDB memory heap is disabled151119 11:05:04 InnoDB: Mutexes and rw
2015-11-19 14:12:19 1227
转载 mysql主从同步延时解决
在从服务器上执行show slave status;可以查看到很多同步的参数,我们需要特别注意的参数如下:Master_Log_File: SLAVE中的I/O线程当前正在读取的主服务器二进制日志文件的名称Read_Master_Log_Pos: 在当前的主服务器二进制日志中,SLAVE中的I/O线程已经读取的位置Relay_Lo
2015-11-18 14:52:24 10083
转载 linux性能分析命令vmstat
性能调优的第一步是性能分析,下面从性能分析着手进行一些介绍,尤其对linux性能分析工具vmstat的用法和实践进行详细介绍。——————————————————————————————————————————1.性能分析的目的1)找出系统性能瓶颈(包括硬件瓶颈和软件瓶颈);2)提供性能优化的方案(升级硬件?改进系统系统结构?);3)达到合理的硬件和软件配置
2015-11-18 12:12:21 368
转载 海量数据处理算法bloom filter
转载:http://blog.csdn.net/hguisu/article/details/78661731. Bloom-Filter算法简介 Bloom-Filter,即布隆过滤器,1970年由Bloom中提出。它可以用于检索一个元素是否在一个集合中。 Bloom Filter(BF)是一种空间效率很高的随机数据结构,它利用位数组很简洁地表示一个
2015-11-18 11:19:01 418
转载 内存管理内幕
http://www.ibm.com/developerworks/cn/opensource/os-cn-kafka-distributed/为什么必须管理内存内存管理是计算机编程最为基本的领域之一。在很多脚本语言中,您不必担心内存是如何管理的,这并不能使得内存管理的重要性有一点点降低。对实际编程来说,理解您的内存管理器的能力与 局限性至关重要。在大部分系统语言中,比
2015-11-16 11:44:39 397
原创 apache换端口
有些时候apache 80端口被封了需要换其他的端口如8000步奏如下:1.进入/etc/apache2/ports.conf修改listen端口为80002.进入/etc/apache2/sites-available修改VirtualHost:80003.重启apache2service apache2 restart
2015-11-13 17:39:54 641
原创 Binary-safe 二进制安全
c中的strlen函数就不算是binary safe的,因为它依赖于特殊的字符'\0'来判断字符串是否结束,所以对于字符串str = "1234\0123"来说,strlen(str)=4而在php中,strlen函数是binary safe的,因为它不会对任何字符(包括'\0')进行特殊解释,所以在php中,strlen(str)=8所以,我理解的二进制安全的意思是:只关心二进制
2015-11-10 09:39:28 1630 1
转载 struct addrinfo结构体获取ip和port
表头文件: #includestruct addrinfo{ int ai_flags; int ai_family; //AF_INET,AF_INET6,UNIX etcint ai_socktype; //STREAM,DATAGRAM,RAWint ai_protocol; //IPPROTO_IP, IPPROTO_IPV4, IPPROTO_IPV6 etc
2015-11-10 08:45:03 1868
原创 网络常用的数据结构
套接字相关的数据类型:sockaddr和sockaddr_in;sockaddr用来保存一个套接字,定义如下:struct sockaddr{ unsigned short int sa_family; //指定通信地址类型,如果是TCP/IP通信,则值为AF_inet char sa_data[14]; //最多用14个字符长度,用来保存IP地址和端口信息};
2015-11-09 17:48:52 993
转载 select()函数解析
转载:http://blog.csdn.net/piaojun_pj/article/details/5991968Select在Socket编程中还是比较重要的,可是对于初学Socket的人来说都不太爱用Select写程序,他们只是习惯写诸如connect、accept、recv或recvfrom这样的阻塞程序(所谓阻塞方式block,顾名思义,就是进程或是线程执行到这些函数时必须等
2015-11-09 17:32:25 307
原创 获取本机ip和获取远程ip
getsockname与getpeername是返回套接口关联的本地协议地址和远程协议地址。int getsockname(int sockfd, struct sockaddr * localaddr, socken_t * addrlen);int getpeername(int sockfd, struct sockaddr * peeraddr, socken_t * ad
2015-11-09 17:10:33 3527
原创 日志常用的宏
##__VA_ARGS__, __FILE__, __LINE__ ,__FUNCTION__ 1) __VA_ARGS__ 是一个可变参数的宏,很少人知道这个宏,这个可变参数的宏是新的C99规范中新增的,目前似乎只有gcc支持 (VC6.0的编译器不支持)。宏前面加上##的作用在于,当可变参数的个数为0时,这里的##起到把前面多余的","去掉的作用,
2015-11-09 11:26:28 370
转载 模块设计思想
转载:http://www.csdn.net/article/2015-11-06/2826139我一般讲模块设计的时候,都会先讲架构相关的一些东西,首先架构师必须重视的第一件事情是需求,因为架构的目的是为了满足需求,这一点千万不能搞错。谈到架构,很多人都会喜欢说,我设计了一个牛逼的框架。但是我长期以来在强调的一个观点是说,框架这种事情其实在架构哲学里面一点都不重要,框架其实是实践层面的事情,
2015-11-09 09:27:00 2291
转载 setsockopt详解
int setsockopt(SOCKET s,int level,int optname,const char* optval,int optlen);s(套接字): 指向一个打开的套接口描述字level:(级别): 指定选项代码的类型。SOL_SOCKET: 基本套接口IPPROTO_IP: IPv4套接口IPPROTO_IPV6: IPv6套接口
2015-11-06 17:41:21 316
原创 队列汇总
消息队列可以把消息产生和消息处理解耦合,分离开来,并且可以避免了使用线程或进程同步的锁是一个典型的生产者消费者模式生产者生产数据入队列=>队列缓存=>消费者取数据队列采用先进先出的阻塞队列,队列前后分别有至少一个线程,前一线程负责往队列中放数据,后一线程负责从队列中取数据进行分析处理等操作经典的队列应用:1.内存队列2.无锁内存队列Rin
2015-11-06 16:58:58 260
原创 对象的赋值不使用拷贝而使用引用
对象的赋值不使用拷贝而使用引用:class yqueue_t{yqueue_t ();~yqueue_t ();void push ();void pop ()// Disable copying of yqueue.用引用yqueue_t (const yqueue_t&); const yqueue_t &operator = (c
2015-11-05 15:42:17 323
转载 static_cast和reinterpret_cast
用法:static_cast ( expression ) 该运算符把expression转换为type-id类型,但没有运行时类型检查来保证转换的安全性。它主要有如下几种用法: ①用于类层次结构中基类(父类)和派生类(子类)之间指针或引用的转换。 进行上行转换(把派生类的指针或引用转换成基类表示)是安全的; 进行下行转换(把基类指针或引用
2015-11-05 14:41:42 265
转载 std::nothrow
转载:http://blog.csdn.net/jfkidear/article/details/7990613std::nothrow在内存不足时,new (std::nothrow)并不抛出异常,而是将指针置NULL。对于比较健壮的代码来说,nothrow使用的情况比直接new多很多吧。直接new如果失败要抛出异常的,结果就是为了健壮性代码里到处都是try。所以一般
2015-11-05 14:22:09 622
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人