Ĭ��
���� �������� 14
�뿪��IM������Ʒ�¿ӣ�����3���¹����ҿ�Դ����ߣ������������·��... ��վ�����㽨��
�ƶ��������Ż�ר��(��)��ʷ����ȫ�ƶ��������Ż������ܽ�
΢��ɨһɨ��ע��

��ϵ��������������Ѷ����ר�ҷ����㡶����֮��ϵ������֮�������Ż� gad.qq.com/article/detail/29546�����½ڣ���лԭ���ߡ�


1��ǰ��


���Ľ���ƪ���ƶ���IM�����߱ض�(һ)��ͨ���׶��������ƶ������ġ������͡��������������ƶ���������Ҫ���ԣ�����ƪ���ѽ��й���ϸ�ز��������Ľ�������ƪ���ᵽ�����ԣ��������ǵ�ʵ�����飬�ܽ����ĸ�������׷�����µġ�ˬ�족������·����������ǿ���ء����첽�������۽���ʵ�����Ӽ���������Ʒ��������ϵʵ�ʣ���һ������ϣ����������������

��������δ�Ķ�����ƪ���ƶ���IM�����߱ض�(һ)��ͨ���׶��������ƶ������ġ������͡������������������ж������������ġ�

��ƪ��Ŀ�ģ�����ϣ����ͨ���׶������ԣ������ƶ���IM�����߸��õ��������Ż��ƶ������ĸ������ԣ�ʹ�ÿ������Ĺ��ܸ��û��������õ�ʹ�����顣

������ȫ��ͬ�������У�Ψһ������ȫ�����ࡱ�������ߣ�����������׼�����Ķ���ȥ����Ҫ���������Ѵ���ʯ����˫�ֺ��÷ϵļ��̡�

���⣬���ִ��ƶ������������ӵ��Ż��ֶ��ܽ᣺�����ٶȡ�������Ӧ����ȫ��������ƪ����Ҳ�ᵽ�˱������������������ݣ�ǿ�ҽ����Ķ���

2��ϵ������


�� �����ǡ��ƶ���IM�����߱ض���ϵ�����µĵ�2ƪ��


��������IM������ѧ�ߣ�ǿ�ҽ��������Ķ�����������һƪ�͹������㿪���ƶ���IM����

3����������


1����������ͨ�ŵĻ������£�


2���漰�ƶ����������Ե����£�


3��������������Щ�������⣬���޷���Ӧ�ò��ҵ��𰸣���ô��������ϵ�������ġ��ˡ���
    ��������ΪIM/���ͼ��������ı߽�֪ʶ�����������������������������������⡣������Ȥ���ɺ���֮��

4���Ż�����һ��������·��


������Ҫ��һ�������ԣ����١������ԣ�˳���������ԣ��ȶ�������ͨ������ҵ�����ݵĴ��䣬����·�������Ǵ����졢��ӵ�¡����������շ��١��������������ȣ����Ǽƻ����������ڵ����ݣ������뵱Ȼ�߹�������ʮ֮�˾�Ҫ���ߣ������������������ưܸ���ʡ����·�����Ѳ������٣���������·�ϵij�ʱ��������֮�꣬�������IJ��òٿز��㣬�����Ϳ첻����������˫����������Ȼ��ǿ���Խ��ܣ����շѾ�Ȼ�ȹ����ؽ�����˫���˳�����������ȷ��ѡ·����Ŀǰ�������ؽ����٣���Ȼ����Ҫ����һ�����̣�����ͨ�и����졣

ʵ���ϣ���ʵ����Ҫ�����ӣ�����ͬ��ƪ����ͼ�� ���߻��������ƶ������������������졿��ʾ��������ͼ����������;�г������ڸ��١�������ʡ��������С�����л���

�ƶ��������Ż�ר��(��)��ʷ����ȫ�ƶ��������Ż������ܽ�_11.jpg

4.1TCP/IPЭ��ջ��������


�������ֱ���Ͻ������ˣ�ÿ��������ȡ�ܴ����и���������������û˵�����������ȿ����������ϣ�


�� ���ƴ�������С

���ƴ������Ĵ�С��1400�ֽ����¡���ʱ����Ϊʲô�������飬�Ⱦٸ�����������һ�£�����һ���󿨳����ط������ڸ����ϸ�·�������߸߲����ò�׳�ۣ���ʱǰ��ͻȻ����һ�������޸߱�ʶ��˾�����ֿ��������ˣ�����զ��������һ��ͣ����ͷ������·������ʮ֮�˾��Ҳ���������ֻ���������ģ���������������һȺ��ж�����ű������˴���������Ŀ�ĵ�ж����������ȡ������˵������������TCP/IPЭ��ջ��Ҳ�У�ѧ����IP��Ƭ����������ר�Ž��ܡ��������²���֤ʵ������������ѧ��Ҳ�������ڸ���·�߹۲��������������Ĺ��̣�������������������ÿ���������⣬�뵽һЩ���������Ƕ�Ӧ�����������ʣ�������û�и��õİ취�أ�������Ȼ�У������������е�˵�����Ҹ�̨���ۣ��������Ϲ�ȥ����һ���͵��ˣ������˾�����Ҳ�����ˡ�

�ع����⣬������˵�������趨1400������ֵ��Ŀ���Ǽ�������������Ч�ܡ���ΪTCP/IP������Ҳ�����Ƹ����޸ߵĹ涨�������ڳ���ʱ��Ҫ����˳�����䣬Ҫô��IP��ƬҪô��Ӧ�����ݲ���Ϊ�������ݱ��ģ���ָ��ΪӦ�ò��ͻ��˻����������Զ˷��͵���������Ӧ����̫��ʱ��TCP/IPЭ��ջ���ƻ����Զ���������Ϊ���ɶ������ݱ��ķ��͵�����������Ϊ�������ۣ�����IP��Ƭ������֧Ϊ���������ع��̷����ͽ��۹��ɶԶ��߾����ã�����һ��һ�����ݱ��ķ�����IP��Ƭ��������������·���������εĴ�����ȷ�ϣ����ϱ��ĵIJ��ֺ�ƴ�ӿ����������������ݰ��ķ���ʱ�Ӵ������ӣ����ң�IP��Ƭ�����У��κ�һ����Ƭ���ֶ�ʧʱ������������IP���ݱ��Ĵ������ķ������ش������ġ��е������ˣ������������⣬���μ���������֮��ϵ������֮�������Ż� ����������

���ǿ��Եó����½��ۣ�TCP/IP���ݱ��Ĵ�С��������������������ʱ��������IP��Ƭ���Ӷ�����ʱ�տ�����

���ˣ��趨������MSS������Ҫ��������̫��MSSֵ������1400�ֽڡ�ʲô��������ѧ��������ʦ�̵�����ǰ��˵��̫�������Ĵ������ݴ�С��1500�ֽڣ�IP���ݱ��İ�ͷ��20�ֽڣ�TCP���İ�ͷ��20�ֽڣ�������MSS��ôҲ����1460�ֽ�ѽ�������ش�����Ϊ�ܶ�·���豸����CISCO·������MSS�趨Ϊ1400�ֽڣ������϶����ɣ�����һ��IP��TCP�����ݱ���ͷ������40�ֽڵĿ�ѡ�MTU�л���ҪΪ��Щ��ѡ�������ռ䣬Ҳ��ѹ����MSS�Ŀռ䡣Ҫ����׷��Ϊɶ����ֵ����1380�ֽڣ��Ǿ��е������ˡ�

֪ʶ����վ��ʲô��MSS��

TCP MSS��TCP Maximum Segment Size��TCP�������Ķγ��ȣ�����������MSS����ʾTCP/IPЭ��ջһ�ο��Դ�����һ�˵�����TCP���ݳ��ȣ�ע������������ָTCP�����е���Ч�����ݡ�����Ӧ�ò㷢����ҵ�����ݣ����֣���������TCP���İ�ͷ���֣����ǿ��԰�������Ϊ������װ����������������������������TCPѡ����������֣�Ҳ���������ֵ�ѡ�ռ4�ֽڿռ䡣

MSS���ڽ���TCP���ӵ��������ֹ�����Э�̵ģ�ÿһ��������SYN��SYN/ACK���ݱ�����ͨ���������������ݱ��ĵ�MSS��MSSҲֻ�ܳ�����SYN��SYN/ACK���ݱ��У���˵��Э�̣���ʵҲû̫�����������أ�ԭ��һ�ὲ������Э�̹�����һ����������һ����MSSֵ����TCP/IPЭ��ջ��ѡ��ʹ��Ĭ��ֵ��536�ֽڡ�


��ô�������ˣ����ơ��޸ߡ����ַ�������ǿ�����dz���̽��һ�¡�

