• 0755-82538016
  • 0755-82560826
  • 深圳网站建设_APP小程序开发_博纳网络

    • 网站建设案例
      • ";

        营销网站建设

        全网营销网站

        高端网站建设

        商城网站建设

        外贸网站建设

        小程序开发

        区块链开发

        物联网项目开发

        定制app开发

        在线教育网站

        速成网站建设

        服装网站建设

        餐饮网站建设

        珠宝首饰网站

        机械制造网站

        文化旅游网站

        家装建材网站

        美容化妆品网站

        数码产品网站

        模板案例库

        联系电话:0755-82560826 82538016 82560635邮箱:qin@198bona.com地址:深圳市福田区皇岗路5007神采苑402栋610
    • 网站推广
      • ";

        网站优化基础

        建站优化

        网站优化

        营销推广

        整站优化

        推广帮助

        谷歌搜索

        推广方案

        推广套餐

        推广技巧

        百度排名

        巧用微博推广

        直播视频网站推广法

        微信推广网站方法

        网站外链推广

        公共微信号推广

        网站优化闲谈

        常见问题

        公司资讯

        联系电话:0755-82560826 82538016 82560635邮箱:qin@198bona.com地址:深圳市福田区皇岗路5007神采苑402栋610
    • 网站制作资讯
      • ";

        网站制作

        外贸网站建设

        网站设计

        网站代运营

        深圳网站建设专栏

        深圳小程序开发

        网站改版

        APP开发

        网站建设方案

        安全维护

        软件开发

        平台搭建

        建站行业资讯

        域名注册

        虚拟主机

        企业邮局

        国外主机

        VPS独享空间

        免备案香港服务器

        如何解析域名

        联系电话:0755-82560826 82538016 82560635邮箱:qin@198bona.com地址:深圳市福田区皇岗路5007神采苑402栋610
    • 网站报价
      • ";

        网站报价

        建站方案

        联系电话:0755-82560826 82538016 82560635邮箱:qin@198bona.com地址:深圳市福田区皇岗路5007神采苑402栋610
    • 公司动态
      • ";
        联系电话:0755-82560826 82538016 82560635邮箱:qin@198bona.com地址:深圳市福田区皇岗路5007神采苑402栋610
    • 关注博纳
      • ";

        网站制作精英团队

        网站建设公司愿景

        公司介绍

        主营业务

        博纳文化

        加入博纳

        联系电话:0755-82560826 82538016 82560635邮箱:qin@198bona.com地址:深圳市福田区皇岗路5007神采苑402栋610
    • 联系我们
      • ";

        网站建设公司联系方式

        网站建设、网站制作公司乘车路线

        联系电话:0755-82560826 82538016 82560635邮箱:qin@198bona.com地址:深圳市福田区皇岗路5007神采苑402栋610
      网站制作资讯

      当前位置:

        主页网站制作资讯APP开发APP开发聊天功能架构实现方法

      APP开发聊天功能架构实现方法

      发布时间:2018-11-21

      文章编辑:网站建设 文章来源:APP开发 浏览量:次

      APP开发对于聊天功能的实现架构是怎样的?
        深圳APP开发公司结合多年的项目开发经验整理出如下几个重点:聊天功能是由三个部分组成,首先我们看看聊天类型APP开发后台架构流程图如图9-13所示。
      ·连接层:集群包含数量众多的连接服务器。
      ·业务层:处理具体业务信息。
      ·持久层:提供数据存取服务。
      1.APP聊天功能开发之连接层
      连接层的作用是保持App与服务器之间的连接,连接层只负责如下两个功能。
      ·与App保持连接。
      ·把消息通过队列转发到逻辑层处理
        连接层的服务器很少需要重启,一旦重启的话会造成大量的App断线并在短时间内重连服务器,服务器瞬间涌入的大量连接请求引发了类似DDOS攻击的现象。这个现象可以通过合理的机制杜绝:当连接层的服务器准备重启,发送条消息到连接着这台服务器的App,让其在重连时连接别的服务器,不要连接当前的服务器。
        连接层有个常见的问题:连接层是由多台服务器组成的集群,那么某个App要连接哪台服务器?解决方案是动态分配接入点,这个方案如下。
        App访问接入点服务器,接入点服务器根据各个连接服务器的负载等因素综合计算,返回一个连接服务器的IP给App,App通过这个IP连
      上连接服务器,整个流程如图9-14所示。
                     APP聊天功能开发经验示意图图9-14动态分配接入点
        如果因为DNS故障等原因无法通过接入点服务器获取IP,可以使用预埋IP的方案:在App中有个默认的连接服务器IP,当App由于DNS问题等原因无法通过接入点服务器获取IP就连接默认的IP,流程如图9-15所示。
      2.APP开发聊天功能方法之业务层
      业务层主要是处理各种业务逻辑,业务层由下面4个模块组成
      ·验证模块:验证用户的身份信息。
      ·路由模块:连接服务器的集群包含了数量众多的连接服务器,例如当A用户向B用户发送消息,两个用户的连接不定是在同个服务器,因此需要通过路由模块获取用户所在的服务器。如果要实现群聊功能,还要在这个模块中查找“订阅/发布”关系。
      ·统计模块:统计各种信息,例如总连接数、每秒发送消息数、总用户数、Android客户端连接数、iOS客户端连接数等等。
      ·数据存储模块:存储消息,统计信息,用户身份信息等。
      连接层通过队列向业务层进行消息传递,业务层不断从队列中取出消息进行相关的处理,如图9-16所示。
               APP聊天功能开发方案示意图9-16连接层与业务层通适队列传递消
        使用了队列后,业务层重启程序时对用户的影响可以减到最少,因为所要处理的消息部保存在队列,重启不会造成消息丢失。
      3.APP开发聊天功能解决方案之持久层
      该层提供数据存取服务,数据包含用户的身份信息、消息、统计信息等。根据不同数据对存取速度不同的要求,可使用不同的软件存储不同的业务数据。例如,用户身份信息这种高1频读写的数据,可存储在Redis、Memcached等内存数据库中。
      APP开发公司总结:APP聊天功能的工作流程
        下面以用户l向用户2发送消息“你好”为例,说明聊天App后台的工作流程。
      (1)用户l同连接服务器l发送消息(里面包含了接收的对象用户2的唯标识和内容“你好”)
      (2)连接服务器l接收到该消息后同用户l返回一个应答,同时通过队列把消息传递到业务层
      (3)业务层的验证模块先验证该用户的身份信息,验证完成后通过路由模块确定用户2所在的服务器为连接服务器2,把消息传递到连接服务器2从而发送到用户2的手机上。
      (4)业务层把消息传递给用户2时,对相关的消息进行统计,同时通过数据存储模块把数据持久化。
      聊天App后台的工作流程如图9-17所示。好了,APP开发公司关于聊天功能开发解决流程以及方法本文就分享到这里。谢谢您的关注。博纳网络编辑整理。
       

      当前文章链接:/construction/appkaifa/1768.html
      上一篇:APP聊天功能开发怎样处理Radis协议格式 下一篇:开发社交APP的基本结构表与推拉模式的制作方法
      返回列表
      如果您觉得案例还不错请帮忙分享:

      [声明]本网转载网络媒体稿件是为了传播更多的信息,此类稿件不代表本网观点,本网不承担此类稿件侵权行为的连带责任。故此,如果您发现本网站的内容侵犯了您的版权,请您的相关内容发至此邮箱【qin@198bona.com 】,我们在确认后,会立即删除,保证您的版权。

      相关案例推荐

      • 书画艺术评优网

        书画艺术评优网

        政府教育

        书画艺术评优网

      • 17找房

        17找房

        行业网站

        17找房

      • Meswan商城

        Meswan商城

        商城门户

        Meswan商城

      资讯分类

      • 网站制作
      • 外贸网站建设
      • 网站设计
      • 网站代运营
      • 深圳网站建设专栏
      • 深圳小程序开发
      • 网站改版
      • APP开发
      • 网站建设方案
      • 安全维护
      • 软件开发
      • 平台搭建
      • 建站行业资讯
      • 域名注册
      • 虚拟主机
      • 企业邮局
      • 国外主机
      • VPS独享空间
      • 免备案香港服务器
      • 如何解析域名

      最新发布

      • 社区APP开发上线后影响用户使用的粘性有哪些?
      • 为什么说大健产业O2OAPP开发潜力无限
      • 网络公司对社区O2OAPP开发基本认识
      • 工业4.0时代怎样做好一个APP的开发工作?
      • APP开发公司分析APP应用开发下一个巨头在哪些领域?
      • APP电子商务平台开发前景如何?
      • 社交类型APP开发需要具备的五个必要条件
      • 社交类型APP平台开发使用小程序还是APP模式好?
      • 使用HTML语言开发APP商城可以吗?
      • 社区O2OAPP开发的方向选择

      相关资讯

      • APP网站制作流程以及栏目分布
      • 企业网站优化人员面对搜索引擎的困惑
      • 企业门户网站如何做好针对搜索引擎的优化工作
      • APP/PC购物商城网站如何做好产品图片的优化技巧
      • 网站软文内容以及网站外链存在的几种形式对网站有多大影响
      • 如何做好网站软文标题的描述更适合搜索引擎的需要?
      • 网站建设好后期出现被搜索引擎降权的几个主要因素
      • 小程序开发制作前途取决于市场,别被您的同行抢了先机
      • APP开发公司提醒您关注:电商平台要求商家“二选一”引多方不满 专家提建议
      • APP为什么会在我们的手机界面上变成僵尸图标?

      热门搜索

      • 网站免费制作
      • 网站建设方案
      • 个人网站建设
      • 移动网站建设
      • 深圳网站制作
      • 公司网站制作
      • tP外包
      • 教育网站建设
      • 小程序开发
      • 网站建设开发

      Copyright © 2021 博纳网络 版权所有  粤ICP备17054727号

      • 🏠

        首页

      • 💬

        咨询

      • 📞

        通话

      • 📂

        案例

      • ⬆

        返回