<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></title> 
<link>http://www.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://www.jackxiang.com/post//</link>
<title><![CDATA[[实践OK]在linux上配置Memcached日志，以及出现输出后用21的意思是将错误输出和标准输出都放前面文件里面，关闭memcached的方法。]]></title> 
<author>jack &lt;xdy108@126.com&gt;</author>
<category><![CDATA[Unix/LinuxC技术]]></category>
<pubDate>Fri, 27 Mar 2015 08:23:35 +0000</pubDate> 
<guid>http://www.jackxiang.com/post//</guid> 
<description>
<![CDATA[ 
	问题：service memcached31211 start 有输出，加上 2&gt;&amp;1就没有输出了，<br/>combine stderr and stdout into the stdout stream，2&gt;&amp;1的意思是将错误输出和标准输出都放前面文件里面：<br/>Starting memcached31211 ...&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;[&nbsp;&nbsp;OK&nbsp;&nbsp;]<br/>[ init.d]# vi memcached31211 <br/><textarea name="code" class="php" rows="15" cols="100">
OPTIONS=&quot; -vv &gt;&gt; /data/logs/memcached/memcached31211.log 2&gt;&amp;1&quot;
</textarea><br/>参考自：https://www.cnblogs.com/happySmily/p/6439959.html<br/><br/>启动文件/etc/init.d/memcached31211下载：<br/><a href="attachment.php?fid=503">点击这里下载文件</a><br/><br/>背景：memcache线上环境出现端口还在，但是执行命令就一直柱塞的情况，怎么办？只有打开日志了。运维觉得是：像是进程死了，技术觉得是读写多了，无证据只能是大胆的猜测，得找证据，从下次崩溃的日志里找，呵呵。<br/>memcache在linux上安装时并不支持显示地配置服务日志，我们如果想要把memcache服务日志保存到日志文件中，则需要在启动参数中进行配置。 <br/>安装好memcache后，我们可以通过-h命令查看memcached支持的参数：<br/>/usr/local/bin/memcached -h<br/>-v&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;verbose (print errors/warnings while in event loop)<br/>-vv&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; very verbose (also print client commands/reponses)<br/><br/>建议在启动memcached时加上日志，<br/>出问题时候从日志上找到蛛丝马迹，<br/>出问题后立即ps看其进程处啥状态：<br/> -vv &gt;&gt; /tmp/memcached.log 2&gt;&amp;1&nbsp;&nbsp;<br/><br/><br/>加个日志吧，日志注意下到时间清理下：<br/>/usr/local/bin/memcached -d -m 5120&nbsp;&nbsp;-u root -l&nbsp;&nbsp;10.70.62.*** -p 11211 -c 2048 -u root -vv &gt;&gt; /tmp/memcached.log 2&gt;&amp;1&nbsp;&nbsp;<br/>-v&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;verbose (print errors/warnings while in event loop)<br/>-vv&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; very verbose (also print client commands/reponses)<br/><br/>从上面可以看到，启动memcached时有3个参数是和日志信息相关的：<br/>其中-v代表打印普通的错误或者警告类型的日志信息<br/>-vv比-v打印的日志更详细，包含了客户端命令和server端的响应信息<br/>-vvv则是最详尽的，甚至包含了内部的状态信息打印<br/> <br/>你可以根据你的实际需要来选择对应的参数，我这里使用-vv就OK了。<br/>由于我们需要把日志信息保存在文件中，而不是在控制台输出，而-vv等参数只能把日志信息输出在控制台。所以我们需要对-vv参数的输出进行数据流重定向，关于重定向的知识在这里就不细述了，有兴趣的可以查下资料了解一下。<br/>综上，启动memcached的命令如下：<br/> <br/>Shell代码&nbsp;&nbsp;收藏代码<br/>/usr/local/memcached/bin/memcached -d -m 2048 -p $1 -u root -vv &gt;&gt; /tmp/memcached.log 2&gt;&amp;1&nbsp;&nbsp;<br/>重点在最后的：-vv &gt;&gt; /tmp/memcached.log 2&gt;&amp;1<br/> <br/>-vv &gt;&gt; /tmp/memcached.log：代表把-vv的输出重定向到/tmp/memcached.log 文件中<br/>2&gt;&amp;1的意思是把错误日志也一起写入到该文件中<br/><br/>启动成功后我们可以测试一下，首先起两个terminal，terminal1用来查看日志信息，terminal2进行client操作<br/>terminal1：启动memcached后默认的日志信息如下<br/>Shell代码&nbsp;&nbsp;收藏代码<br/>[chenzhou@localhost ~]$ tail -f /tmp/memcached.log&nbsp;&nbsp; <br/>&lt;31 send buffer was 110592, now 268435456&nbsp;&nbsp;<br/>&lt;30 server listening (udp)&nbsp;&nbsp;<br/>&lt;31 server listening (udp)&nbsp;&nbsp;<br/>&lt;30 server listening (udp)&nbsp;&nbsp;<br/>&lt;31 server listening (udp)&nbsp;&nbsp;<br/>&lt;30 server listening (udp)&nbsp;&nbsp;<br/>&lt;30 server listening (udp)&nbsp;&nbsp;<br/>&lt;31 server listening (udp)&nbsp;&nbsp;<br/>&lt;31 server listening (udp)&nbsp;&nbsp;<br/>&lt;32 new auto-negotiating client connection&nbsp;&nbsp;<br/>terminal2：往memcached里存入一个数据<br/>Shell代码&nbsp;&nbsp;收藏代码<br/>[root@localhost bin]# telnet localhost 11211&nbsp;&nbsp;<br/>Trying 127.0.0.1...&nbsp;&nbsp;<br/>Connected to localhost.localdomain (127.0.0.1).&nbsp;&nbsp;<br/>Escape character is &#039;^]&#039;.&nbsp;&nbsp;<br/>set name 0 60 5 chenzhou&nbsp;&nbsp;<br/>如上所示：使用set命令存入key为name value为chenzhou<br/>terminal1日志记录：<br/>Shell代码&nbsp;&nbsp;收藏代码<br/>32: Client using the ascii protocol&nbsp;&nbsp;<br/>&lt;32 set name 0 60 5 chenzhou&nbsp;&nbsp;<br/>这样，我们的配置就生效了。<br/><br/>摘自：http://chenzhou123520.iteye.com/blog/1925209<br/><br/><br/>关闭memcached的方法：<br/>停止Memcache进程：<br/><textarea name="code" class="php" rows="15" cols="100">
kill `cat /tmp/memcached.pid`
</textarea><br/><br/>ps -ef&#124;grep memcached<br/><textarea name="code" class="php" rows="15" cols="100">
571&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 8245&nbsp;&nbsp;&nbsp;&nbsp; 1&nbsp;&nbsp;0&nbsp;&nbsp;2018 ?&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;00:30:52 /usr/local/memcached/bin/memcached -d -p 11211 -m 2048 -c 1024 -P /usr/local/memcached/var/memcached11211.pid -vv
571&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 8278&nbsp;&nbsp;&nbsp;&nbsp; 1&nbsp;&nbsp;0&nbsp;&nbsp;2018 ?&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;00:30:58 /usr/local/memcached/bin/memcached -d -p 11212 -m 2048 -c 1024 -P /usr/local/memcached/var/memcached11212.pid -vv
571&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 8307&nbsp;&nbsp;&nbsp;&nbsp; 1&nbsp;&nbsp;0&nbsp;&nbsp;2018 ?&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;00:30:44 /usr/local/memcached/bin/memcached -d -p 11213 -m 2048 -c 1024 -P /usr/local/memcached/var/memcached11213.pid -vv
</textarea><br/><br/>干死拉倒，反正就是放内存，不像redis 还搞个bgsave刷盘：<br/><textarea name="code" class="php" rows="15" cols="100">
kill -9 `cat /usr/local/memcached/var/memcached11211.pid`
kill -9 `cat /usr/local/memcached/var/memcached11212.pid`
kill -9 `cat /usr/local/memcached/var/memcached11213.pid`
</textarea><br/><br/>
]]>
</description>
</item><item>
<link>http://www.jackxiang.com/post//#blogcomment</link>
<title><![CDATA[[评论] [实践OK]在linux上配置Memcached日志，以及出现输出后用21的意思是将错误输出和标准输出都放前面文件里面，关闭memcached的方法。]]></title> 
<author> &lt;user@domain.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate> 
<guid>http://www.jackxiang.com/post//#blogcomment</guid> 
<description>
<![CDATA[ 
	
]]>
</description>
</item>
</channel>
</rss>