���ȣ������������Լ�IDC�ڽ�����·�ɽ����豸��MSS�趨С�ڻ�����1400�ֽڣ�����������TCP��������ʱ��MSSЭ�̹��̣������ﵽ�Զ����Ʒ������շ����ݱ��Ĵ�С������·����СMTU�Ӷ�����IP��Ƭ����������������������·��·���������豸����������Э�̻��������MTU����MSS����ֵ���ֱȽ�low���ǾͰ׸��ˡ����ͺñȹ����ƶ���һ��������;�����޸߹�ʾͨ����׼������ijЩ�ط��������Dz������㣬û�ޡ�

���Σ�������ҵ�������п���Ӧ����������/��Ӧ�Ĵ�С��1400�ֽ����£�ע��Ҳ�޷���������ǰ�������м�·��MTU/MSS low�����⣩����Ӧ�ò�����д��ʱ�ͱ����������ݰ���С����Э��ȷ����MSS�����ǣ��������ף��ڳ���ǰ�Ͱ����ݲ���Ϊ�������ݱ��ģ�ͬIP��Ƭ���Ʊ�������ͬ�ģ�������Ӧ���������DZ�Ȼ�ġ����ǵ����ڽ�������ȫ��һ����������Դͷ�Ͽ��ƣ��Եø�ʵ��һЩ��

��Ȼ����׵Ļ������򷨣����ƴ������ݵ���������������������Ų���£����ص����ݷŵ��������½�̽�֡�

��Ӧ��ǰ���Ŀ�����������������Ҫô������װ��֮ǰ���ǰ�������·�ϵ������޸���װ������������ô��֪������·�ϵ������޸��Ƕ��٣���Ҫô���չ��ұ�׼�涨��������С�޸���װ������������������ڿ�����������·�ˣ�����������ͨ�����裬�ţ���������

�� �Ŵ�TCPӵ������

��TCPӵ�����ڣ�cwnd����ʼֵ��Ϊ10����Ҳ��ĿǰLinux Kernel��TCP/IPЭ��ջ��ȱʡֵ���Ŵ�TCPӵ��������һ�������оݵ���Ҫ�Ż���ʩ�����ƶ�����������Ҫ������ͬ����һЩ�������ۿ�ʼ����������������

TCP�Ǹ���������Э�飬���ֿ��Ƶ������ؼ����Ʒֱ��ǻ��ڻ������ڵĶ˵���֮�����������ƺͻ���RTT/RTO�����Ķ˵�����֮����ӵ�����ơ�

��������Ŀ����Ϊ�˱������ݷ���̫���Զ�Ӧ�ò㴦������������SOCKET��������������һ�η���N�������������DZ�������������Ȼ����ʱ�ڻ�����Ȧ���ѿ�����ֻ�þ���/���������ظ�����ϸ�����Dz�չ���ˣ�����Ȥ�����ж���TCP/IP���� ��һ��Э�顷��

ӵ������Ŀ������ӵ������ʱ�ܼ�ʱ���ֲ�ͨ���������ݱ��Ľ������������ʺ��������ﵽ��ֹ����ӵ����Ŀ�ģ����ֻ��ƿ���ȷ�������󲿷�ʱ���ǿ��õġ�ӵ�����Ƶ�ǰ�������ܷ���������ӵ���ļ�����TCP/IPЭ��ջ���㷨��ͨ�����鶪ʧ���ж�������ij��������ӵ���������������еľ���ָ��Ϊ���鷢�ͳ�ʱ���յ��Զ˶�ij���������ظ�ACK������������ʱ������������ȷʵ�ܱȽ�ȷ���ı���������ij�������豸���ϻ���Ϊ�����˿�����������·���豸ת����������ʱ���ɱ��ػ����������������ݱ��ģ������ƶ������У������������ͱ��÷dz����ӣ���������Ӱ���͸������ɶ����ĸ���ԶԶ�����м�·�ɽ����豸�Ĺ��ϻ����ء�������ʱ�����źŸ��š�����һ���ź����ε����򡢴ӿ��л�վ�л�����æ��վ�����ƶ����������л��ȵȡ���������������ô�಻ȷ����Ӱ�����أ�����TCPӵ�������㷨��������ʱ�����޷�Ԥ���ģ�ͬʱ������Ҳȷ��δ�����и����ƵĽ����������������⻰��������Ȥ������Щ���������о�����������TCP/IP���� - ��21�¡�TCP�ij�ʱ���ش�������ͨ���׶�-��������TCPЭ�飨�£���RTT���������ڡ�ӵ����������������֮��ϵ������֮�������Ż� ������������

ӵ��������TCP/IPЭ��ջ����ĺ���ӵ�����֮һ����������������������������¶���ţ���������Ϊ����ӵ������ʱ������Ӧ�ü������ݱ��Ľ������������ʺ������������ó���·���������ܾ��������ָ�������ˮƽ��

�� ����SOCKET�������

��SOCKET�Ķ������������ɳ�Ϊ���ͻ���������д�����������ɳ�Ϊ���ջ���������С����Ϊ64KB����Linuxƽ̨�ϣ�����ͨ�� setsockopt ��������SO_RCVBUF��SO_SNDBUFѡ�����ֱ�����SOCKET����������д�������Ĵ�С��

�����������������ǵ�TCP/IPЭ��ջ��������ô���Ĺ����ء����ǻ���һ��TCP���ݱ���ʽ���ײ��еĸ��ֶ������и�16λ���ڴ�С������ͼ������������ǰ���ᵽ���������ƻ��ƺͻ������ڵĸ����Ļ�������������Ƿ׷׷�ī�dz�������ʽ��ϸ����֮ǰ�����մ�ͳ�����ǻ�����վ�������ϰ��ĽǶȿ�һ�£����������ͺñ����������ڻ�����ʱ��Ȧ����������������ʹ�ò���������������������������ʱ���ţ�д�������ͺñ����������ݶ���װ�ó�׼����������������˵�����ڿ����ջ������ٶȷ������е������˰ɡ�

�ƶ��������Ż�ר��(��)��ʷ����ȫ�ƶ��������Ż������ܽ�_222.png

�� ����RTO��Retransmission TimeOut����ʼֵ

��RTO��Retransmission TimeOut����ʼֵ��Ϊ3s��

TCPΪÿһ�����Ķζ��趨��һ����ʱ������Ϊ�ش���ʱ��(RTO)����RTO��ʱ�Ҹñ��Ķλ�û���յ����ն˵�ACKȷ�ϣ���ʱTCP�ͻ��Ըñ��Ķν����ش�����TCP��·������ʱʱ����ζ�źܿ���ij�����Ķ�������·��·����ij����ʧ�ˣ�Ҳ�����жϴ�ʱ��������ӵ���Ŀ����Ա��úܴ���TCP��������Ӧ����������ӵ�����ƻ��ơ�

RTO��ʼֵ��Ϊ3s����Ҳ��ĿǰLinux Kernel�汾��TCP/IPЭ��ջ��ȱʡֵ������·���������У�TCPЭ��ջ������RTT��̬���¼���RTO������Ӧ��ǰ������״�����кܶ����������ŷ�������������ֵ������С�����ǣ����ǿ�ƪ�����ƶ��������ص�֮һ�Ǹ�ʱ�ӣ���Ҳ��ζ����һ��RTT�Ƚϴ��������ϴ�������ʱ������RTO��ʼֵ��С���ܿ��ܷ�������Ҫ���ش������һ�����Ϊ�����¼�����TCPЭ��ջ�Ĺ�����Ӧ������һ�죬ӵ�����������dz���

�����ϰ���̬����ʲô�����أ�������һ�ݰ�ʱ�����ĺ�ͬ�����ҵ���ǰ����û��ȥע�⣬�ȵ����·��˻���׷��Ī������������ʹ������Ī���ڴˣ����������ܸ���һ������һ�εĻ��ᣬ��ϣ���Լ׷�˵���ĵ㣬������Ҫ���������ļ�һ�����޵Ļ�����ϣ����һ���ꡣ

�� ����TCP���ٻ���


TCP���ٻ�����һ��������Դ���ٻ��պ����õĻ��ƣ���TCP���ӽ��뵽TIME_WAIT״̬ʱ��ͨ����Ҫ�ȴ�2MSL��ʱ��������һ������TCP���ٻ��գ���ֻ���ȴ�һ���ش�ʱ�䣨RTO�������ܹ����ٵ��ͷ��������ӣ��Ա�����ʹ�á�

Linux Kernel��TCP/IPЭ��ջ�ṩ��һ�����Ʋ�����������TCP�˿ڵĿ��ٻ������ã��������ǵ�ֵ����Ϊ1ʱ��ʾ���ø�ѡ�

  • 1) net.ipv4.tcp_tw_reuse = 1
  • 2) net.ipv4.tcp_tw_recycle = 1
  • 3) net.ipv4.tcp_timestamps = 1��tcp_tw_recycle����ʱ����ͬʱ���ñ����֮����Ȼ��timestamps����RTT���㣬��TCP����ͷ���Ŀ�ѡ���д��䣬���������������ֱ�Ϊ���ͷ�����TCP����ʱ��ʱ�����ͽ��շ��յ�TCP������Ӧʱ��ʱ������Linuxϵͳ���ƶ��豸�ϵ�Android��iOS��ȱʡ�����˴�ѡ����鲻Ҫ�����رգ�

