Ĭ��
���� �������� 10
�뿪��IM������Ʒ�¿ӣ�����3���¹����ҿ�Դ����ߣ������������·��... ��վ�����㽨��
���԰���OpenIM�����찲ȫ�ɿ���ʱͨѶ�����ļ���ʵ������
�Ķ���131621�� | ���ۣ�10�� �ղ�4 ����2 ��1
΢��ɨһɨ��ע��

ǰ��


��ʱͨѶ��Ϊ�ƶ�Ӧ�õij�����������������ȴ�����򵥣�������Ҫ�о�ͨѶЭ�飬��֤��ȫ�ԣ���ҪӦ�Ը��ӵ��ƶ��������������ṩ�߿����Եķ�����OpenIM�ǰ����Ͱ��Ƴ��ģ������ڰ����ٴ���Ŀ�е��ƶ���IM���ŷ��񡣰����ٴ��ǰ����Ͱͼ������߿���ƽ̨��Ϊ�ƶ������ߣ������ƶ���ҵ�ߣ��ṩ���ٴAPP������APP��ҵ���������û������Ľ���������

�ܷ��߽���


���򣨷�С�����������ŶӼ����ܼࡣһֱ�����ƶ����������ز�Ʒ�з����������밢��ǰ����������Qualcomm BREWƽ̨��WWW Embedded Browser��2009�����밢����������OS Framework��Apps������2012�꿪ʼ�������������Ŷӵ��з�������

OpenIMĿǰ���Ŷ���������


