<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></title> 
<link>http://jackxiang.com/index.php</link> 
<description><![CDATA[赢在IT，Playin' with IT,Focus on Killer Application,Marketing Meets Technology.]]></description> 
<language>zh-cn</language> 
<copyright><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></copyright>
<item>
<link>http://jackxiang.com/post//</link>
<title><![CDATA[PHP高级编程群里由开源高峰论坛门票免费拿到Mysql长连接的论述及讨论备案]]></title> 
<author>jack &lt;xdy108@126.com&gt;</author>
<category><![CDATA[数据库技术]]></category>
<pubDate>Tue, 25 Jun 2013 03:32:51 +0000</pubDate> 
<guid>http://jackxiang.com/post//</guid> 
<description>
<![CDATA[ 
	<br/>开源高峰论坛门票免费拿：<br/>http://huiyi.csdn.net/tech/view/349<br/>摘录：<br/>Rango-韩*峰(3507499**)&nbsp;&nbsp;上午 10:44:50<br/>方越：RedHat首席软件工程师，WebService/SOA/ESB/OSGi领域专家，目前活跃在多个有影响力的国际开源项目中<br/>这几个感觉挺牛的，其他人都比较一般<br/>惠新宸：Yaf项目发起人，新浪微博架构师兼首席PHP技术顾问，PHP开发组核心成员， Zend公司顾问<br/>半桶水&lt;shenzhe1**@gmail.com&gt;&nbsp;&nbsp;上午 10:45:13<br/>鸟哥也去了<br/>Rango-韩*峰(3507499**)&nbsp;&nbsp;上午 10:45:16<br/>竟然还有鸟哥<br/>。PHP的cli httpserver就是鸟哥搞的<br/>半桶水&lt;shenzhe1**@gmail.com&gt;&nbsp;&nbsp;上午 10:46:06<br/>嗯，小工具性质的。<br/>回忆未来-向东-Jàck(3726476**)&nbsp;&nbsp;上午 10:46:44<br/>呵呵，能不能免费听、<br/>Rango-韩*峰(3507499**)&nbsp;&nbsp;上午 10:46:45<br/>最近看了下他写的代码，swoole也打算做一下http server。要比他做的更专业一些<br/>半桶水&lt;shenzhe1**@gmail.com&gt;&nbsp;&nbsp;上午 10:50:05<br/>半桶水&lt;shenzhe1**@gmail.com&gt;&nbsp;&nbsp;上午 10:50:39<br/>会nginx+fpm 要快多少呢？<br/>半桶水&lt;shenzhe1**@gmail.com&gt;&nbsp;&nbsp;上午 10:51:47<br/>swoole我框架的默认socket引擎。<br/><br/>大力推广swoole中。<br/>Rango-韩*峰(3507499**)&nbsp;&nbsp;上午 10:51:51<br/>目标是5-10倍。PHP之上来做WebServer的好处非常多<br/>这个可以称之为应用服务器了<br/>Rango-韩*峰(3507499**)&nbsp;&nbsp;上午 10:53:07<br/>可以做链接池、中间缓存<br/>Rango-韩*峰(3507499**)&nbsp;&nbsp;上午 10:54:08<br/>淘宝的第一版架构就是 Apache+mod_php+Oracle这样的架构，最后就是应为PHP没办法做连接池，不得不放弃PHP了<br/>半桶水&lt;shenzhe1**@gmail.com&gt;&nbsp;&nbsp;上午 10:55:03<br/>现在淘宝又在大量应用php了。<br/>Rango-韩*峰(3507499**)&nbsp;&nbsp;上午 10:55:13<br/>主要在前端<br/>半桶水&lt;shenzhe1**@gmail.com&gt;&nbsp;&nbsp;上午 10:55:21<br/>嗯<br/>Rango-韩*峰(3507499**)&nbsp;&nbsp;上午 10:55:24<br/>用PHP的好处很明显，可以节约开发成本<br/>大部分公司都是产品业务驱动技术的。用C++太浪费了，PHP足够用了<br/>非常灵活，开发效率极高<br/>回忆未来-向东-Jàck(3726476**)&nbsp;&nbsp;上午 10:56:52<br/>一般企业，没几个人访问，性能还成，所以，不错，加上fastcgi。<br/>半桶水&lt;shenzhe1**@gmail.com&gt;&nbsp;&nbsp;上午 10:57:04<br/>是的。<br/>Rango-韩*峰(3507499**)&nbsp;&nbsp;上午 10:57:40<br/>PHP的性能从来都不是问题。只有在计算密集的情况下才有问题<br/>半桶水&lt;shenzhe1**@gmail.com&gt;&nbsp;&nbsp;上午 11:01:44<br/>计算密集会是什么场景呢？<br/>Rango-韩*峰(3507499**)&nbsp;&nbsp;上午 11:03:03<br/>原来在朋友网的时候遇到有一个场景<br/>腾讯内的一个通用协议解包打包<br/>回忆未来-向东-Jàck(3726476**)&nbsp;&nbsp;上午 11:04:43<br/>rango，我觉得你有必要做一个c下的长链接Mysql的扩展，<br/>并整成PHP扩展，供PHP做数据源，这样DB性能上可提升,我们就用下，提下意见。<br/>Rango-韩*峰(3507499**)&nbsp;&nbsp;上午 11:06:05<br/>这个没办法的<br/>受php-fpm或mod_php运行机制的影响<br/>回忆未来-向东-Jàck(3726476**)&nbsp;&nbsp;上午 11:07:00<br/>也就是扩展是不行了，得独立出来是吧？<br/>令狐雨辰(1020758382)&nbsp;&nbsp;上午 11:07:11<br/>可以考虑重新实现他的fastcgi协议<br/>在fpm上<br/>做长连接<br/>Rango-韩*峰(3507499**)&nbsp;&nbsp;上午 11:07:26<br/>对 要启动200个php-fpm进程，就需要创建200个MySQL连接<br/>回忆未来-向东-Jàck(3726476**)&nbsp;&nbsp;上午 11:08:25<br/>目前腾讯广平也是独立出来的，呵呵。<br/>FastCGI上做，一个fastcgi做20个长连接，10个就200个了，有戏<br/>Rango-韩*峰(3507499**)&nbsp;&nbsp;上午 11:08:26<br/>做成长连接性能比短连接还要差<br/>短连接请求完是可以释放的，长连接一直保持<br/>回忆未来-向东-Jàck(3726476**)&nbsp;&nbsp;上午 11:09:03<br/>但这样处理更快，省了连接的耗费。<br/>半桶水&lt;shenzhe1**@gmail.com&gt;&nbsp;&nbsp;上午 11:09:10<br/>我一直都是用长链接<br/>Rango-韩*峰(3507499**)&nbsp;&nbsp;上午 11:09:10<br/>如果1台机器到还好了。假如是100台机器，100*200，也就是MySQL需要维持2万个连接<br/>哈哈，MySQL是可耻的per connect per thread<br/>半桶水&lt;shenzhe1**@gmail.com&gt;&nbsp;&nbsp;上午 11:09:51<br/>mysql也要分布，一台机器不能够<br/>肿么个说法<br/>回忆未来-向东-Jàck(3726476**)&nbsp;&nbsp;上午 11:10:08<br/>那样整就成了一个sqlrelay了，又回去了。<br/>Rango-韩*峰(3507499**)&nbsp;&nbsp;上午 11:10:39<br/>淘宝网最早的时候用过sqlrelay，<br/>据说淘宝的创始人就是用了这个玩意<br/>到最后也没搞定它<br/>半桶水&lt;shenzhe1**@gmail.com&gt;&nbsp;&nbsp;上午 11:11:46<br/>per connect pre thread肿么个说法<br/>Rango-韩*峰(3507499**)&nbsp;&nbsp;上午 11:12:17<br/>一个连接对应一个线程<br/>半桶水&lt;shenzhe1**@gmail.com&gt;&nbsp;&nbsp;上午 11:12:50<br/>我觉得蛮好的。<br/>有很弊端？<br/>什么<br/>Rango-韩*峰(3507499**)&nbsp;&nbsp;上午 11:13:15<br/>当然有问题了<br/>连接多的时候，线程上下文切换非常多<br/>半桶水&lt;shenzhe1**@gmail.com&gt;&nbsp;&nbsp;上午 11:13:41<br/>我正在搞框架的多线程模块，就想一个连接一个线程呢。<br/>Rango-韩*峰(3507499**)&nbsp;&nbsp;上午 11:13:42<br/>会占用大部分的CPU时间<br/>半桶水&lt;shenzhe1**@gmail.com&gt;&nbsp;&nbsp;上午 11:13:49<br/>线程切换不是很轻量级么？<br/>Rango-韩*峰(3507499**)&nbsp;&nbsp;上午 11:14:22<br/>1000 - 10000 之间问题不大<br/>半桶水&lt;shenzhe1**@gmail.com&gt;&nbsp;&nbsp;上午 11:14:36<br/>那应该怎么用比较好？<br/>固定一定量的线程，随机分配?<br/>Rango-韩*峰(3507499**)&nbsp;&nbsp;上午 11:15:11<br/>异步啊<br/>半桶水&lt;shenzhe1**@gmail.com&gt;&nbsp;&nbsp;上午 11:15:51<br/>噢。<br/>---------------------------------------------------------------------------------<br/>回忆未来-向东-Jàck(3726476**)&nbsp;&nbsp;上午 11:17:02<br/>我刚问了下腾讯前兄弟，他们是这么做的长连接：<br/>江*海&nbsp;&nbsp;上午 11:14:15<br/>我们每台机器对一个DB实例来说建立10个长链接（10个进程，每个进程维持一个链接）<br/>如果链接两个Mysql DB实例，则10*2 个链接<br/>回忆未来-向东-Jàck(3726476**)&nbsp;&nbsp;上午 11:21:38<br/>“假如是100台机器，100*200，也就是MySQL需要维持2万个连接”<br/>100台对一个mysql，那么mysql必然成了瓶颈了。多个几个mysql吧，分散存储。<br/>---------------------------------------------------------------------------------<br/>Rango-韩*峰(3507499**)&nbsp;&nbsp;上午 11:25:06<br/>业务代码不确定会访问哪个MySQL<br/>有可能需要访问所有MYSQL来取数据<br/>腾讯有TTC的，所以不用担心<br/>Rango-韩*峰(3507499**)&nbsp;&nbsp;上午 11:26:45<br/>真正的连接池是实现，200个worker进程共用n个连接<br/>---------------------------------------------------------------------------------<br/>半桶水&lt;shenzhe***@gmail.com&gt;&nbsp;&nbsp;上午 11:27:31<br/>期待swoole的连接池<br/>Rango-韩*峰(3507499**)&nbsp;&nbsp;上午 11:27:50<br/>这样100台机器就只需要 100*n就可以了<br/>呵呵，这个不是啥新鲜东西了。<br/>回忆未来-向东-Jàck(3726476**)&nbsp;&nbsp;上午 11:28:12<br/>TTC那是重武器了，呵呵，一般业务其实上不了这个量级的。<br/>Rango-韩*峰(3507499**)&nbsp;&nbsp;上午 11:28:15<br/>腾讯朋友网的PWS已经搞过的<br/>回忆未来-向东-Jàck(3726476**)&nbsp;&nbsp;上午 11:30:19<br/>Mysql的长连接这块我觉得有两点注意的，如果长连接及其解决的问题：<br/>1.看请求量了，请求量大才有效果，小请求量区别不大，少了链接的时间。大请求量情况下，长链接主要是解决链接数过多的问题，解决性能问题是其次的，如果有慢查询，长链接也没有用啊。<br/>2.需要注意：要维护长链接的话，必须一直有请求；或者定时mysqlping一下，如果不通，需要再连一下。如果建立了链接，长时间没有请求也会被mysql主动断掉。<br/>Rango-韩*峰(3507499**)&nbsp;&nbsp;上午 11:33:37<br/>这就是连接池的作用嘛，为啥要提供n个连接，而不是1个呢<br/>1个的话，就会被慢查询搞死。
]]>
</description>
</item><item>
<link>http://jackxiang.com/post//#blogcomment</link>
<title><![CDATA[[评论] PHP高级编程群里由开源高峰论坛门票免费拿到Mysql长连接的论述及讨论备案]]></title> 
<author> &lt;user@domain.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate> 
<guid>http://jackxiang.com/post//#blogcomment</guid> 
<description>
<![CDATA[ 
	
]]>
</description>
</item>
</channel>
</rss>