���ϲ�����tw��TIME_WAIT����д��TIME_WAIT��TCP�������ӹر�״̬�����ء�����TIME_WAIT��˭������������������ȥ������������������֮��ϵ������֮�������Ż� ���ģ�����

�� HTTPЭ�飺����SOCKET��TCP_NODELAYѡ��

TCP/IPЭ��ջΪ����������Ч�ʣ���������С�����ݱ�������������������ӵ����������һ���໥Эͬ�Ļ��ƣ��Ǿ���Nagle's Algorithm��TCP Delayed Acknoledgement��

Nagle�㷨��Nagle's Algorithm�����Է�����John Nagle��������������John Nagle��1984���״��������㷨�����Խ�������������˾������ӵ�����⣨RFC 896�����������ľ��������ǣ��������ǵ�Ӧ�ó���һ�β���1���ֽڵ����ݣ����͵���telnet��XWindows��Ӧ������������1���ֽ����������������ݰ�����ʽ���͵�Զ�˷���������ô�ͺ�����ʹ��������̫��΢С���������¹��ء�

��Ϊ����1���ֽ���Ч���ݵ�΢С����ȴ�軨��40���ֽڵĶ��⿪������IP��ͷ20�ֽ� + TCP��ͷ20�ֽ�����������Ч�غ������ʼ������µ�������ͳ��Ϊ�޴�����֢��Ⱥ��Silly Window Syndrome����ǰ��������̸MSSʱҲ�ᵽ��������Ϊһͷ�������󿨳���һ�ˣ�Ҳ���޶۵ġ������Ḻ�ع��������߾�������˵���пɽ��ܣ����Ƕ����ظ��صĹ��������ԣ��ͼ��п�����������ӵ������̱����

�ִ�TCP/IP Э��ջĬ�ϼ��������������������ܡ�

�������ƶ�APP������ʵ���У������󲿷ֶ����ᣨ���ݴ�С������MSS����Ϊ�˱����������������⣬���鿪��SOCKET��TCP_NODELAYѡ�ͬʱ�������ڱ���ʱ��д��������Ҫע�⣬һ����Чָ������һ������д�루�����ὲЭ���ϲ����Ƕ���ָ��һ������д��������˼�룩����������������������Ӧ���ݷ��أ�˳��Ҳ������ACK�ˡ�

4.2��������


�� �Ϳ�����

�ڿͻ��˽������������Ȳ��Ե��ݻ������У��������������ˡ��ͽ����롱�IJ��ԣ��ھ����ͻ��˸����ĵط�������������ʹ��CDN������ͨ������RTT���������罻����Ӧ���ܡ����������ڹ��ڵ�����ִ�л���Ҫ��һ��ǰ׺������ʡ����Ӫ�̡������͸���������IDC������ͬѧ�����˾޴��ľ�����������ĥ��

�ڳ�����Ӫ�Ĺ����У����ݹ۲쵽�����ݣ����ֲ����������������ľ��������ġ�����һ��ǰ��̸����������ָ��BDP��������·������RTT�����ȹ�ϵ����RTT�����������롢����ӵ���̶ȡ�IDC������������ʱ�ӵ����������ۺ�Ӱ���ģ������ľͽ���Ȼ������ϸ�ˡ�

���Ϳ����롱�ڡ��ͽ����롱���ԵĻ����ϸ��������������ÿͻ��˲��ٺͱ������ƣ�ͨ����̨�����ݷ������γ����ͻ��˽���IP���Ϳ�ԭ��ƥ�������������ľ������Ȳ��Կ⣬���ͻ�����������ѡ���������ķ����������㡣

�йؾͿ������ĸ���ϸ���������μ���������֮��ϵ������֮�������Ż����壩��һ�ĵġ�3.1.2�ڡ���

�� ȥDNS��IPֱ��

DNS������Ҫ1��RTT��ʱ�����ģ������ƶ������µ�DNS�����ںܶ��������⣺

  • 1) ����DNS����ȫ���û�40%���ϵIJ�ѯ���󣬸����أ�һ�����ϣ�Ӱ���޴��������İ�����PC������Ҳ�кܶ࣬Googleһ�¼��ɸ��ܴ�Ŀ���ĵ�Ч����
  • 2) ɽկ��ˮ����ˢROM���ƶ��豸��LOCAL DNS���ô�����
  • 3) �ն�DNS�������ã����½����ɹ��ʵͣ�
  • 4) ijЩ��Ӫ��DNS�������ٳ����⣬ʵ��������ISPҲ�����������⡣�����ٳֶ԰�ȫΣ�����󣬲�Ʒ����ʱҪע�������˷������ݵİ�ȫУ�飨����Э���Ѿ������ڰ�ȫͨ����ʱ�����ÿ��ǣ���ȫͨ�����Ի���HTTPS����˽�а�ȫ��ϵ�������ڽٳֵ��ж���Ҫ�ͻ��˱���ʵ����ȡ�������ݵ�Ŀ����ַIP����Ϣ��
  • 5) DNS��Ⱦ���ϻ���������

���Ͼ�����ǰ���Ϳ�����С���У���������FSM������ʹ�ö�̬�������б���ԭ����

�й��ƶ���������DNS���⣬��������ȫ���˽��ƶ���DNS�����ٳֵ���֢������ԭ����������Դ����������������

�� �����ɴ���̽��

�����ӽ���������������������ʧ�ܵ����󣬶��ն�ϵͳ�ṩ������״̬�ӿڷ�����������ʱ��������Ҫ�������ɴ���̽�⣨����Ԥ����URL����IP��ַ�������ӳ��ԣ��������������쳣�ͽ��������쳣��������Ϊ��λ���⣬�Ż���̨��������������֧�֡�

̽�����ݿ����첽���浽������������Ӧ�ð��������ֶΣ�

  • 1) ̽���¼�ID��Ҫ��ȫ��Ψһ���ظ���
  • 2) ̽�ⷢ��ʱ�䣻
  • 3) ̽�ⷢ��ʱ�������ͺ�����������Ϣ������WIFIʱ��SSID�ȣ���
  • 4) ���ص��ȵĽ����������������ͣ�
  • 5) ���ص��ȵĽ���������IP����ʹ���������룬�ɺ��ԣ���
  • 6) ̽����Ŀ��URL��IP��ַ
  • 7) ����̽���ĺ�ʱ��

4.3��·����


��·�����˷����ĸ���·���Ϳ�������ѡ·����·�����������θ�Ч��ʹ������·��������һЩʵ���ܽ᣺

�� ��·����

�����ڿ�ƪ������������Ϊʲô����ʱ�����ᵽ�����ӽ���ʱ�������ֵijɱ���������������ʱ�ӡ�Ƶ������խ�����Ļ����£��û�ʹ��������Ƭ������Ƶ�ȣ���������Ӧ��һ���������Ӷࡢ��Ƶ�������������������ɱ��Ե�����������

���ˣ����ǽ�������·���������Ա���һ��ʱ�䣬����HTTP�����ӿ���ͨ��HTTP Keep-Alive��˽��Э������ͨ�������ȷ�ʽ��������·��

����Ҫ�㽨�����£�

  • 1) ��·����ʱ�����������˰��Ϳ����Ի����·����µĽ��붯̬�������б�����Ӧ�ð��ս�������FSM��״̬��Ǩ���ڱ��ν����������ɺ����ؽ����µĽ�����������IP��·���������л�������ʱ����ѡ����
        - a. �ر�ԭ�����ӣ���ͣ����ͨѶ��ͬʱ��ʼ�������½�����������TCP��·���ɹ����ָ��������������罻����
        - b. �ر�ԭ�����ӣ���ͣ����ͨѶ���������罻������ʱ��ʼ�������½�����������IP��·��
        - c. ԭ�����Ӽ�����������ͬʱ��ʼ�������½�����������TCP��·���ɹ����µ������л����½���·�ϣ�������ʽ���ɳ�ΪԤ�����ӣ�ԭ�����ڿ���ʱ�رա�
  • 2) ��·����ʱ������������ͨ��������ҵ���߼������ص�������������ͨ�����鸴�ã����ڸ�ý����ȡ��������ͨ���Ͳ����ˣ�
  • 3) ��·����ʱ������Э���ϲ������������ۣ�����ʹ�ã�Ч�����ѡ�

�� �����������͵ij�ʱ����

�ڲ�ͬ����������ʱ�����ǵ���·��ʱ����Ҫ����ϸ���������Դ�����·�����й������೬ʱ���ֱ������ӳ�ʱ��IO��ʱ��������ʱ��

������һЩ���齨�飬��������ͬ̽�֣�

  • 1) ���ӳ�ʱ��2G/3G/4G��5 ~ 10�룬WIFI��5�루��TCP������������1�γ�ʱ�ش��Ļ��ᣬ�����о�һ�¡�TCP/IP���� ��һ��Э������TC P�ij�ʱ���ش����֣���
  • 2) IO��ʱ��2G/3G/4G��15 ~ 20�루�������粻�ȶ������������±�Ҫ�Ļָ��ͳ�ʱ�ش�ʱ�䣩��WIFI��15�루1��MSL����
  • 3) ������ʱ������ҵ��������ͬ�����컯�������ܵ�ԭ����ǰ�������û�����������������ʱҪ��һЩ������������30���ڲ��м�ʱ�ķ���������̨�������Գ�һЩ�������ݿ��Զ�һЩ�������ݿ��Գ�һЩ��
  • 4) ��ʱ���ǰ��������ԣ�����Ҫ����С�ĵ����ԣ����������ۡ�

��ʱʱ���˶̲��˳�����һ��������ʱ�����ǰ��·����ʱʧЧ���Ӷ���������FSM״̬�Ŀ��ٱ�Ǩ��Ч��Ҫ�ȳճյĵȴ��ߵö࣬ͬʱ�����û���Ҳ�ܵõ�һ���Ϻõ���������

���೬ʱ���������������ƶ˿����ɿء�

�� ���������µIJ�����·

��������4G��WIFI��Ҫ������WIFI·���������ֻ��ȵ�����������������ʱ�������������л�ѹ�����϶������������ݣ���ý��������������������ʱ�����Կ��Dz���������·����ִ�С�

���ڵ�һ�����������Ķ����Ӳ���Эͬ���ԣ���Ҫ������֧�ֶϵ��������ͻ���֧������Эͬ���ȣ�

�� ������·����


������·���룬Ҳ����˵�����������ݷ��룬Ŀ���Ǹ�������ͨѶ�Ĺ��̣�����������ͨѶ�ӳٶ������������ݵĽ��������û��Ƕȿ���������Ϣ���첽���أ�����ָ����Ӧ������ʱ��

�ƶ��˴󲿷ֶ���HTTP������ģʽ�������������ݵ�Ŀ��URL�����Ͳ�ͬ���Ƚ���Ȼ�Ŀ��Դﵽ������Ҫ�󣬵��ǻ���Ҫ�ر�����ǿ��������Ϊʵ������Щ������Э���������滹��Я������ͷ������֤���ȵ�ʵ�����ݡ�

�� ������

�����Ӷ�������Ӧ�����罻���ļ�ʱ�Դ������棬һ�����û�ʹ��ʱ����ʡ���������ֵ�ʱ���ȴ�����Ӧ���ݣ���һ�����������߱���ʵʱ�����������������Լ�ʱ��ʾ�û���Ҫ��Ϣ��������ͨ���������ϵ��첽���������õ������û����顣

�����ӵ�ά���������ӹ��������ӳ�ʱ�������������й����Ȳ��֣�����ʵʩ���Ӷ����Ը�һЩ�����������ƶ����绷���¡�Ϊ�˱�����·����Ҫ���������ƣ�������һ���Ƕȿ�����Ҳ�����Լ�����Ϣһ��������PULL/PUSHʱ��������ע�����ݴ���Ҫ���ᣬ����������0.5KB�����������������������볤���ӷ������Ӷȵ�һ����Ҫ���棬�ƶ�������·�������ӣ����������廨���ţ���·��ʱ���ø���ǧ�����ʱ��ѡ��ѧ�ʱȽϴ󣬲���Ҫ�����������ͣ��������ֲ�ͬ��Ӫ��������ͬʡ�У���ʷ������ʵ����2���ӵ����������������Ƚ϶��IJ�Ʒʵ��ѡ��4.5���ӵ��������������ҳ����ӳ��˸��ƶ����������ǿ����ŵ����������⣬�ƶ��豸�����ĵ���������Ҳ���нϴ������ģ�ͬʱ���������˴����ͷ�����Ͷ�����ӡ�

���ԣ�����һЩճ�Ժͻ�Ծ�Ⱥܸߡ�����Ϣ����ʵʱ��Ҫ���ܸߵ�ͨѶ��APP�⣬��������ʹ�ó����ӣ������Կ��Dz��������ķ�ʽ��

  • 1)  �˻������ӣ����û���ǰ̨ʹ��ʱ������һ����������·����Ծʱͨ���û�ʹ����������IO������·���ã���Ĭʱͨ������HTTP Keep-Alive��ʽ������ͨ��˽��Э��������ʽ��������·��һ��Ӧ���л���̨������5~10������û�����罻�����������йر���·���������û�������������Դ���ķ���ȡ��һ��ƽ���㣻
  • 2)  ��ʱ��ȡ/ѯ�ʣ�����һЩ��PUSH������APP�����ǿ��Բ���һ���ƶ˿����ü���ʱ���Ķ�ʱ��ȡ/ѯ�ʷ������������ص㣬һ�Ƕ�ʱ�ļ����ƶ˿������ã��·����µ��ͻ��˺��´���Ч��������ȡ/ѯ��ʱ�������·���ָ����Ҫ����һ��PULLʱ�����Ը����ѽ�������·����ǰ���˻������ӵ�ģʽ�����Ƕ�ʱ��ȡ/ѯ��ʱ���ڿͻ���Ҫ��ʱ���ϵľ�����ɢ�������������IJ�����ѯ���������͸��صľ޴�ë�̣�
  • 3) �������ܣ�����ʹ��OS���õ�PUSHͨ��������iOS��APNS��Andriod�� GCM��Google�����Թ���ʦ�Ļ����ƵĹ�˾������OS��������ʩ����ʱ��ȴ���ֳ��˺ܲ���ǰհ�Ժ�ϵͳ˼����������GCM��ǰ��C2DM��û��ô�ռ�ʹ�þͱ��滻�ˣ���Ҳ��ζ��Android���ְ汾PUSH������ һ�µ����⡣��������ô˵��OS���Ļ�����ʩ���������ܡ��ȶ��Ի�����Ч���϶�������APP���Լ�ʵ�ֵķ�������ʵʩ�������ϵķ������ر�Ҫ�ᵽ��һ���ǣ��й���ɫ�������ڣ�������Ӫ����������APNS��PUSH�˿�2195��Ҳ������GCM�Ķ˿�5528����������Щ�ײ������ij����ӻᱻ��Ӫ�̸��š�����Androidƽ̨��������ϵͳ���񱻸��ֶ����޸ĵ����⡣�����ģ��취�ܱ������࣬�������ѡ�

�й�Android���������⣬���Բο���
�� ������

�Զ������ǵ��º�̨ѩ������Ҫ����֮һ�����ƶ����粻�ȶ��������£�������ʱ�����Բ������ܴﵽԤ�ڣ�������ν�������ƶ��豸�ĵ�������������

���ˣ�����������ǰҪ��һЩ���컯�Ŀ��ǣ�

  • 1) ��ǰ�ƶ��豸������״�����Σ�����û�����磬�򲻱����ԣ�
  • 2) �����趨��Ҫ��ʱ����������Ϊ�ƶ��������綶�����ָ�������Ҫһ��ʱ�䣬�������Բ������Ѳ��ԣ�����������ν�����ĵ�����ʵ���У�������һ�����ӻ�IOʧ�ܣ�����ʧ�ܻ���ʱ��ʱ����3 ~ 5�������ԣ�
  • 3) ����Ӧ�趨��Ҫ����ʱ�ޣ���Ϊ�����������б��Ƚϳ���ÿ����������ַ��Ҫ���Ժ͵ȴ����ɴΣ����տ��ܵ��½�������FSM�ͷ������б�����FSM��ת��ʱ��������ʱ�û�����������Ϊ��ʱ���ȴ�����Ӧ����ʱ�޲������Բο�ǰ�������������͵ij�ʱ�����е�������ʱֵ��һ��ij�����Գɹ���������ʱ�޼�ʱ��Ҫ���㣻
  • 4) �������·��ض������루�������������ϡ����ػ��߸��أ�ʱ����ʾ�ͻ���ֹͣ���Բ���֪�����û���������ǿ������������������ϸ�����ۡ�

ÿ��Ŀ����������ַ�����Դ�����������ʱ�޺�����ʱ�����������������ƶ˿����ɿء�

�ر���Ҫ������һ���ǣ��ƶ�APP����HTTP������ģʽʵ��CS����ʱ���㷺��ʹ����ϵͳԭ���������߿�Դ��������Щ�Ѻõ�ģ���ѳ�ʱ�����Զ���װ��������ȱʡֵ�Ƿ��ʺ��Լ���ҵ���ص㣬��Ҫ������ע��ʹ��ǰ��������֪��Ȼ��֪������Ȼ��

�� ��ʱ����

͸�������أ����������κ�Ĭ������ͥ���ˡ��Ŷ����ˡ��û������ˡ��������ú�װɵ����Ҳ������ȡ�ɣ�����ʱ�����������϶�Ҫ�������صĴ��ۡ���ʱ�����ϵĸ�֪״����Ӯ���½������Σ�С���������ر����Թ���֪����

��������Ϊ���粻���ڻ������������ƶ����豸��·���쳣ʱ��Ӧ�ü�ʱ����������ʾ�û������û�ע�⵽��ǰ���������粻���ڡ�FREE WIFI������֤ҳ����ȷ�ϵȵ����⣬ʹ�û����Լ�ʱ��������������״̬��

�������Ƿ���������ʱ��Ӧ��ʱ�����������ϵĸ�֪�û�����ȡ�û����½⡣

�����쳣��ʾ������������ͨ������Ϣ�ij���Ҫ����һĿ��Ȼ���޶����Ͷ��ν�����

4.4IO����


����һ�����ٺ͸�Ч��������·֮�ϣ�����IO���ȺͿ��ƣ�Ҳ������Ч�ܺ͸����û���������Ҫ���ڡ�

Ҫ̽�ֵ����ݰ�����

�� �첽IO

�첽��IO��Ŀ�ľ��DZ�����Դ�ļ��о��������¹ؼ�������Ӧ�����������ں����������������ķ����л��ص�̽�֡������ر������������ǽ����ڳ����ܹ���������ʱ��Ҫ������������֧���첽�������Ʊ�Ҫ���첽��������ϵ�����㼶ģ�飬���߿��ܻ��漰�������й��������ȼ�����ʱ��CRUD�������¼��������������ȵȡ�

�첽IO�������緽���⣬���ƶ��豸�����ǻ��ر�Ҫ����һ�´���IO���첽����ΪƵ�������������Ĵ���IO������APP��UI���٣����û������Ͽ����ǽ�����Ӧ�ٶۻ��߻���֡���½���һ����˵������IO�첽��ѡ�ÿռ任ʱ���ķ���������������������ʱд�����̡�

�� ��������

�����첽IO���������ƾ��Ե���Ϊ��Ҫ�����첽���Ƶ�����������ʹ�ã�����ͬ���Ǹ��ƶ�APP������һ���С����֡��ĵط�һ�����ܿ��ܸ������͵����󡢲�֪�����ι����������ͷ����������ڴ��г�һ�ձ������֡���

�첽IO�ṩ��һ���ܺõķ��������ùܵĻ��ƣ����ͻ�����ʹ���ߵ����ͣ������Ƿ���Ҫ���������ػ�����������һ���ԵĶ����첽���У��Լ�������ת�����ߡ���������������Ч�ʺͽ�����Ӧ���ܵ��½���Ҳ��������Դ����ν���ġ�

�ں������첽�����������������л��漰�����ػ����Ļ��⣬��ǰ���첽IO�Ĵ���IO��ʱ��Ч��ת�������У���Ӧ�ð���IO�����Ŀ��ƣ����Ǽ�������Ϊ������������·�������������Ķ�ռ����Ӱ������APP��ʹ�ã�Ҳ���������١��������첽�������ɻ�д������ͬ��������ռ�ù������ڴ���Դ��

�� ��������

PUSH����Ӧ����ƻ����˾���ƶ��豸��ȡ�ûԻͳɾ͵�����Ҫ��������֮һ������һ�����ƶ�֧����ϵ���������������۲�����iOS��APPLE�ƶ��豸�����˻��������飬ֻ���ظ����ԵĻ���������APNS��������Ϣ���˵����⣬�ڹ�ȥ��ֻ����Ӫ�̵Ķ������������������ͺ���ȡʹ�����Ǿ߱���ʵʱ��ȡ��Ҫ��Ϣ��������

Ϊ��Ҫ�������ϡ���Ϊϵͳ����������ϵҲ����ά��һ���Լ�����·����������·��Ҫ�����廨���ŵ�APP�������ݣ�����̫�أ�һ���������������������Ի������ķ���ϸ���У�����һ����Ҳ������������·��ӵ�º������ӳ١����ˣ�ͨ��PUSH֪ͨAPP������APPͨ���Լ�����·ȥPULL���ݣ�����Ч��������PUSH���ƣ�����ʹ��APP�ܰ���ʹ�����磬������������·���������ҽ�ʡ�˵�����������

�� �ϵ�����

һ���棬��������·����ʱ�����ǽ��������������µIJ�����·������ͬһ����������ȡ���������ͻ��漰�������IJ��ֺͲ���ִ�У������Ǻ�̨��֧�ֶϵ�������

����һ���棬�ӿͻ��˵ĽǶȶ��ԣ��ƶ������IJ��ȶ��ص㣬���ܻ�����ij����������ȡ����ͻȻʧ�ܣ��������Զ����Ի����û����������ԣ������ܴ��ϴ�ʧЧ�������ļ������񣬻���ʡʱ�䡢ʡ������ʡ������Ч��������Ҳ������ʮ�����á�

5����������������������


������ֹ�˶���ǿ�����罻���ġ��١�����Ӧǿ�����罻���ġ��򡱡�

������һ����ʱ���׶�����ͨ����ȡ��Ч�����ƵĹؼ����ؾ��Ǽ��������ϵ���������������������������������������������Щ�����н���������Ҫ�����ļ��ࡢ���ɣ��ᳵ���ӡ����������Dz����е������ɶ������ٸ��ٴ�������û����

������ʵ��������Ҫ�ֶ�������̽�֣�

�� Э�������ƻ�

�����ƱȽϽ��գ����ǿɶ��ԲҲ�����γɿ�ά���ԺͿ���չ�Բ���ⲻ���IJ���ӡ������Ҳ�����˴����ɼ��ַ���Э���ij��֡���������0��1�����磬�����dz���Գ��ˮ�͵磬�κ�һ���������ף���û�������������ˡ�

�� ��ЧЭ��

��Ч��Э�����Դ���������ȥ���⣬һ��Ӧ�ò���׼Э�����ܣ����ǻ������Ϸ�װ��ҵ����Э�����ܣ���ʱ��Ҳ���Ը�����Ҫֱ����TCP֮�ϰ������������ϲ����γɴ�����ҵ����˽��Э�����ܡ�������Ϊ�˼�������ģ����ͨѶ���ƺ�һЩͨ���ԡ������Կ��ǣ�Ŀǰ�����������£����Ƕ���ѡ������HTTP����Ӧ�ò���׼Э������֮�ϳ���ҵ����Э�����ܡ�������������������������չ��̽�֡�

������Ӧ�ò��ı�׼Э���Ż�������HTTP/1.1��Pipeline��WebSocket����HTML5�����ӣ���SPDY����Google��������HTTP/2�ȣ������ر���Ҫ��ע���Ǵ��������׶ε�SPDY�Ͳݰ��׶ε�HTTP/2��

SPDY��GoogleΪ�˹���HTTP/1.1����ǰ�汾�ľ����Կ�չ���������о�����Ҫ���������ĵ㣺

  • 1) ��·����������HTTPЭ����������ʱ��ѡ����һ��һ��һ���ӵļ���ģʽ�����������кܶಢ��������Դ�����������ij�������·������������ʱ���ɱ��Ͷ������ˣ�
  • 2) �첽����������������HTTPЭ�������������У�����ȡ������Դʱ������Ӧ��������HTTP��·��HTTP/1.1��Pipeline���ƣ�ʱ���������޷����ֿͻ������������ȼ����ᰴ�������ȳ���FIFO����ģʽ�����ṩ�������������ܻ������ͻ���һЩ��Ҫ������Դ�ļ��أ�������·���õ�ͨ���ϣ����ṩ���첽����������Դ��ȡ����ָ�������������ҿ���ָ����Դ���ص����ȼ�������CSS�����Ĺؼ���Դ���Ա�վ��ICON֮����Ҫ��Դ���ȼ��أ��Ӷ������ٶ����飻
  • 3) HTTP��ͷ�ֶ�ѹ������ע����ָ�ֶεĺϲ�ɾ��������ѹ���㷨֮�⣩������HTTPЭ����HEAD���ֶζ࣬��������ÿ��������Ӧ�������ϣ��ڲ���ҵ�񳡾��У����ݵ���Ч���ݳߴ�ԶԶС��HEAD�ijߴ磬������ʱ���ɱ����Ƚϴ󣬶��Һ��˷ѣ�
  • 4) �������˾߱�PUSH�����������������������ͻ��˷���ͨ�����ͻ����������ݡ�

HTTP/2�ɱ�׼����֯���ƶ����ǻ���SPDY�������ɹ���չ��HTTPЭ��������׼������������Ȥ�˽���ϸ�������Բο�HTTP/2��DRAFT�ĵ���

������ҵ������Э�������Ż��������Դ��������濼��

  • һ ��Э�鴦�����ܺ��ȶ��Ժã���������Э������ռ�ÿռ�С�������ͽ���ʱ�ڴ�ռ����CPU����С�������ȵȣ�����bad casae�dz��٣�
  • �� �ǿ���չ�Ժã����¼����Բ���˵�����ϼ���Ҳ���Dz��ܣ�
  • �� �ǿ�ά����ǿ����Э�鶨�塢�ӿڶ����ϣ������ɶ���ǿ���Ѷ�����Э���Կɶ��ַ�����ʽչʾ����ͨ��Ԥ����ת��ΪԴ�뼶�ļ����빤�̱��롣