OpenIM������������ҵ����������ҵ����ʷ�Ƚ��ƾã���2003���Ա��������ڣ������Ŷ�ͬʱ������������Ʒ���Ա�һ���ɳ���Ѹ�ٳɳ�Ϊȫ�������Ŀͷ���ͨƽ̨(�վ���Ϣ��10�ڼ���DAU�ڼ�����Ŀǰ�Ŷ��ϰ��ˣ�������Ʒ��Ӫ�Ŷӣ������Ŷӣ������Ŷӵȣ����м����ŶӺ� IM�����˼����Ŷӣ���ȫƽ̨�Ŀͻ��˼����Ŷ�(Android, iOS, Windows, Mac, H5) ������ȨIM����ר���������

OpenIM�����Լ���ҵ���ϵ���ɫ


OpenIM�ǰ����Ͱ�����Ӧ�ÿ����߿��ŵ����Ѽ�ʱͨ�ŷ������ɰ��������Ŷ��ṩ����Ϊ��ʱͨѶ�����������Ѿ�֧�����ֻ��Ա����������������ţ���è���ۻ��㣬ȥ���Ȱ���ϵ�ڲ�Ӧ�á����ڣ������߻���OpenIM�����������ơ���΢�š��������š�����ǧţ����Ӧ�á�

����ϣ�������ƣ������ṩ�Ļ���������+�ˣ�����APP����ȫ���ƶ�ʱ����ҵ��̬�������������߸��Ի����������������������޴����ڵ��������ƶ�������ʱ����Ϊ����ǿ������֮�������ӣ�����App����Ҫ�����Ĺ�ͨ���ܡ������߿���һ�׸߿����Ե�IMϵͳ���ɱ��dz��ߡ����ǽ�ӵ��12�꼼����������������˫ʮһ�����ļ�ʱͨѶ�������ͷ�ƽ̨�������ų�������������������ʵ�ֹ�ͨ���ܣ�����App�����ɱ���

OpenIM���˻�����IM����֮�⣬ͬʱ���ŵĻ���ȫ�������Ŀͷ�ƽ̨���ܡ����ڸÿͷ�ƽ̨������/ǧţ��Ŀǰ�ڵ�����ҵ�ѷ�����ǧ�����ҡ�

����ģ��ʱͨѶ�����ϵ��ѵ�


�����������ĸ������ѵ㣺

  • ����ȷ��ϵͳ�ĸ߿����ԣ���ΪIM����һ���жϣ����û��������˺��dz��������ԣ�һ��Ҫ��֤�����ĸ߿����ԡ�
  • �������ƶ����绷�����Ż��������������������ӵĽ�׳�ԣ������ƶ�������2G��3G��4G������ʽ��������ʱ�����л����жϣ��ƶ������Ż�����˵�������ƶ������Ĺ�ͬ���⡣
  • ����ȷ��IMϵͳ�����尲ȫ����Ϊ�û�����Ϣ�Ǹ�����˽������Ҫ�Ӷ�����������֤IMϵͳ�İ�ȫ�ԡ�
  • ���ν��Ϳ����߼����ż������������Ե�����IM������˵�ģ��������ɳɱ�̫�ߣ������������������㣬��ʵ��ʹ����Ҳ�����ָ������⡣

����ȷ��IM�ĸ߿����ԣ�OpenIM�ķ����˼ܹ����������ģ�


��������˫11�Ŀ��飬����IM�����Ŀ����Գ�������99.99%���ϡ������Ŷ������γ���ϵͳ�߿����Խ���������

�������԰�����

  • ˮƽ������ϵͳ�ܹ���
    ȫϵͳ�޵������ƣ�����ҵ��ϵͳ���ھ���ˮƽ������ͬʱ���ؾ���ϵͳ����ʵʱ�Ľ����������䣬������ϵͳ�����ں�����ˮλ��
  • ���ض���ȥ���Ļ�������
    ȥ���Ļ������ض��������𣬶�������ͬʱ�ṩ�������κ�һ�����Ĺ��ϣ����������ܹ���ʱ�нӡ�
  • �Զ������ϸ�������ϵͳ��
    ���ڷ������Ĺ��ϣ��ܹ�ʵʱ�ļ��Ⲣ���Զ��ĸ��룬���ٵ��л������������ķ�������
  • �걸�ļ��غ�Ԥ����ϵ��
    ���ڰ����Ͱ���ά��ϵ���걸�ļ��غ�Ԥ���������Ƕ�����ϵͳ������״̬����ָ�ơ�

���԰���OpenIM�����찲ȫ�ɿ���ʱͨѶ�����ļ���ʵ������_62622356gw1etky8s9ar7j20ok0i6dh8.jpg

����ϵͳ��Ϊ��

  • ������(�ͻ���)��
    �����ͻ��˽��롣
  • ������(������)��
    ����App Server��OpenIM�������ĶԽӡ�
  • Э��·�ɣ�
    ��Ϣ·�ɺ�ҵ���߼��㣬������Ϣ·�ɺ͸���ҵ���߼�������
  • ���ݲ㣺
    �����û���ҵ�����ݵĻ��棬�־û��ȡ�

OpenIM�����ƶ��������ص�������Щ�Ż���


�����Ż��У�

  • ����Э�飺
    OpenIM������ȫ˽�еĶ�����Э�飺ȷ�����ݼ��ܰ�ȫ��ͬʱ���������ļ��١�ͬʱ������Э����IM�ĵ���������Ӱ���ܴ���OpenIM��������Э���Ͻ����˼������ƣ��� 1 Byte ��
  • ����������
    OpenIM���صı�������,�Զ���Ӧ��ͬ�����绷�������ܵ�������Ƶ�ʣ�����������������״̬��
  • ���ܻ��ѣ�
    ������֪��Android�ֻ���������һֱΪ������ڸ���� ��̨����Ӧ�ò��ϻ����ֻ�����ʹ�ֻ�����ʱ����Ϊ���̡�OpenIM���������޶Ȼ����ֻ����б�Ҫ�ı����֤���ӵĽ�������Ϣ�ļ�ʱ����: OpenIM��ϵͳ�Լ�����Ӧ�ý��н���������������Ӧ�û������ֻ���OpenIM���������໽�ѣ���Լ�豸�ĵ������ġ�
  • ��·���ã��������ӣ�
    OpenIM��SDK�㷺ʹ���ڰ����ĸ��ƶ�Ӧ���У����ֻ��Ա�����è�����š�ǧţ��ȥ���ȡ�ͨ����˵������IM App���ж�������TCP�����ӣ�OpenIM֧�ֶ�Ӧ�ù�������һ��TCP�����ӣ���������������N����Ϊ1��; �����ֻ�����Ҳ��N��Ӧ�û��ѱ�Ϊ1��Ӧ�û��ѡ�������Щ����Ӧ�ø����û�Ⱥ�ϴ���OpenIM���Զ���������Ӧ���Ѿ����ڵ��������ӣ��������ٵ���������������
  • ��·����, ��ͬ���
    ͬʱ��Androidϵͳ��Դ����ʱ���ں�̨�������̣���ij��OpenIM����Ӧ�ñ���������ͨ��OpenIM��ϢҲ���޷�ʵʱ��������ڡ���·���á����ƣ�ֻҪ��ǰ��һӦ��(��������Ӧ��)�����OpenIM����˳����������Ч�����˳����ӵĽ�׳�ԡ�

OpenIM�ڰ�ȫ��������Щ���飿


��������������Ϣ(ÿ��ʮ�ڼ�)����������������ȫ�Ķ��꼼��������OpenIMΪ�������ṩ����֧�������Ա�����èͬ�ȼ����İ�ȫ���񣬴��˺Ű�ȫ�����䰲ȫ���洢��ȫ�����ݰ�ȫ�ȸ���ά���ṩ�������İ�ȫ������

  • �ʺŰ�ȫ��
    OpenIM���������û��ʺž���MD5���ܺ����д����ʹ洢����֤�������û����ݵ�˽���Լ���ȫ��OpenIM�ͷ��ʺţ����ܰ���ϵ�˺ŵ����а�ȫ���ܣ�����֤�飬һ��У�飬�ֻ���֤�ȡ�
  • ���ݴ��䰲ȫ��
    ��������ȫ˽�еĶ�����ͨѶЭ�飻��̬��Կ��ȫ��·���ܴ��䡣
  • ���ش洢��ȫ��
    ���ǽ��������ݿ����ܡ�
  • ���ݰ�ȫ��
    • �������ݼ��⣺֧�ֿ����õĹؼ���ϵͳ��֧�ַ������Ѻ͹��ˣ�֧�ֶ�������(�������ӵ�)�Ͷ�ά��ͼƬ�ķ���ʶ�𣺻��ڰ���ϵ�������Ķ������ӿ�(WenKing)��
    • ��������ȫ������ÿ�캣����Ϣ��ʮ�ڼ������û����ڼ����ۺ���Ϊ�Ļ������ݣ������Ĵ��ͷ�����ϵͳ��ʵ�ֶ�����Ϊ��ʵʱ���ء������ı���ͼƬģ�͵�����ʶ���㷨��֧�ֶ������ݵ�ʵʱ���ء���������������ϵͳ��ѧϰ������ϵͳ���ٻ��ʡ�

ȫվ��ʱͨѶ�������Ϸ���


[1] �������̻������ϣ�
��TCP/IP���� - ��11�¡�UDP���û����ݱ�Э����
��TCP/IP���� - ��17�¡�TCP����������Э����
��TCP/IP���� - ��18�¡�TCP���ӵĽ�������ֹ��
��TCP/IP���� - ��21�¡�TCP�ij�ʱ���ش���
�����۾��䣺TCPЭ����3��������4�λ��ֹ���������
��������ϵʵ�ʣ�Wiresharkץ������TCP 3�����֡�4�λ��ֹ�����
������������ͨѶЭ����ϵͼ���������ذ棩��
��NAT���⣺����ԭ������Խ����(P2P����)���˿��ϻ�����
��UDP��һ�����Ĵ�С�����ܶ�������
��Java��һ����������ģ��AIOԭ����LinuxϵͳAIO������
��NIO��������(��)��iOS��MINA2��Netty4�Ŀ�ƽ̨UDP˫��ͨ��ʵս��
��NIO��������(��)��Android��MINA2��Netty4�Ŀ�ƽ̨UDP˫��ͨ��ʵս��
>> ����ͬ������ ����

[2] �й�IM/���͵�ͨ�Ÿ�ʽ��Э����ѡ����
��ΪʲôQQ�õ���UDPЭ��������TCPЭ�飿��
���ƶ��˼�ʱͨѶЭ��ѡ����UDP����TCP����
������ѡ����ʱͨѶӦ�õ����ݴ�����ʽ��
��ǿ�н��齫Protobuf��Ϊ���ļ�ʱͨѶӦ�����ݴ�����ʽ��
���ƶ���IM������Ҫ���Եļ������⣨��ͨ��Э��ѡ������
�������ƶ���IM��������Щ�ӣ��ܹ����ơ�ͨ��Э���Ϳͻ�����
��������ϵʵ�ʣ�һ�׵��͵�IMͨ��Э������������
��58����ʵʱ��Ϣϵͳ��Э�����Ƶȼ���ʵ��������
>> ����ͬ������ ����

[3] �й�IM/���͵������������
��Android���̱������⣺һƪ���½�����������������
��Android����Ϣ�����ܽ᣺ʵ��ԭ�������������������������
��Ϊ�λ���TCPЭ�����ƶ���IM��Ȼ��Ҫ�����������ƣ���
��΢���Ŷ�ԭ��������Android��΢�ź�̨����ʵս����(���̱���ƪ)��
��΢���Ŷ�ԭ��������Android��΢�ź�̨����ʵս����(���籣��ƪ)��
���ƶ���IMʵ����ʵ��Android��΢�ŵ���������������
���ƶ���IMʵ����WhatsApp��Line��΢�ŵ��������Է�����
>> ����ͬ������ ����

[4] �й�WEB�˼�ʱͨѶ������
��������������ʷ����ȫWeb�˼�ʱͨѶ����ԭ��������
��Web�˼�ʱͨѶ�����̵㣺����ѯ��Comet��Websocket��SSE��
��SSE�������⣺һ��ȫ�µ�HTML5�����������¼�������
��Comet�������⣺����HTTP�����ӵ�Web��ʵʱͨ�ż�����
��WebSocket���⣨һ����������ʶWebSocket������
��socket.ioʵ����Ϣ���͵�һ��ʵ����˼·��
>> ����ͬ������ ����

[5] �й�IM�ܹ����ƣ�
��dz̸IMϵͳ�ļܹ�������
�������ƶ���IM��������Щ�ӣ��ܹ����ơ�ͨ��Э���Ϳͻ�����
��һ��ԭ���ֲ�ʽ��ʱͨѶ(IM)ϵͳ���ۼܹ�������
�����㵽׿Խ�������ͷ���ʱͨѶϵͳ�ļ����ܹ��ݽ�������
��Ģ���ּ�ʱͨѶ/IM����������֮�ܹ�ѡ����
����ѶQQ1.4�������û��ļ�����ս�ͼܹ��ݽ�֮·PPT��
��΢�ż����ܼ�̸�ܹ���΢��֮��������������(�ݽ�ȫ��)��
�����ν�����΢�ż����ܼ�̸�ܹ���΢��֮������������������
�������ѱ䣺��֤΢��ǿ����̨�ܹ���0��1���ݽ����̣�һ����
��17����ʵ������Ѷ������Ʒ�ļ�����������
>> ����ͬ������ ����

[6] �й�IM��ȫ�����£�
����ʱͨѶ��ȫƪ��һ������ȷ��������ʹ��Android�˼����㷨��
����ʱͨѶ��ȫƪ��������̽�����ϼ����㷨��IM�е�Ӧ����
����ʱͨѶ��ȫƪ�����������üӽ����㷨��ͨѶ��ȫ������
����ʱͨѶ��ȫƪ���ģ���ʵ������Android����ԿӲ�����ķ�����
�������㰲ȫЭ��SSL/TLS��Javaƽ̨ʵ�ּ�����Demo��ʾ��
��������ϵʵ�ʣ�һ�׵��͵�IMͨ��Э���������⣨����ȫ�����ƣ���
��΢����һ��ͨ�Ű�ȫ��������������TLS1.3��MMTLS������
�����԰���OpenIM�����찲ȫ�ɿ���ʱͨѶ�����ļ���ʵ��������
>> ����ͬ������ ����

[7] �й�ʵʱ����Ƶ������
����ʱͨѶ����Ƶ������һ������Ƶ������֮���۸�����
����ʱͨѶ����Ƶ��������������Ƶ������֮������Ƶ������
����ʱͨѶ����Ƶ��������������Ƶ������֮����������
����ʱͨѶ����Ƶ�������ģ�����Ƶ������֮Ԥ�⼼��������
����ʱͨѶ����Ƶ�������壩����ʶ������Ƶ���뼼��H.264��
����ʱͨѶ����Ƶ���������������ο�ʼ��Ƶ�����뼼����ѧϰ��
����ʱͨѶ����Ƶ�������ߣ�����Ƶ����������ԭ��������
����ʱͨѶ����Ƶ�������ˣ���������ʵʱ����ͨѶ������׼��
����ʱͨѶ����Ƶ�������ţ���ʵʱ����ͨѶ�Ļ�������������������
����ʱͨѶ����Ƶ������ʮ����ʵʱ����ͨѶ�Ļ�����������������
����ʱͨѶ����Ƶ������ʮһ����ʵʱ����ͨѶ������������������
����ʱͨѶ����Ƶ������ʮ����������ʵʱ����Ƶ�����ܹ�̽����
����ʱͨѶ����Ƶ������ʮ������ʵʱ��Ƶ����H.264���ص���������
����ʱͨѶ����Ƶ������ʮ�ģ���ʵʱ����Ƶ���ݴ���Э��������
����ʱͨѶ����Ƶ������ʮ�壩������P2P��ʵʱ����Ƶ��Ӧ��������
����ʱͨѶ����Ƶ������ʮ�������ƶ���ʵʱ����Ƶ�����ļ���������
����ʱͨѶ����Ƶ������ʮ�ߣ�����Ƶ����H.264��V8��ǰ��������
��������Դʵʱ����Ƶ����WebRTC����ȱ����
�����ķ�����WebRTC �����������߽̳̣����ģ���
>> ����ͬ������ ����

[8] IM�����ۺ����£�
���ƶ���IM������Ҫ���Եļ���������
������IM���Լ�����Э�����ֽ����û����ַ����ã���
����������֪��������������������ʵ�ַ�ʽ������
��IMϵͳ�����α�֤��Ϣ�Ŀɿ�Ͷ�ݣ���QoS���ƣ���
��̸̸�ƶ��� IM �����е�¼�������Ż���
����ȫ���ѿ�����IM���������ơ�ʧ�����ԡ����ƣ���
��΢�Ŷ�����Ӱ���ļ������鼰����������ȫ�ģ���
����ʱͨѶϵͳ��ԭ����������Ӧ�ã��������ģ���
����ԴIM���̡�Ģ����TeamTalk������״��һ����ʼ���յĿ�Դ����
>> ����ͬ������ ����

[9] ��Դ�ƶ���IM�����������ϣ�
����Դ�ƶ���IM��������MobileIMSDK������������
����Դ�ƶ���IM��������MobileIMSDK����������������
����Դ�ƶ���IM��������MobileIMSDK��ѹ�����Ա�����
����Դ�ƶ���IM��������MobileIMSDK��Android��Demoʹ�ð�����
����Դ�ƶ���IM��������MobileIMSDK��Java��Demoʹ�ð�����
����Դ�ƶ���IM��������MobileIMSDK��iOS��Demoʹ�ð�����
����Դ�ƶ���IM��������MobileIMSDK��Android�ͻ��˿���ָ����
����Դ�ƶ���IM��������MobileIMSDK��Java�ͻ��˿���ָ����
����Դ�ƶ���IM��������MobileIMSDK��iOS�ͻ��˿���ָ����
����Դ�ƶ���IM��������MobileIMSDK��Server�˿���ָ����
>> ����ͬ������ ����

[10] �й����ͼ��������£�
��iOS�����ͷ���APNs���⣺����˼·������ԭ����ȱ�ݵ���
��Android����Ϣ�����ܽ᣺ʵ��ԭ�������������������������
��ɨä������ʶMQTTͨ��Э����
��һ������MQTTͨ��Э��������Android����Demo��
������android��Ϣ���ͣ�GCM��XMPP��MQTT���ַ�����������
���ƶ���ʵʱ��Ϣ���ͼ���dz����
��ɨä����dz̸iOS��Android��̨ʵʱ��Ϣ���͵�ԭ����������
�����Ըɻ�������Nettyʵ�ֺ������������ͷ�������Ҫ����
���ƶ���IMʵ�����ȸ���Ϣ���ͷ���(GCM)�о�������΢�ţ���
��Ϊ��΢�š�QQ������IM���߲�ʹ��GCM����������Ϣ����
>> ����ͬ������ ����

[11] ���༴ʱͨѶ�������ķ��ࣺ
http://www.52im.net/forum.php?mod=collection&op=all

��ԭ�����ӣ�http://www.infoq.com/cn/news/2015/07/openim-interview��

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

����

1

�鿴����

��һƪ��΢���Ŷ�ԭ��������Android��΢�ź�̨����ʵս����(���̱���ƪ)��һƪ����ʱͨѶ��ȫƪ��һ������ȷ��������ʹ��Android�˼����㷨

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

�Ƽ�����
���� 10
�ǰ����������Ǹ�ʲô����
ǩ��: �þ�û���ˣ�ǩ����
̬��л�ˣ�
ǩ��: asdf
��ȫ�����ϣ�����һ������
ǩ��: asdf
û���ù�
ǩ��: ��������
������˾��ʹ��openfire
�ղݣ����ﻹ������ô������������ʶ�ˣ�����OpenIM��ֱ��������������û�д����ù���
ǩ��: �û�Աû����д������˵����.
���ã�ashura12342000 ������ 2017-05-03 20:04
�ղݣ����ﻹ������ô������������ʶ�ˣ�����OpenIM��ֱ��������������û�д����ù���

���ǰ���������IMһ������඼�����ӻ����������ž�û������
ǩ��: ��ͨ���׶���AI��ģ�ͻ���SSE��ʵʱ��ʽ��Ӧ����ԭ����ʵ��ʾ����http://www.52im.net/thread-4856-1-1.html
�տ�����һ������openIM��app����ϧ�ϰ�Ҫ���Ʒ�openIM���Լ�д����ʱͨѶ���������ҵ������DZ�����
ǩ��: �û�Աû����д������˵����.
���ã�tiandao ������ 2017-06-28 09:04
�տ�����һ������openIM��app����ϧ�ϰ�Ҫ���Ʒ�openIM���Լ�д����ʱͨѶ���������ҵ������DZ�����

��
ǩ��: ��ͨ���׶���AI��ģ�ͻ���SSE��ʵʱ��ʽ��Ӧ����ԭ����ʵ��ʾ����http://www.52im.net/thread-4856-1-1.html
����
ǩ��: ������
����¥�� ×
ʹ��΢�Ŵ��ͣ� ʹ��֧�������ͣ�

���ض���