﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-高调coding，低调做人</title><link>http://www.cppblog.com/peakflys/</link><description>peakflys</description><language>zh-cn</language><lastBuildDate>Tue, 07 Apr 2026 15:53:55 GMT</lastBuildDate><pubDate>Tue, 07 Apr 2026 15:53:55 GMT</pubDate><ttl>60</ttl><item><title>关于Bash shell在不同locale下的”异常”表现之探讨</title><link>http://www.cppblog.com/peakflys/archive/2015/02/10/209774.html</link><dc:creator>peakflys</dc:creator><author>peakflys</author><pubDate>Tue, 10 Feb 2015 01:10:00 GMT</pubDate><guid>http://www.cppblog.com/peakflys/archive/2015/02/10/209774.html</guid><wfw:comment>http://www.cppblog.com/peakflys/comments/209774.html</wfw:comment><comments>http://www.cppblog.com/peakflys/archive/2015/02/10/209774.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/peakflys/comments/commentRss/209774.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/peakflys/services/trackbacks/209774.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: bash shell有很多命令是和locale相关，本篇文章就来研究一下这种相关性的具体表现。&nbsp;&nbsp;<a href='http://www.cppblog.com/peakflys/archive/2015/02/10/209774.html'>阅读全文</a><img src ="http://www.cppblog.com/peakflys/aggbug/209774.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/peakflys/" target="_blank">peakflys</a> 2015-02-10 09:10 <a href="http://www.cppblog.com/peakflys/archive/2015/02/10/209774.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>SGI STL中默认Allocator为何变为new_allocator？</title><link>http://www.cppblog.com/peakflys/archive/2015/01/14/209513.html</link><dc:creator>peakflys</dc:creator><author>peakflys</author><pubDate>Wed, 14 Jan 2015 08:50:00 GMT</pubDate><guid>http://www.cppblog.com/peakflys/archive/2015/01/14/209513.html</guid><wfw:comment>http://www.cppblog.com/peakflys/comments/209513.html</wfw:comment><comments>http://www.cppblog.com/peakflys/archive/2015/01/14/209513.html#Feedback</comments><slash:comments>8</slash:comments><wfw:commentRss>http://www.cppblog.com/peakflys/comments/commentRss/209513.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/peakflys/services/trackbacks/209513.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 项目中和自己代码中大量使用了STL的容器，平时也没怎么关注alloc的具体实现细节，主观认识上还停留在侯捷大师的《STL源码剖析》中的讲解。<br>但是目前编译器的实现，早已经不是书中所言……&nbsp;&nbsp;<a href='http://www.cppblog.com/peakflys/archive/2015/01/14/209513.html'>阅读全文</a><img src ="http://www.cppblog.com/peakflys/aggbug/209513.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/peakflys/" target="_blank">peakflys</a> 2015-01-14 16:50 <a href="http://www.cppblog.com/peakflys/archive/2015/01/14/209513.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>说说服务器宕机恢复和负载均衡那些事(上)</title><link>http://www.cppblog.com/peakflys/archive/2014/03/26/206326.html</link><dc:creator>peakflys</dc:creator><author>peakflys</author><pubDate>Wed, 26 Mar 2014 08:58:00 GMT</pubDate><guid>http://www.cppblog.com/peakflys/archive/2014/03/26/206326.html</guid><wfw:comment>http://www.cppblog.com/peakflys/comments/206326.html</wfw:comment><comments>http://www.cppblog.com/peakflys/archive/2014/03/26/206326.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/peakflys/comments/commentRss/206326.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/peakflys/services/trackbacks/206326.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 对于服务器程序而言，尤其是云计算时代的服务器程序，三高标准(高可用、高性能、高扩展)往往是衡量一个优秀的服务器程序的重要指标。本篇文章主要聊聊服务宕机恢复(高可用的重要内容)、负载均衡(高扩展、高可用的主要内容)。以下内容均属个人工作中的见解，如有不妥之处，欢迎指正。 ----peakflys&nbsp;&nbsp;<a href='http://www.cppblog.com/peakflys/archive/2014/03/26/206326.html'>阅读全文</a><img src ="http://www.cppblog.com/peakflys/aggbug/206326.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/peakflys/" target="_blank">peakflys</a> 2014-03-26 16:58 <a href="http://www.cppblog.com/peakflys/archive/2014/03/26/206326.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>以题论道----关于虚函数的一些解读</title><link>http://www.cppblog.com/peakflys/archive/2013/12/01/204531.html</link><dc:creator>peakflys</dc:creator><author>peakflys</author><pubDate>Sun, 01 Dec 2013 08:08:00 GMT</pubDate><guid>http://www.cppblog.com/peakflys/archive/2013/12/01/204531.html</guid><wfw:comment>http://www.cppblog.com/peakflys/comments/204531.html</wfw:comment><comments>http://www.cppblog.com/peakflys/archive/2013/12/01/204531.html#Feedback</comments><slash:comments>7</slash:comments><wfw:commentRss>http://www.cppblog.com/peakflys/comments/commentRss/204531.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/peakflys/services/trackbacks/204531.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要:     virtual function是很多公司面试题的重点考察内容，虽然对于C++而言这是一个老生常谈的话题了，但是工作中我发现还是有很多人理解的不透彻。<br>    先看下面的一个例子&nbsp;&nbsp;<a href='http://www.cppblog.com/peakflys/archive/2013/12/01/204531.html'>阅读全文</a><img src ="http://www.cppblog.com/peakflys/aggbug/204531.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/peakflys/" target="_blank">peakflys</a> 2013-12-01 16:08 <a href="http://www.cppblog.com/peakflys/archive/2013/12/01/204531.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>一场虚惊——记大量心跳超时事件的排查</title><link>http://www.cppblog.com/peakflys/archive/2013/05/27/200350.html</link><dc:creator>peakflys</dc:creator><author>peakflys</author><pubDate>Mon, 27 May 2013 08:56:00 GMT</pubDate><guid>http://www.cppblog.com/peakflys/archive/2013/05/27/200350.html</guid><wfw:comment>http://www.cppblog.com/peakflys/comments/200350.html</wfw:comment><comments>http://www.cppblog.com/peakflys/archive/2013/05/27/200350.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.cppblog.com/peakflys/comments/commentRss/200350.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/peakflys/services/trackbacks/200350.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要:    项目终于上线了，伴随着人数的逐步上升，最近查看日志，发现了大量连接超时的日志。项目中使用的是TCP长连接，为了保证网络资源及时有效的释放，程序中是1分钟一次心跳，3分钟无心跳即认为超时。此为本文的背景<br>   相对于TCP连接建立时的三次握手，我想很多人对断开连接的四次招呼就不是那么熟了，这里先谈一下TCP的断开，下面给出TCP断开连接的过程图：&nbsp;&nbsp;<a href='http://www.cppblog.com/peakflys/archive/2013/05/27/200350.html'>阅读全文</a><img src ="http://www.cppblog.com/peakflys/aggbug/200350.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/peakflys/" target="_blank">peakflys</a> 2013-05-27 16:56 <a href="http://www.cppblog.com/peakflys/archive/2013/05/27/200350.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>从一道面试题来阐释一个普遍的认知误区</title><link>http://www.cppblog.com/peakflys/archive/2013/04/08/199208.html</link><dc:creator>peakflys</dc:creator><author>peakflys</author><pubDate>Mon, 08 Apr 2013 05:43:00 GMT</pubDate><guid>http://www.cppblog.com/peakflys/archive/2013/04/08/199208.html</guid><wfw:comment>http://www.cppblog.com/peakflys/comments/199208.html</wfw:comment><comments>http://www.cppblog.com/peakflys/archive/2013/04/08/199208.html#Feedback</comments><slash:comments>21</slash:comments><wfw:commentRss>http://www.cppblog.com/peakflys/comments/commentRss/199208.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/peakflys/services/trackbacks/199208.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要:     上午一个师弟在QQ上问我一道笔试题，是他前两天去KONAMI面试时做的，这道题大致是这样的：<br>        解释以下语句的含义：<br>         1、new A;<br>         2、new A();    <br>   也许很多人包括我自己，都可以马上给出第一种情况的答案：在堆上为A类分配内存，然后调用A的构造函数。这种说法被大家所熟知，因为包括《STL源码剖析》等大作在内也都是这么写的（但是你认为这种说法完全正确吗？其实不尽然，答案后面揭晓)<br>    第二种情况，对象构造的时候初始化列表为空会和第一种有什么不同呢？对于这种在实际工程中很少使用的情况，我一时还真给不出确切的答案。&nbsp;&nbsp;<a href='http://www.cppblog.com/peakflys/archive/2013/04/08/199208.html'>阅读全文</a><img src ="http://www.cppblog.com/peakflys/aggbug/199208.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/peakflys/" target="_blank">peakflys</a> 2013-04-08 13:43 <a href="http://www.cppblog.com/peakflys/archive/2013/04/08/199208.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Libjingle和各协议的关系</title><link>http://www.cppblog.com/peakflys/archive/2013/02/04/197709.html</link><dc:creator>peakflys</dc:creator><author>peakflys</author><pubDate>Mon, 04 Feb 2013 07:29:00 GMT</pubDate><guid>http://www.cppblog.com/peakflys/archive/2013/02/04/197709.html</guid><wfw:comment>http://www.cppblog.com/peakflys/comments/197709.html</wfw:comment><comments>http://www.cppblog.com/peakflys/archive/2013/02/04/197709.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.cppblog.com/peakflys/comments/commentRss/197709.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/peakflys/services/trackbacks/197709.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要:     前两篇blog介绍了P2P的原理和libjingle库的基本情况，如果直接看代码，很多细节可能不会注意到，这种时候最有效的方法当然是看它的开发文档，因为库是由Google开发和维护，所以这方面我们不用担心，文档首页见这里。但是如果要深入了解库代码为什么这么写，为什么这么约定时，还需要了解相应的协议。<br>   便于大家了解，特整理如下。(转载请注明作者和出处  by peakflys)&nbsp;&nbsp;<a href='http://www.cppblog.com/peakflys/archive/2013/02/04/197709.html'>阅读全文</a><img src ="http://www.cppblog.com/peakflys/aggbug/197709.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/peakflys/" target="_blank">peakflys</a> 2013-02-04 15:29 <a href="http://www.cppblog.com/peakflys/archive/2013/02/04/197709.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Libjingle库 综述</title><link>http://www.cppblog.com/peakflys/archive/2013/01/30/197629.html</link><dc:creator>peakflys</dc:creator><author>peakflys</author><pubDate>Wed, 30 Jan 2013 08:54:00 GMT</pubDate><guid>http://www.cppblog.com/peakflys/archive/2013/01/30/197629.html</guid><wfw:comment>http://www.cppblog.com/peakflys/comments/197629.html</wfw:comment><comments>http://www.cppblog.com/peakflys/archive/2013/01/30/197629.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.cppblog.com/peakflys/comments/commentRss/197629.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/peakflys/services/trackbacks/197629.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 国内现在很多语音聊天工具都是基于TURN方式实现的，包括YY、AK等等，这种方式对于服务器的性能要求很高，而且在用户量增大的时候，服务器压力也会越来越大，用户的语音质量也会受到很大影响。而基于P2P方式实现的语聊服务器，就可以极大的避免这种情况的发生，而且用户的语音体验也会非常好。&nbsp;&nbsp;<a href='http://www.cppblog.com/peakflys/archive/2013/01/30/197629.html'>阅读全文</a><img src ="http://www.cppblog.com/peakflys/aggbug/197629.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/peakflys/" target="_blank">peakflys</a> 2013-01-30 16:54 <a href="http://www.cppblog.com/peakflys/archive/2013/01/30/197629.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>P2P的原理和常见的实现方式(为libjingle开路)</title><link>http://www.cppblog.com/peakflys/archive/2013/01/25/197562.html</link><dc:creator>peakflys</dc:creator><author>peakflys</author><pubDate>Fri, 25 Jan 2013 07:43:00 GMT</pubDate><guid>http://www.cppblog.com/peakflys/archive/2013/01/25/197562.html</guid><wfw:comment>http://www.cppblog.com/peakflys/comments/197562.html</wfw:comment><comments>http://www.cppblog.com/peakflys/archive/2013/01/25/197562.html#Feedback</comments><slash:comments>12</slash:comments><wfw:commentRss>http://www.cppblog.com/peakflys/comments/commentRss/197562.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/peakflys/services/trackbacks/197562.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要:    为了项目的后期IM应用，最近在研究libjingle，中间看了也收集了很多资料，感慨网上很多资料要么太过于纠结协议（如STUN、ICE等）实现细节，要么中间有很多纰漏。最后去伪存真，归纳总结了一下，希望对以后的同行有些许帮助。<br>   如果有什么需要讨论或者指正的，欢迎留言或者邮件peakflys@gmail.com &nbsp;&nbsp;<a href='http://www.cppblog.com/peakflys/archive/2013/01/25/197562.html'>阅读全文</a><img src ="http://www.cppblog.com/peakflys/aggbug/197562.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/peakflys/" target="_blank">peakflys</a> 2013-01-25 15:43 <a href="http://www.cppblog.com/peakflys/archive/2013/01/25/197562.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>关于最优无限循环的考证</title><link>http://www.cppblog.com/peakflys/archive/2013/01/05/196968.html</link><dc:creator>peakflys</dc:creator><author>peakflys</author><pubDate>Sat, 05 Jan 2013 04:39:00 GMT</pubDate><guid>http://www.cppblog.com/peakflys/archive/2013/01/05/196968.html</guid><wfw:comment>http://www.cppblog.com/peakflys/comments/196968.html</wfw:comment><comments>http://www.cppblog.com/peakflys/archive/2013/01/05/196968.html#Feedback</comments><slash:comments>8</slash:comments><wfw:commentRss>http://www.cppblog.com/peakflys/comments/commentRss/196968.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/peakflys/services/trackbacks/196968.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 昨天在一个论坛里看到一个帖子，是关于无限循环的选择问题，之前也看到过很多次说空for比while(1)效率高的论述，只是之前一直没有功夫去考证。<br>话不多说，直入正题。&nbsp;&nbsp;<a href='http://www.cppblog.com/peakflys/archive/2013/01/05/196968.html'>阅读全文</a><img src ="http://www.cppblog.com/peakflys/aggbug/196968.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/peakflys/" target="_blank">peakflys</a> 2013-01-05 12:39 <a href="http://www.cppblog.com/peakflys/archive/2013/01/05/196968.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>