���ܻ���ͬѧǿ��Э������ʱ�Ŀ��Ķ��������⣬��Ȼ����01����Ӧ���dz���Ա�Ļ�����������һ�����ܾ�û��ô��Ҫ�ˡ�

��Ч��ҵ����Э�����ܴӷֲ�ʽϵͳ���ڴ���Corba���������кܶ಻����ʵ����Ŀ��Ŀǰ�����еĿ�Դ����Ӧ��ProtoBuf������ѧϰ������

����ν��;ͬ�顢������Ϭ����ı���ϣ�Ӣ��������ͬ......��˵��˵ȥ����ЧЭ�����Ż�˼·Ҳ������·���á��������ϡ�Э�龫�򡢰�ѹ���ȵ��漼���ɵķ���֮�ڡ�

�й�Protobuf�ȼ�������ϸ���£����μ���

�� Э�龫��

Э�龫����Ŀ�ľ��Ǽ�����ν�����ݴ��䣬��������Ч�ܡ��׻�˵��ǧ�ﲻ���롱�����˳ϲ�����Ҳ��

����ʵ���ܽ��������㹩�ο���

  • 1) �ܲ����ľͲ���������Ҫ�ĺ�ϣ���е����ݶ��г��������նԴ���Ʒ������̬ �ȣ��ȿ���һ�룬�پ���һ�룬���ƾͲ���ˡ����⣬��ЧЭ���ṩ�˱ȽϺõ���չ�ԣ�Ԥ���ֶ�Խ��Խ�ã��ƶ��������ݻ��dz��죬�����ᷢ��ǰհ��Ԥ�����Ǹϲ���ʵ�ʵ�������
  • 2) ���󹫹����ݣ��Ѹ�Э�鹲�Ե��������ݳ�����������װ�ڹ������ݽṹ�У� ����ν��ͷһ�ξʹ�һ�ݣ������뷨�����ʣ�TCP/IP�����������������������ˡ����˴������������Ľ����⣬��������ά������չ�ĸ��Ӷȣ�һʯ�������ҳ����У�
  • 3) �������������ַ������ֱ����ֵ�������������������������Ҫ����Ӣ�IJ��ñ�������BS��
  • 4) ��������������֪ͨ�仯�����ݣ��ý��շ��������죬���Ǹ��ܺõ�����˼�룬ʵ������Ҫע������һ���Ե�У���ͱ��ϻ��ƣ���������ר�ŵ�ϸ�����ۡ�

�� Э���ϲ�

Э���ϲ���Ŀ����ͨ������������ָ���鲢��һ�����������У�������·������������������������Ч�ܡ�

��ʵս�ܽ����������������ο���

  • 1) Э���ϲ�����Э�龫����Ч�ʷ�����
  • 2) Э���ϲ��Ļ�����ҵ��ģ�͵ķ������ڷ����Ļ�����ȥ���ۺϡ����ȵ����ֳ�����������ʵʱ���첽��Э�����������ֱ�ȥ�ϲ������ε����ֳ������أ�Э��������Э����Ӧ�����ݹ�ģ��ָѹ���󣩣�����ȷ����һ�����ݱ����п�����������
  • 3) Э���ϲ��ڰ��ķ�װ������������ѡ����һ������Э���ϲ���ͳһ��������ѹ���ͽ��ܣ�����������Э���ֱ��������������ܣ�ǰ��Ч�ʸ�һЩ����ʵս���õ�Ҳ���ձ飻����Ϊ��ʽ�����ṩ���ܣ�
  • 4) Э���ϲ��Է��������첽�����ܹ��ʹ������������˸��ߵ�Ҫ�����ر���ҪȨ�����罻��Ч�ʺ��û��Ժ�̨����������Ӧ�ڴ�֮����ȡ�᣻
  • 5) Э�������߼�˳����ϵʱ��Ҫ���濼�������Ƿ��������ܷ��ϲ���
  • 6) ������Э�鲻Ҫ�ϲ���

�� ��������

��������׼ȷ����Ӧ������Э�龫����һ�����֣�����ҵ���ص����ϵķdz����ܣ�ֵ�õ�������һ�¡�����������CS�����������Ƚϴ���ʱ���г��ַ��ӵĿռ䣬��Ϊ���������������ͻ��˺ͷ��������㡢�洢�ļܹ����Ӷȣ�������Դ���ģ����Ҵ������ౣ������һ���Ե���ս����Ȼ�����ǿ������Ƶĸ����ɣ�����һЩ��һ�¡�

������һ�������������������������á�

��Ӧ�÷ַ��г���Ʒ�У�����һ����Ҫ���ܣ��и������ѡ�����ʵ��ԭ���ܼ򵥣���Android�豸Ϊ�����ͻ��˰��û��ƶ��豸�ϰ�װ��APP������APP���ơ�APPǩ����APP�汾�ŵ���Ϣ���͵���������������������Щ��Ϣ��APP���в�����ӦAPP�Ƿ��и��²����͵��ͻ��ˡ��������̷dz��򵥣��������û��ֻ���װ��50��APP�������Ͻ������������ͷdz��͹��ˣ����˷������͵������������û������Ļ������Եúܱ��ء�

����ʱ�������������Ϳ��������ó��ˣ����������ķ�����

  • 1) ÿ����Ȼ��24Сʱ�ڣ��ͻ���ѡ��һ��ʱ�䣨����ѡ��פ���ں�̨��ʱ�����ϱ�һ��ȫ�����ݣ�
  • 2) �ڸ���Ȼ��24Сʱ������ʱ�䣬�ͻ��˿��Զ�ʱ�����û�ʹ��ʱ�����������ݣ�����ж�ء���װ�����������ȴ����ı仯��
  • 3) ��Ϊ��һ���Եı����ֶΣ��ͻ������յ�������ʾ��Ϣ�󣬸������ѵ�APP�б����ƶ��豸��ʵ�ʰ�װ�Ͱ汾������һ�κ˶ԣ�
  • 4) ������������ʱ��ʱ�䶼�������ƶ�ͨ���·�����������ϸ�����ơ�

�� ��ѹ��

ǰ�澫��ϸ�����ϣ������ֵ�ѹ���㷨�ϳ��ˡ�ѡ��ʲô�㷨���м�����Щʵս���ܽᣬ����������һ��̽�֣�

  • 1) ѹ���㷨��ѡ�������DZȽ���Ϥ��ѹ���㷨deflate��gzip��bzip2��LZO��Snappy��FastLZ�ȵȣ�ѡ��ʱ��Ҫ�ۺϿ���ѹ���ʡ��ڴ���CPU����Դ���ġ�ѹ�����ʡ���ѹ���ʵȶ���γ�ȵ�ָ�꣬�����ƶ��������ƶ��豸���ԣ����鿼��ʹ��gzip��������Ҫע�����ǣ��������������ݵ�ѹ���㷨ȡ���нϴ����죬����һ�Ŷ��ۣ�
  • 2) ѹ���ͼ��ܵ��Ⱥ�������һ�����ԣ����ܺ��Ķ�����������ѹ���ʻ���һЩ��������ѹ���ټ��ܣ�
  • 3) ע��һЩЭ���������������������ݱ����Ƿ��Ѿ�����ѹ��������Ҫ�����ظ���������Ҫ�������ܺ�Ч�ʵ��½�������һЩͼƬ��ʽ����Ƶ��APK�ļ������Լ���ѹ���㷨��

˵���⣬���������ˣ�����Ӧ�ò���׼Э����������ѹ������ô�������Ϸ�װ��ҵ����Э�����ܻ���Ҫѹ������ѹ�����������ļ�ǿ�����������治�ûش𣬿��ǵ�HTTP/2������Ӧ�ò���׼Э�����ܶ������ռ�����ʱ�գ�������ҵ����Э����������ѹ�����ơ�����׷�����������ݺ���Ӧ�ò���׼Э��������Ӧ�Ƿ�֧��ѹ������֧��ʱ��ѹ���㷨���ε���Ϣ����̬���ţ��ܵ�ԭ������һ���֣�ֻѡ�Եģ���ѡ���ġ�

5���Ż�����������ǿ���ء�


�ɼ෽�ɿأ������ڶ���֮�䣬Ҫ�γ����õĹؼ���Ӫ���ݵIJɼ������ܺͷ������ƣ�����Ҫ�����ƶ˿ɿص����ú�ָ���·����ơ�

��ƪ�ص��������������緽�����عؼ�ָ���ġ��ࡱ�͡��ء���

