年归档:2015年

php timezone

$timezones=
array(
 '(GMT-12:00) International Date Line West'=> 'Pacific/Wake',
 '(GMT-11:00) Midway Island'=> 'Pacific/Apia',
 '(GMT-11:00) Samoa'=> 'Pacific/Apia',
 '(GMT-10:00) Hawaii'=> 'Pacific/Honolulu',
 '(GMT-09:00) Alaska'=> 'America/Anc...

继续阅读

发表在 php | php timezone已关闭评论

MySQL数据库命名规范及约定

一、【操作规范】
1. 如无备注,则表中的第一个id字段一定是主键且为自动增长;
2. 如无备注,则数值类型的字段请使用UNSIGNED属性;
3. 如无备注,排序字段order_id在程序中默认使用降序排列;
4. 如无备注,所有字段都设置NOT NULL,并设置默认值;
5. 如无备注,所有的布尔值字段,如is_hot、is_deleted,都必须设置一个默认值,并设为0;
6. 所有的数字类型字段,都必须设置一个默认值,并设为0;
7. 针对varchar类型字段的程序处理,请验证用户输入,不要超出其预设的长度;
8. 建表时将数据字典中的字段中文名和属性备注写入数据表的备注...

继续阅读

发表在 db | 标签为 | MySQL数据库命名规范及约定已关闭评论

LISTENING,ESTABLISHED,TIME_WAIT,CLOSE_WAIT

TCP协议规定,对于已经建立的连接,网络双方要进行四次握手才能成功断开连接,如果缺少了其中某个步骤,将会使连接处于假死状态,连接本身占用的资源不
会被释放。网络服务器程序要同时管理大量连接,所以很有必要保证无用连接完全断开,否则大量僵死的连接会浪费许多服务器资源。在众多TCP状态中,最值得
注意的状态有两个:CLOSE_WAIT和TIME_WAIT。 
 
1、LISTENING状态
  FTP服务启动后首先处于侦听(LISTENING)状态。

2、ESTABLISHED状态
  ESTABLISHED的意思是建立连接。表示两台机器正在通信。

3、CLOSE_WA...

继续阅读

发表在 network | LISTENING,ESTABLISHED,TIME_WAIT,CLOSE_WAIT已关闭评论

ParameterInfo properties, attributes and out ref parameters of the methods

引用: http://stackoverflow.com/questions/15636969/parameterinfo-properties-attributes-and-out-ref-parameters-of-the-methods

Well, I'm confused by the properties of the ParameterInfo class.
Unfortunately documentation is not very clear: examples show how to build methods but don't show how these meth...

继续阅读

发表在 .net | ParameterInfo properties, attributes and out ref parameters of the methods已关闭评论

jmap

查看进程内容情况

 

jmap -heap 53195

 

53195 = pid

继续阅读

发表在 java | 标签为 | jmap已关闭评论

TCP状态转换图

 Linux内核协议栈为一个tcp连接管理使用两个队列,一个是半链接队列(用来保存处于SYN_SENT和SYN_RECV状态的请求),一个是accpetd队列(用来保存处于established状态,但是应用层没有调用accept取走的请求)。

第一个队列的长度是/proc/sys/net/ipv4/tcp_max_syn_backlog,默认是1024。如果开启了syncookies,那么基本上没有限制。

第二个队列的长度是/proc/sys/net/core/somaxconn,默认是128,表示最多有129个established链接等待accept。

 

Linux...

继续阅读

发表在 network | 标签为 | TCP状态转换图已关闭评论

CLOSE_WAIT SYN_RECV Netty 分析过程

Netty出现大量的CLOSE_WAIT SYN_RECV通过下面的配置解决

net.ipv4.ip_forward = 0
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
kernel.sysrq = 0
kernel.core_uses_pid = 1
net.ipv4.tcp_syncookies = 1
kernel.msgmnb = 65536
kernel.msgmax = 65536
kernel.shmmax = 68719476736
kerne...

继续阅读

发表在 network | 标签为 , | CLOSE_WAIT SYN_RECV Netty 分析过程已关闭评论

Netty 移动开发注意事项

1. 最大句柄数修改

百万长连接接入,首先需要优化的就是Linux内核参数,其中Linux最大文件句柄数是最重要的调优参数之一,默认单进程打开的最大句柄数是1024,通过ulimit -a可以查看相关参数,示例如下:

[root@lilinfeng ~]# ulimit -a
core file size          (blocks, -c) 0
data seg size          ... 继续阅读

发表在 network | 标签为 | Netty 移动开发注意事项已关闭评论

[转]Android微信智能心跳方案

来源:http://mp.weixin.qq.com/s?__biz=MzAwNDY1ODY2OQ==&mid=207243549&idx=1&sn=4ebe4beb8123f1b5ab58810ac8bc5994&scene=0#rd

 

前言:在1311月中旬时,因为基础组件组人手紧张,Leo安排我和春哥去广州轮岗支援。刚到广州的时候,Ray让我和春哥对LineWhatsApp的心跳机制进行分析。我和春哥抓包测试了差不多两个多礼拜,在我们基本上摸清了LineWhatsApp的心跳机制后,Ray才告诉我们真正的任务——对微信的固定心跳进行优化,并告...

继续阅读

发表在 article | [转]Android微信智能心跳方案已关闭评论

ntp

1. yum install ntp -y

2. http://www.pool.ntp.org是NTP的官方网站,在这上面我们可以找到离我们城市最近的NTP Server. NTP建议我们为了保障时间的准确性,最少找两个个NTP Server
那么比如在英国的话就可以选择下面两个服务器
0.uk.pool.ntp.org
1.uk.pool.ntp.org

它的一般格式都是number.country.pool.ntp.org

第二步要做的就是在打开NTP服务器之前先和这些服务器做一个同步,使得我们机器的时间尽量接近标准时间.
这里我们可以用ntpdate命令手动更新时间
代码:
#... 继续阅读

发表在 linux | ntp已关闭评论

Sublime Text 3 安装Package Control

一、简单的安装方法

使用Ctrl+`快捷键或者通过View->Show Console菜单打开命令行,粘贴如下代码:

 

import urllib.request,os; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); open(os.path.join(ipp, pf),...

继续阅读

发表在 technologys | Sublime Text 3 安装Package Control已关闭评论

C#生成PDF总结

见:http://www.cnblogs.com/Joetao/articles/2933941.html 继续阅读

发表在 .net | C#生成PDF总结已关闭评论

密码保护:把Bit转化为Byte流 解说

无法提供摘要。这是一篇受保护的文章。

发表在 technologys | 密码保护:把Bit转化为Byte流 解说已关闭评论

Quoted-Printable

Quoted-Printable也是MIME邮件中常用的编码方式之一。同Base64一样,它也将输入的字符串或数据编码成全是ASCII码的可打印字符串。
Quoted-Printable编码的基本方法是:输入数据在33-60、62-126范围内的,直接输出;其它的需编码为“=”加两个字节的HEX码(大写)。为保证输出行不超过规定长度,可在行尾加“=\r\n”序列作为软回车。

int EncodeQuoted(const unsigned char* pSrc, char* pDst, int nSrcLen, int nMaxLineLen)
{
    int nDstLen;   ...

继续阅读

发表在 c/c++ | Quoted-Printable已关闭评论

byte to integer

/**  
      
* 转换一个int为byte数组  
      
* @param $byt 目标byte数组  
      
* @param $val 需要转换的字符串  
      
*  
      
*/ 
   
    public static function integerToBytes($val) {  
        $byt = array();  
        $byt[0] = ($val & 0xff);  
        $byt[1] = ($val >> 8 & 0xff)...

继续阅读

发表在 php | byte to integer已关闭评论