�ԾͿ�����Ϊ����̽��һ��ǿ���������Ĺ�����ʹ��:

  • 1) �����������أ��ͻ��˻��ܽ�������FSMִ�й���Ԫ��Ϣ�Լ�ҵ��������Ӧ������Ԫ��Ϣ�����ɴ˸����������Ͳ�ͬ����Ӫ�̲�ͬ�������������Һ�ʡ�в�ͬ���������ɹ��ʡ�ҵ�������ɹ��ʣ�����ϸ����ҵ�����ͷ���ͳ�ƣ���ǰ������ʧ�ܵ�ԭ�����ࡢ����302�ض��������ֲ���ԭ�򡢽�����ҵ���������ٵȣ�
  • 2) �����ƶ˿ɿص���־Ⱦɫ���ƣ����ڿ����������ԵĶ����Ų����⣻
  • 3) �ն�Ӳ��������״̬�����ز����ɼ����ܣ�
  • 4) �����ƶ˿ɿصĽ������ȣ���������IP�б��ȣ��������������������ӳ�ʱ��IO��ʱ��������ʱ�����������������Լ��������Դ����ȣ������·�������
  • 5) ���������ݻ������ݡ�

ͨ�����ݷ��������Ϸ����������ļ��ػ��ƣ�����������

  • a. ֧��ϸ���ȵĽ������Ⱥ������������Ż��ƿأ�
  • b. ֧�ַ������IJ��������Ż���
  • c. �����ƶ���Ӫ�̴��ڵ�һЩ���컯��������URL�ٳ֡������豸��ʱ���ò��������������ƶ�������
  • d. ���ַ�ʡ�з����������������쳣���������Զ�̬�ƶ˵����û����ʻ��߽�������������ʱ���Լ�ʱ��ʾ�ͻ��˷����쳣����ͨ�棬�����Ӿ��������ĸ��ص���ѩ����������ʾ�Ŀ��ٳ���������������һ���ŶӶԿɡ��ء����������ȣ�������ʵ���У��ṩ��������ʩ�����ϣ�
        - ��һ���Ƿ�������ͨ��Э������תURL�·��Ķ�̬ͨ�棬���ڷ�IDC����������ҵ��������������������ʱ���ã�
        - �ڶ�����Ԥ����̬URL��������������IP��ʽ������IP����ȡ��̬ͨ�棬�����������ϣ���̬URL������IP��ַ����ͬ��ҵ��ϵͳ���룬������Ϊҵ����������IDC�������ϲ�����ʱ�޷����ʣ�
        - �������ǿͻ��˱���Ԥ���ľ�̬ͨ���İ������ݻ��Ƚ�ģ���ͳ¾ɣ�������ʱ֮�裻
  • e. ֧���첽�������ƶ˿����ɿأ�����������APP������ʱ�䡢���ر��ĺ���������Լ�������̿ռ䡢�ƶ��豸�������������͵ȣ��IJ��컯���ã�ͨ���������ȣ��ﵽ����ƽ�Ȳ������û�������Ч����

�ر���Ҫע�����ǣ��ͻ������ݱ���һ��Ҫ������ɸѡ���ƺ���Ϣ���˻��ƣ��漰�û���˽��������Ϣ��ʹ�ü�¼�����ž������ϱ��������ǵ���־Ⱦɫ������Ҫ�ر�ע�⣬Ϊ���Ų����⼫���ܰѹؼ���������Ϣ��¼���浽���ˣ����밲ȫ���ա�

6���Ż������ģ������첽��


����ǰ�治и��Ŭ��������������һ���ȽϺõļ����������������ð����ó����緫����ô�Ͱ��������ƹ���������˹���ˡ�

�û�������ƽ����Դ����Ӧ�󣬿����������޷����ŵĽ������������Ӳ�Ʒ�Ƕ�ȥ�۲죬����Щʲô�ܹ���������˼���������ء����ݲ�ͬ��������ʹ�ó����������������ļ�ֵ��ȥȨ��ȡ�ᣬ�������ľ���׷�������������˵��IJ��档

��ν��������������֮���������޿����ӣ������޿�ɾ����ͨ�����첽�͸��໺�����ƣ��ṩ�������硢����ҵ�񳡾��µIJ��컯���������������������Ĵ󡰵�����

����ͨ��һЩʵ���������ܽᣬ��̽���������ŵ���������������֮������ʼ���޼ɵ��Ĵ����ˣ���

�� ���罻���ɷ��Ӻ�

΢���ͻ���ij���汾����ʱ�����������ص�timeline������Ҫ6��+���������������޷����ܵģ����û�2�����ڵĵȴ����̶��DZ������۵ġ��Ӽ����Ƕ�ȥ�����������׷������⣬��������������ʱ��10+��������������������Ϊ��HTTP�����ӣ���ζ��10+���������������ӣ����������ء���UI�������������ü��ء����س־û����ݼ�����Cache�ȵȳ�����Ϊ���Ż���Ŀ������Ȼ�ͼ��������������ͱ������á��־û����ݼ����ϡ�

���������������󣬿��Դ������������濼�죺

  • 1) ��Щ������Ҫ��ʵʱ��ȡ�ģ�����timeline & �ἰ & ˽�ŵ����֡�����У�飻
  • 2) ��Щ�����ǿ����첽��ȡ�ģ�����timeline���û�Profile���ƶ����á�˫�������б����������á�timeline�����б�������tag�б��ȣ�
  • 3) ��Щ�����ǿ��Ծ������ϲ��ģ�����timeline & �ἰ & ˽�ŵ�����������У���ϲ���

��ʱ��ȡ���ͷdz��򵥺������ˣ�����ʱ1~2�����������㹻Ӧ�ԡ������Ľ����ǰ�һЩ�����Ӻ�����������һ���첽���ơ�

���ƶ�APP���滹�д������Ƶij����������û�������APP��ij�������������Լ�Profile��ij���ֶΣ���ͣ�ڽ�����ת�ջ������罻�����غ�����ʾ�����������ǰѽ��潻�����ϻ����û����Ӻ��첽���������ύ�û��������������ļ�ֵȡ����ͬ�����족��Ҳ�㲻ͬ��

�� �������ݿɷ�Ԥ�ȼ���

΢���ͻ�����timelineˢ��ʱ���û����Ͽ��ٻ���������һ���߼���ҳ������30��΢����Ϣ��ʱ��������ȡ�ᣬһ����ǰԤ�����¸���ҳ���ݲ��Զ�ƴ�ӣ����û��޷컬�������飻���ǵȵ��û�����������ҳ�ٽ���ʱ�ֳ�ת�ջ�������������ʱ������״����ʵ����ѡ���˷���һ���û��ڻ���������һ���߼���ҳʱ��APP����������ʱ�䴰����Ԥ����ȡ��һ���߼���ҳ�����ݣ�ʹ���û�������һ��˳���ġ�ˢ�������顣

�����Ľ����ǰ�һ��������ǰ�����ˣ���Ҳ��һ���첽���ơ�˼����Ҫ���ǣ�

  • 1) Ԥ�ȼ��ص��������û�Ԥ�ڵ�����Ԥ�ȼ��غ��Զ�����֮�䣬ʧ֮��������ǧ�
  • 2) Ԥ�ȼ��ص����ݶ��û��ƶ��豸����Դ�����������������ȣ��ͺ��˷���������Դ�������������洢��CPU�ȣ�����Ҫ���ù������жϣ������Ͷ���֮�䣬Ҳ��һ��֮ң��
  • 3) Ԥ�ȼ��������������ݣ������ݿ��Բ���������״���������ݿ��ǽ�������������ִ�У�������Щ�����ƶ˿��Կ��ƣ�
  • 4) Ԥ��ͨ��������ȡ���ػ��洢�Ĺ����У���Ҫ�����û�������ʹ�á�

���ƶ�APP�У�Ԥ�����д�����ʵ�����Ƚϵ��͵ľ����������ѣ����Ҷ������������غ�������������ʾ�û����°汾�IJ��ԣ�����˳�����ס�

�� �û������ɷ񽵼�

΢���ͻ��������۹���WIFI��ˢ��timeline����ʧ�ܣ�ͨ����̨�û�������������Ӧ��־�������ж�������IDC�����۹���WIFI�Ļ��ӿڴ���խ��ʱ�Ӵ󣬴�ʱ������Ӧ�ԡ�

��ǰ��̽�ֵ�TCP/IP����֪ʶ������֪������һ��խ������ʱ�������У�������BDP��Ȼ��С��Ҳ����˵��λ��С�����ݴ���������ʱ�����ܳ�����������ͨ��һ���·�һ���߼���ҳtimeline���ݵIJ��ԣ���ô�ӷ��������ͻ��˴��䣬����������Ҫ���ֳɶ���TCP���ݱ��ģ��ڻ����Ĵ��������У�����һ�����ݱ��Ļ�δ�������ɣ��ͻ��˵���·���Ѿ���ʱ�ˡ�

�����������磨��Ҫ��Ӧ�ò��в��ٻ��ƣ�����TCP/IP��RTT���ƣ�����ʱ����������ȡ΢����Ϣ����ʱ���£����߼���ҳ��΢����Ϣ����30����Ϊ5�����Σ����������������û�ˢ΢���������Dz��ǻ��½�����Ϊ����һ����Ҫ��һ�����罻��������������Ԥ���أ�Ҳ������Ϊ����̫�����ٿ�̫�����ּ��ջ�������������ʵ���������汾����̾�����ڿ���ˢ�ˡ�

�ڼ������ͺ����Ƽ���֮�䣬�ƺ����кܶ಻ͬ�㼶�����顣��ʤ���ޣ������ʺܾ�׼�ı����˷����ֲ㣬����ȡ������Ҫ�ԡ�˼����Ҫ���ǣ�

  • 1) ��Ʒ�ĺ���������ʲô�����û����ں�����ʲô���������۷ֲ�����ʱҪ���ֱ��Ϻ������飻
  • 2) ÿ����Ʒ���������У�ʲô�������޷����̶�ʱ�䲻һ�µģ���ʲô���û��������̵Ĵ���������΢�۷ֲ�����ʱҪ���ֿ�����ȷ�ԣ�
  • 3) �ں��ۺ�΢�۷ֲ��Ļ����ϣ���ʼ������ʲô�����£�������ʲô���Ľ���ȡ�ᣬ�����Ͽ��ã�����ˬ�������飻
  • 4) �ֲ㲻��̫��̫ϸ���󲿷ֲ�Ʒ�ͳ�����3�����ӡ�

���ƶ������������£������ɼ�����ȡ���İ���������������������ʱ��������ȡ����ͼ�Ĺ����������ɴ಻�Զ���ȡ����ͼ�ȵȣ��ֲ����ģ��������⡣

�� �˺�����������

�ƶ�APPʱ�������Ե��������ƻ��������ض˶��Dz���ȡ�ģ�ֻ�ж����л������ϣ�������һ�����޵�����ͨ�����������õ��û����顣����ν����֮�ӣ��������¡�

�����ƶ�����APP����ȡ��ѡ���������ƣ���ô���ҵ�ս�������ͻ�������ͨ�������ݽ������������������أ����ټҳ��㷹���ٿظо�ʧ��

����΢���ͻ��ˣ�����ȡ��ѡ���ض����ƣ�΢��timeline���е���Ϣ����ȡԪ���ݣ�����΢�����İ������֡�����URL�����⡢��ǩ��@����Ϣ�ĸ��ӹ�ϵ����Ϣ���û�profile����ϵ���ȵȣ����ɿͻ���ʵʱ����ƴװ�������ͻ����û���Ҫ���Ĵ������������������Ҹ����˷����������޴��Ĵ����ɱ��ͼ���ѹ������������������״�����ѣ������dz����١�

ͨ��ʵ���ܽᣬ�˺����������أ�ȡ���Ĺؼ��������ݼ�����ģ�ɿغ����ݰ�ȫ�б��ϵ�ǰ���£�

  • 1) ��������������Ҫ�죻
  • 2) ��������������Ҫ�ᡣ

�����л����ϣ����Ժܺõ��������������Է���������˼�룬�Ӷ�ʹϵͳ�߱��㹻�������ԡ�

���ò��ٴ��ر��ᵽ��һ���ǣ����漼�����첽���Ļ���������͸�����ܺ����������ķ������棬�ӳ־û���DB���ļ����������ڵ��ڴ����ݽṹ����ҵ���߼����ݣ���TCP/IPЭ��ջ�����������ڡ������漰�����ݽṹ��֯���㷨Ч�ܣ���ʱ�������ʡ��ڴ�ʹ���ʵ������־û����������ء����¡���̭�����������ȣ��л������ǿ���չ����ר���Ľ��ܡ��μ�һ���֣����������û�ˬ�����µ���������ǧ��������������

�ᳫ���첽��ʵ������Ҫ���Ŷ��������Ӳ�Ʒ�ĺ���������ʲô������˼���ͷ���ʲô���û������ĵĺ������飬�����޵���Դ�۽����������ϡ�ͨ�������û�ʹ�ò�Ʒʱ������ģ�ͣ������ͻ�ԭ�û�ʹ�ó�������׷�������ľ���̽��������֮����

�������������ļ�ֵ��֮һ����Ҫ�ҵȡ������ƶ�������ʱ����Ӧ��Ϊ���������������µ���ս����Ҫ������ѧϰ��˼����ʵ�����ܽᣬ��ƪ���¼��ǶԹ�ȥʵ�����ܽᣬ����Ϊ����δ����ս��˼�����㡣

����Ի������ʿ�ŵ����ڶ���֮����ʿ�ŵ���������������ʿ�ŵ�����Ц֮����Ц������Ϊ�����������ˣ�Цһ����

֪�����ѣ���֪�к�һ�ƣ�jiu��Ϊ��������ô���Ǿ��ҳ�����ϧ�ɡ�

����ƪ��������û������������ƶ���IM�����߱ض�(һ)��ͨ���׶��������ƶ������ġ������͡���������

��¼���������������緽��������


��TCP/IP���� - ��11�¡�UDP���û����ݱ�Э����
��TCP/IP���� - ��17�¡�TCP����������Э����
��TCP/IP���� - ��18�¡�TCP���ӵĽ�������ֹ��
��TCP/IP���� - ��21�¡�TCP�ij�ʱ���ش���
���������£��ı�������TCP/IPЭ�飨������ͼ���ֻ����㣩��
��ͨ���׶�-��������TCPЭ�飨�ϣ������ۻ�����
��ͨ���׶�-��������TCPЭ�飨�£���RTT���������ڡ�ӵ��������
�����۾��䣺TCPЭ����3��������4�λ��ֹ���������
��������ϵʵ�ʣ�Wiresharkץ������TCP 3�����֡�4�λ��ֹ�����
������������ͨѶЭ����ϵͼ���������ذ棩��
��UDP��һ�����Ĵ�С�����ܶ�������
��P2P��������(һ)��NAT���⡪����ϸԭ����P2P������
��P2P��������(��)��P2P�е�NAT��Խ(����)����������
��P2P��������(��)��P2P����֮STUN��TURN��ICE������
��ͨ���׶�����������P2P�����е�NAT��͸ԭ����
����������������(һ)����̨����������TCP���������׿����ж�����
����������������(��)����һ��10�꣬������C10K��������������
����������������(��)����һ��10�꣬��ʱ������C10M������������
����������������(��)����C10K��C10M����������Ӧ�õ�����̽����
����Ϊ��֪����������(һ)��dz��TCPЭ���е�������֢(��ƪ)��
����Ϊ��֪����������(��)��dz��TCPЭ���е�������֢(��ƪ)��
����Ϊ��֪����������(��)���ر�TCP����ʱΪʲô��TIME_WAIT��CLOSE_WAIT��
����Ϊ��֪����������(��)�������о�����TCP���쳣�ر���
����Ϊ��֪����������(��)��UDP�������Ժ͸��ؾ�����
����Ϊ��֪����������(��)������������UDPЭ�鲢�ú�����
����Ϊ��֪����������(��)�������ò��ɿ���UDP���Ŀɿ�����
������������������(һ)��������������ͨ��Э�飨��ƪ����
������������������(��)��������������ͨ��Э�飨��ƪ����
������������������(��)����������TCPЭ��һƪ�͹���
������������������(��)����������TCP��UDP�IJ�����
������������������(��)����������Ϊʲô˵UDP��ʱ��TCP����������
������ɨä����һ������UDP�ĵ���ʱ���紫����Э�顪��QUIC������
���û��������죺��һ��QUICЭ������Ѷ�ļ���ʵ��������
���ִ��ƶ������������ӵ��Ż��ֶ��ܽ᣺�����ٶȡ�������Ӧ����ȫ������
������iOS���������̳����ӵ���Щ����
���ƶ���IM�����߱ض�(һ)��ͨ���׶��������ƶ������ġ������͡�������
���ƶ���IM�����߱ض�(��)��ʷ����ȫ�ƶ��������Ż������ܽ���
>> ����ͬ������ ����

��ʱͨѶ�� - ��ʱͨѶ������������ ��Դ�� - ��ʱͨѶ������������

��һƪ���ƶ��������Ż�ר��(һ)��ͨ���׶��������ƶ������ġ������͡�������һƪ�����̹���WebSocket�ͻ����������˴�ֵ������

��������¼�����¼���ר��

�Ƽ�����
���� 14
�ܽ�����ôȫ�����ҵIJ�����
�����²������У������ĸɻ�
ǩ��: ��ĩ�ˣ���������
ѧϰ��
̫�����˰�
�����ඥ��ţ��
�൱ȫ�档
�dz������
"��ʿ�ŵ����ڶ���֮����ʿ�ŵ���������������ʿ�ŵ�����Ц֮����Ц������Ϊ����"

�ҿ��������£����������¡�����Ц֮
���ã�leeyi ������ 2020-06-04 11:29
"��ʿ�ŵ����ڶ���֮����ʿ�ŵ���������������ʿ�ŵ�����Ц֮����Ц������Ϊ����"

�ҿ��������£������� ...

�Ļ��ˡ���
���ϰ���ʾ������dz
������
ǩ��: read the fucking source code
�ɻ�
ǩ��: ��ʼ��ʼ
ѧϰ��
ǩ��: coding��
ţ
����¥�� ×
ʹ��΢�Ŵ��ͣ� ʹ��֧�������ͣ�

���ض���