精华内容
下载资源
问答
  • 量子通信是“玄学”吗?解释量子通信手机之前,我们首先要先讲一下量子通信。其实现在关于量子通信领域的文章和报道,大部分都让看得里雾里,什么薛定谔的猫,一会死一会活。你现在搜索网上,还能找到量子通信就是...
    c0b7a803ecfc0829b0ac0dcc141e3ccd.pngf78b1d5f-cb34-eb11-8da9-e4434bdf6706.svg

    量子通信是“玄学”吗?

    解释量子通信手机之前,我们首先要先讲一下量子通信。其实现在关于量子通信领域的文章和报道,大部分都让看得云里雾里,什么薛定谔的猫,一会死一会活。你现在搜索网上,还能找到量子通信就是胡说八道的东西,骗子潘建伟骗经费的报道也是多如牛毛。

    但是,这些报道中,大部分对于量子通信的基本概念都没有搞清楚,导致写的人和看的人根本摸不着头脑,甚至让人觉得量子力学是“玄学”。为此,今天我想用简单的方法来科普一下量子通信。

    首先,可以肯定的是量子力学绝对不是玄学,是拥有一套完整清晰的数学框架。有兴趣的话,可以参见国外物理名著系列《量子力学原理》(估计没有人有兴趣!)。至于量子通信,无非就是两个方面的概念,量子是什么?量子通信又是什么?

    对于量子,我们需要清晰认识到,量子不是一种像电子、原子、光子这种实实在在的粒子。量子其实是一个数学上的概念,叫做“离散变化的最小单位”。比如我们上楼梯的台阶,是用1个、2个……这种离散的变化单位。那么最小的台阶就是1个台阶,1个台阶就可以是一个量子,而台阶阶数就是一个可以被“量子化”。

    6512167801f394faa319ea66b1c4a21a.pnge7b45cdafba0e1fb0076e05b02824496.png

    量子保密通信安全性到底如何

    量子保密通信,应该是将来大家会首先接触到的量子运用。至于量子手机也并非是国内首创,今年5月份,三星发布全球首款集成量子随机数发生器芯片组的5G智能手机Galaxy A Quantum。

    目前很多报道都在说量子保密通信是绝对安全,也有不少报道称量子通信漏洞很多。特别是目前美英法三国已经率先不看好量子通信工程化和实用化。2020年5月,法国国家网络安全局更是以清晰的事实和严密的逻辑分析了量子通信的致命弱点。

    那么,量子保密通信安全性到底如何?

    可以这样说,量子保密通信在数学上具有绝对的安全性(这里涉及到数学方面的问题,感兴趣的可以自行了解或者与我交流)。

    但是,这个绝对安全也只是数学意义上的。对于传统的加密通信,采用的都是利用数学的单向困难性来设计加密算法。比如,我们能够很容易说出7和13的最小公倍数是91,但是将91分解成两个质数就是一个比较困难的事。

    有人说,91分解很容易。那么,1000000000000001分解成两个质数呢?

    那么,量子保密通信为什么会遭到如此多质疑?问题出在传输密钥的量子通信设备和工程实施过程中,难以保证绝对安全,比如软件漏洞或者电磁辐射导致的机密泄露。因此,量子保密通信相对于传统保密通信来说,多了数学上的绝对安全性,但是还是很难防止物理方面的安全。

    于是,一些科学家也在持续研究“测量仪器无关的量子密钥分发”课题。意思说,即使别人攻击了我们的测量设备,我们还是有办法及时发现并中止生成密钥,从而防止信息泄露。

    41a0ba86e1bec9bd27c1048c4fed9bad.pngbbd48d975ab704adf91009a841a7e4ea.pngbbd48d975ab704adf91009a841a7e4ea.png

    目前来说,中国科学家在这一块已经走在世界前列,试验验证已经成功。

    因此,量子保密通信,只是相对传统加密机制来说,安全性更高,但是目前还是难以保证绝对的安全。

    068c1d5f-cb34-eb11-8da9-e4434bdf6706.svg

    本版编辑:郭嘉琪

    图文来源:网络

    审查:屈绍博、王梓涵

    通信与信息工程系团总支宣传部北京邮电大学世纪学院通信与信息工程系Department of Communication & Information Engineering CCBUPT

    41859ecd1926c80d0f558505a36479ea.png

    2aaafe42e30032e68c168d5cd6ec76c6.png

    展开全文
  • 1.如何实现直播弹幕——腾讯的IM (如果有图片什么的还需要腾讯的COS) IM即时通信 对象存储 在直播组件onLoad里面 调用接口 获取IM的SDKAppID (这个SDKAppID一般都后台给的吧 具体的我也不是很清楚) 备注...

    前言

    小程序我现在懂得也不是很多 现在接触的小程序也是别人写的 此篇内容仅为总结自己看别人代码学习到的一些东西以及自己解决bug的一些方法

    一、小程序的直播如何实现(用户端部分)

    1.如何实现直播弹幕——腾讯云的IM (如果有图片什么的还需要腾讯云的COS)
    IM即时通信
    对象存储
    在直播组件onLoad里面 调用接口 获取IM的SDKAppID (这个SDKAppID一般都是后台给的吧 具体的我也不是很清楚)
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    备注:相关的东西自己看SDK吧(npm下载之后 完成相应功能 然后在微信开发者工具里面构建npm)

    二、直播弹幕怎么做到实时响应(因为弹幕需要判断是否包含敏感词汇 以及用到setData渲染数据 以至于很慢 )

    1.在app.js里面的onLaunch里面调用接口先拿到后台设置的敏感词

    success: function(res) {
              let pattern = ''
              if(res.data.err_code == 0) {
                for(let i = 0 , len = res.data.err_msg.length; i < len; i ++) {
                  if(res.data.err_msg[i].indexOf('*') ==-1) {
                    if(i< res.data.err_msg.length-1) {
                      pattern = pattern + res.data.err_msg[i] + '\.\*\?\|' //.*? 表示匹配任意数量的重复,但是在能使整个匹配成功的前提下使用最少的重复
                    } else {
                      pattern = pattern + res.data.err_msg[i] + '\.\*\?'
                    }
                  }
                }
                wx.setStorage({
                  key:"pickImprot",
                  data:pattern
                })
              }
              // var patterns = new RegExp(pattern,"gi");
              // setTimeout(() => {
              //   console.log(wx.getStorageSync('pickImprot'))
              //   var patterns = new RegExp(pattern,"gi");
              //   console.log(patterns)
              //   console.log(patterns.test('  3d 18大  '))      // },3000)
              
              // console.log(wx.getStorageSync('pickImprot').test('rrr'))
            }
          })
    

    2.判断发送的弹幕是否含有敏感词(正则表达式匹配速度快)

      // 验证发布内容
      testTxtFun: function (testTxt) {
        let that = this;
        // if(wx.getStorageSync('pickImprot')) {
          let pickImprotInfo = new RegExp(wx.getStorageSync('pickImprot'),"gi");
          let leg = false
          if(pickImprotInfo.test(testTxt)) {
            leg = true
            this.setData({
              inputText:testTxt,
              leg:leg
            })
            this.testTxtData()
            return
          }
          this.setData({
            inputText:testTxt,
            leg:leg
          })
          this.testTxtData()
          }
      },
    

    3.将可以发送的弹幕渲染到页面上

    that.setData({
          ['barrageArr[' + that.data.barrageArr.length + ']']: objMsg //设置数组最后一条数据的值
        });
    

    备注:这样可以只渲染当前这条数据 提高页面渲染速度 现在这种方法 是我目前能写出来的速度最快的方案 如果有更好的方法 后期会持续更新

    三、直播弹幕输入框与键盘不同步问题

    前提 :输入框不是定位定过去的吗?? 所以只要动态获取键盘的高度 再把这个高度设置为输入框距离底部的距离 输入框不就正好和键盘连接到一块了吗? 但是这样有个问题 就是输入框聚焦的时候 才能拿到键盘的高度 拿到键盘的高度 再设置输入框距离底部的距离 输入框会有个效果(就是先显示出来 然后往下掉——如果设置的高度偏大的话)

    我现在的解决方案是: 在不聚焦的时候 设置输入框距离底部的距离为0 这样键盘就是从下往上出现的 而不是从上往下出现的

    在这里插入图片描述

    最后的最后 暂时就先分享这么多吧 我自己懂得还不是很多 后期会优化这篇博客

    展开全文
  • 关于“即时通信IM”,腾讯的官方文档,这样介绍的:即时通信(Instant Messaging,IM)基于QQ 底层 IM 能力开发...官方的解释,通常都很官方,我一开始,也不明白这个东西是什么的,直到后来,跟APP端配合做...
    关于“即时通信IM”,腾讯云的官方文档,是这样介绍的:即时通信(Instant Messaging,IM)基于QQ 底层 IM 能力开发,仅需植入 SDK 即可轻松集成聊天、会话、群组、资料管理能力,帮助您实现文字、图片、短语音、短视频等富媒体消息收发,全面满足通信需要。
    

    即时通信IM的简单述说

    官方的解释,通常都很官方,我一开始,也是不明白这个东西是做什么的,直到后来,跟APP端配合做着做着,才大概看清楚它的样子。
    
    即时通信IM,还是先从字面意思理解,就是你说一句,我立马就能回你,这就叫即时通信,而不是,我发一个信息,半天后,你看到了再回我,那叫短信。现在的社会,节奏快,没人愿意等,聊天也是一样。当然,直播间更是了,谁都想立即得到回应,不希望被忽略。
    
    所以呢,这东西说白了,就是应用于,你进入直播间,跟主播互动打字聊天的那块功能,不光用户,包括主播,都有IM账号,才能相互之间进行互动,否则,连直播间可能都进不去。云直播和即时通信IM虽然是两个完全独立的产品,但是,只有结合到一块,才能发挥出最强效应。其实,直播间里的互动,就类似QQ建了个群,你们在这个群聊天互动,就是建立在即时通信IM的基础上的。当然,具体到点,肯定不止这些,比如,登录、用户字段、好友字段、群字段、群组管理等等的,好多,但主要的,还是围绕“通信”这一块,进行展开。
    

    开启即时通信IM

    那接下来,我们首先说说,如何开启即时通信IM。登录腾讯云账号,进入控制台,找到“即时通信IM”

    点击“即时通信IM”首页,点击“+添加应用”,输入应用名称,确认添加,进入“基本配置”页面。

    进入到这个页面,你能看到“基本信息”、“账号管理员”两个模块,

    基本信息里,要注意SDKAppID、秘钥,尽量先保存起来,后面,代码里会用到,APP端也会用到。

    账号管理这里,要记住管理员的用户名,保存起来,后面的代码里也会用到。
    
    还有一个地方“业务版本”,一开始,你这里可能就是试用版,组、成员等数量上都有限制,等到最后,当这些已经无法满足你实际业务需求的时候,你就需要从这里进行升级,切记,别升级到别的SDKAppID里,否则,前后端都得改相应的配置,虽然,无伤大雅,但可能招骂,因此,操作需谨慎。
    
    “即时通信IM”控制台,两主要菜单
    “功能配置”里的“登录与消息”
    1、这里有三个需要注意的地方,首先是“登录设置”

    注意“多端登录类型”是“双端登录”

    2、其次,是“历史消息存储时长”

    七天免费,这个根据业务而定吧,有参考文档,具体根据实际需要来即可。
    3、最后,是“消息撤回设置”

    这个功能,就类似微信的消息撤回功能,具体时长,亦可根据实际需要而定。
    “群组管理”
    点进去,就能看到所有的群组数据

    注意,这里的群组名称,对应的应该是直播间的名称,而群主,就是主播的IM账号。
    点击“查看详情”,会看到

    还有

    通常,从这里,就可以查询到每个直播间的消息数据,注意这里的用户名,就是用户的IM账户。
    
    主播有IM账号,用户有IM账号,这两个账号,可并非从腾讯云控制台生成,而是,需要我们将业务数据里的主播和用户的账号以特定的形式导入到即时通信IM.

    如何将后台账户数据导入到即时通信IM

    那,后台的数据账号,究竟需要怎么导入到即时通信IM呢?肯定的通过接口呀,是的,这块有接口的。
    
    文档地址:https://cloud.tencent.com/document/product/269
    
    进入这个文档,从左侧的“服务端API”进入,点击“REST API”,会看到“账号管理”,在账号管理有“导入单个账号”和“导入多个账号”,没错,就是这个,我们要导入即时通信账号的不二法门。不过,这两个接口,除了导入个数不同之外,还有个不同之处,那就是数据参数。
    
    “导入单个账号”有三个参数:用户名、用户昵称、头像;而“导入多个账号”,仅有一个Accounts参数,且是个数组的JSON串,数组里直接是用“,”隔开的不超过32位的用户名(其实,这里的用户名可以看成是ID也可以)。
    
    那么,究竟该如何操作,进入账号导入呢?首先,我们先来看几个地方,因为了解了这些,才是你代码实现的前提:
    
    1、首先,接口调取的域名,https://console.tim.qq.com/,这个仅在示例中展示了一下,并未明显标记,需注意。
    
    2、然后,是几个参数需要简单说一下:sdkappid在哪找,前文有提到;identifier,就是管理的名称,前文也有提到;random随机数,这个参数只要你不超过0 - 4294967295这个范围,就没问题了。
    
    3、其次,就是usersig签名的生成,这个可能稍微注意一下了,虽然有示例代码,但是,还是要注意封装,因为,后面的很多地方可能会用到,尽量灵活一点。
    
    4、另外,这个接口的调用频率是每秒200次,通常情况,是足够了(有钱就是牛逼)。
    
    5、应答包的返回,文档里有,就不说了,但,注意一下,文档下面的错误码说明,这里仅列出了一部分,可能有的人报出的错误码,在当前文档页面没有搜索到,但点开错误码文档,就是另一片天地。https://cloud.tencent.com/document/product/269/1671
    

    相关代码部分

    /**
     * APP账号导入即时通信IM - 单个 - API
     */
    public function account_import()
    {
        $userid = $this->request['userid'] ? $this->request['userid'] : '';
        $nickname = $this->request['nickname'] ? $this->request['nickname'] : '';
        $head_img = $this->request['head_img'] ? $this->request['head_img'] : '';
        if(!$userid || !$nickname || !$head_img){
            return ['error_code'=>201, 'error_msg'=>'用户昵称或头像为空'];
        }
        $data = ['Identifier'=>$userid, 'Nick'=>$nickname, 'FaceUrl'=>$head_img];
        $result = $this->import_common('account_import', $data);
        if($result['ActionStatus']=='OK' && $result['ErrorCode']==0){
            return ['error_code'=>200, 'error_msg'=>'单个-导入成功','data'=>[$data]];
        }
        return ['error_code'=>201, 'error_msg'=>'单个-导入失败','data'=>[]];
    }
    
    /**
     * APP用户导入到通信IM - 公共部分
     * @param string $func
     * @param array $data
     * @return mixed
     */
    private function import_common($func, $data)
    {
        $domain = 'https://console.tim.qq.com/';
        $action = 'v4/im_open_login_svc/'.$func.'?';
        $params['sdkappid'] = $this->im[self::SDK_APPID]['sdkappid'];
        $params['identifier'] = $this->im[self::SDK_APPID]['identifier'];
        $params['usersig'] = $this->get_usersig($params['sdkappid'], 
            $this->im[self::SDK_APPID]['imsecretkey'], $params['identifier']);
        $params['random'] = rand(0, 4294967295);
        $params_http_build = $this->params_http_build($params);
        $url = $domain.$action.$params_http_build.'contenttype=json';
        $res = $this->restRequst($url, json_encode($data));
        return json_decode($res, true);
    }
    
    /**
     * APP账号导入即时通信IM - 多个 - API
     */
    public function multiaccount_import()
    {
        $accounts = $this->request['accounts'] ? $this->request['accounts'] : '';
        if(!$accounts){
            return ['error_code'=>201, 'error_msg'=>'多个账号数据为空'];
        }
        $data = ['Accounts'=>explode(',',$accounts)];
        $result = $this->import_common('multiaccount_import', $data);
        if($result['ActionStatus']=='OK' && $result['ErrorCode']==0){
            return ['error_code'=>200, 'error_msg'=>'多个-导入成功','data'=>[$accounts]];
        }
        return ['error_code'=>201, 'error_msg'=>'多个-导入失败','data'=>[]];
    }
    
    /**
     * APP账号导入即时通信IM - 删除
     */
    public function account_delete()
    {
        $useridStr = $this->request['useridStr'] ? $this->request['useridStr'] : '';
        if(!$useridStr){
            return ['error_code'=>201, 'error_msg'=>'要删除UserId为空'];
        }
        $data = ['DeleteItem'=>$this->add_key(explode(',',$useridStr),'UserID')];
        $result = $this->import_common('account_delete', $data);
        if($result['ActionStatus']=='OK' && $result['ErrorCode']==0){
            return ['error_code'=>200, 'error_msg'=>'删除成功','data'=>[$data]];
        }
        return ['error_code'=>201, 'error_msg'=>'删除失败','data'=>[]];
    }
    
    /**
     * 数据配置KEY
     * @param array $data
     * @param string $k_name
     * @return array
     */
    private function add_key($data, $k_name)
    {
        $res = [];
        foreach ($data as $key=>$val) {
            $res[$key][$k_name] = $val;
        }
        return $res;
    }
    
    /**
     * 生成 UserSig
     */
    public function get_usersig($sdkappid, $imsecretkey, $string)
    {
        //echo $sdkappid.'-'.$imsecretkey.'-'.$string;exit();
        require_once (APPPATH."/libraries/live_sign/src/TLSSigAPIv2.php");
        $api = new \Tencent\TLSSigAPIv2($sdkappid, $imsecretkey);
        return $api->genSig($string);
    }

    何时导入账号至即时通信IM合适

    知道怎么导入账号了,但是,不知道大家有没有想过何时导入呢?
    
    通常,数据的导入,这里,主要分为两类,一类是新用户,一类是老用户。一个新的模块开发完毕,使用的肯定有老用户和新用户,我们既要保证新用户使用无误,更要老用户顺畅运行。因此,通常的处理方式都是使用批量导入,进行老用户的导入,而新用户在生成的时候,即为其导入即时通信IM账号。
    
    但是,老用户的导入,真的使用批量导入就好么?可能,答案不是肯定的。批量导入的用户,没有昵称和头像,在直播间显示的时候,会有点突兀,一旦还需要完善用户昵称和头像,你可能就的返重工;另外,考虑到网络的因素,你的批量导入,数据量大的时候,一次可能导不全,丢了数据,你都可能还不知道是哪个;就算你记录了,还不是得再来一遍,或两遍。
    
    因此,综上考虑,我们的处理方式是当用户每次登录进入小程序的时候,我们都会将用户当做是一个新的用户,进行账号导入到即时通信IM的操作。
    
    每次登录都导入?会不会有重复?答案,肯定是不会,这里,我们已经做过反复验证,只要第一次导入成功,后续只作更新,而且,一旦我们更改用户的头像和昵称,登录的时候还能及时同步信息到“即时通信IM”,另外,这样操作,还可以保证成功率,这个接口的使用频率是200次/秒,足够满足我们的需求。可谓一举三得!
    

    导入账号应该使用什么作为ID

    关于这个问题,我觉得得根据具体业务来定。通常,你使用,user_id来作为identifier“用户名”的值,都是可以的。但是,如果,当你的用户表里,有多个用户身份的数据时,判断不当,使用userid的话,可能就会出现串的情况。
    
    你比如说,我们一开始处理的时候,就是使用用户ID的,可是,后来忽然发现,原本一个用户,有用户身份和司机身份两条数据,结果因为注册的时候,控制不当,导致一个用户出现存在大于两条数据的情况。这样一个用户5条数据,他们有相同的手机号,这样当你用其中的第三条登录的时候,理应是取第三条的ID,作为即时通信IM的“用户名”,但可能就取成第一条数据的ID了,这样,就对不上了,后期,可能会出现聊天串直播间的等一系列未知的问题。
    
    后来,我们的解决方案是,使用手机号加下划线加身份类型码作为即时通信IM的“用户名”,不管你用哪条数据登录,你的手机号始终是唯一的,并且,数据对应的身份也能确定,这样,就能保证用户即时通信IM账号的唯一性了。当你切换成用户,你的IM账户,就是类似“18000000000_1”,而当你切换成司机,那就是“18000000000_2”了。经验证,这样确实是可行的,后期,也没有再出现类似直播间聊天串播的情况。还有一点,通过此,你还可以直接快速地定位到用户!
    
    好了,“即时通信IM”相关的东西,就简单说到这里,个中其他,可能并非我所说的这么简单,这里就当是引路好了,具体的,大家可以在实践中,根据具体情况,具体处理,还是那句话,仅供参考!下篇,我们就说说剩下的其他,算作当前直播系列文章的扫尾!
    
    
    The END!                                                                                2020/04/20 20:15:15
    展开全文
  • 亲和性:将多个东西尽量放在...在应用没有容器化之前,原先一个虚机上会装多个组件,进程间会有通信。但在做容器化拆分的时候,往往直接按进程拆分容器,比如业务进程一个容器,监控日志处理或者本地数据放在另一个...

    亲和性:将多个东西尽量放在一起。  反亲和性:将多个东西尽量分开。

     

    【说人话的通俗描述】

    春季流感高峰期,感冒的小朋友会被劝回家休息,避免传染给其他小朋友。这个隔离动作在IT行业叫反亲和性。

     

    行业术语

    在应用没有容器化之前,原先一个虚机上会装多个组件,进程间会有通信。但在做容器化拆分的时候,往往直接按进程拆分容器,比如业务进程一个容器,监控日志处理或者本地数据放在另一个容器,并且有独立的生命周期。这时如果他们分布在网络中两个较远的点,请求经过多次转发,性能会很差。

    1、亲和性可以实现就近部署,增强网络能力实现通信上的就近路由,减少网络的损耗。

    2、反亲和性主要是出于高可靠性考虑,尽量分散实例,某个节点故障的时候,对应用的影响只是 N 分之一或者只是一个实例。

    物理服务器上部署的虚拟机主机也符合这个原理。

     

    【举例子】

    初衷:阿里云、华为云等云服务器在创建时是不能指定从哪台物理服务器上分配的,那么就又可能我本来想创建一个5台云服务器来搭建一个集群,目的是提高可靠性,单台云服务器宕机后也不影响整体业务功能。

    问题:在批量创建云服务器时,云厂商后台可能会在同一台物理服务器上分配出5台虚拟机,那么当物理服务器出现宕机后,这5台云服务器也跟着宕机了,达不到高可靠的要求。

    解决办法:云服务厂商允许用户创建主机组,将这5台服务器加入主机组后,云服务厂商就会开启反亲和性,将这5台云服务器部署在不同的物理服务器上。

    为什么需要主机组:因为云厂商需要一个手段来判断这些云主机是否需要物理隔离,因此通过加入主机组就可以打上互相隔离的标志了。

     

     

    展开全文
  • 在应用没有容器化之前,原先一个虚机上会装多个组件,进程间会有通信。但在做容器化拆分的时候,往往直接按进程拆分容器,比如业务进程一个容器,监控日志处理或者本地数据放在另一个容器,并且有独立的生命周期。...
  • 0. 前言 网上这种东西不太多,我也是看了不少资料弄出来了,觉得应该写点东西出来...当然,不管你板子是什么,这篇文章主要讲的不是板子的问题,而是如何通过串口的AT指令控制GA6-B这种支持GPRS的短信模块来实现MQT...
  • 前端时间同事说平台通信使用了一个websocket的东西,今天抽空来看一下具体怎么个通信过程。 从形式上看,websocket一个应用层协议,socket数据链路层、网络层、传输层的抽象;从应用场合上看,websocket可以...
  • 感受 发表一下感慨:对于一个通信不懂得人弄这个东西真的很困难,我就是这...当初脑子一头雾水,根本啥也不懂,这是什么玩意啊,这样怎么通信。之后没办法事情摆在眼前你不得不去做。本人的测试项目看下面百度地...
  • 今天上午10点45分的,感觉面试管看了我的简历和学校就觉得我菜吧,有点看不起人,...先是问下项目,做过的什么东西,他看了我的学生信息管理系统,什么也没说,然后开始问答。回忆一下没问了这些。 进程通信(我回...
  • 百度云是个好东西(现在叫百度网盘不过我还是习惯叫百度),2个T的免费容量可以存视频、软件包等各式文件,就是下载速度有点让人看不下去,不开会员的话就算你百兆光纤还是量子通信被限速的,做为一个商业...
  • BMC私有中非常容易提升B格的东西,这一章简单对BMC进行一些介绍。 什么是BMC: 基板管理控制器(Baseboard Management Controller),一个专门的服务处理机,它利用传感器来监视一台计算机,网络服务器,或者...
  • 今天毕业设计刚刚完成,答辩大概也人生的唯一次体验了吧,除了想念朋友们还有学校一群可爱的老师们啊啊啊!     言归正传,上一次写的北大信工的保研经验,有学弟学妹过来问我计算机视觉方向...
  • 就是实现标题的功能。 现在socket 只能在局域网中...别跟我说 学什么什么去,百度什么p2p去搞什么路由器映射去, 这些话我也会说啊,问题 拿出具体的解决步骤,别给我讲原理讲思路, 先拿出个 能实现的 东西
  • 这个东西在我脑子里一直很模糊,大概只知道它个文件,然后能通信,就完了。中文名字也很奇怪,叫什么“套接字”还是“插头”,搞得我里雾里,索性狠下心来把Socket挖个底朝天。这篇文章也我学习Socket的总结...
  • Handler系列源码解析

    2019-10-22 23:31:05
    前言 老是看大佬们分析这个东西,也看了...谈这个之前,我觉得首先需要聊聊多线程这个东西(毕竟Handler很多时候跨线程通信的),那么,什么是多线程呢?比如,我们去银行办理业务,由于淡季,我们发现办理窗...
  • 电子信息类专业

    千次阅读 2010-10-08 11:44:00
    别的专业我不好说,电气、电子、电力、通信、自动化等电类专业,想要轻松那不可能地(当然你天才就另说),专业课上讲的东西对决大多数人来说那是云里雾里,从来都一知半解,需要你课下大量时间精力地消化。
  • MQTT协议设计简介

    2020-09-18 10:59:02
    MQTT协议设计简介 0cool 简介 MQTT全称为MQ Telemetry Transport,它一种轻量级的基于订阅分发的消息协议,适用于慢...MQTT协议设计的比较简洁,没有什么冗余的东西,相信这也很多公司愿意尝试使用它的原因,至
  • 现在,由通信云技术领导者融云推出的开发者社区 GeekOnline 正式与全球极客们见面啦!崇尚科技、自由和创造力的极客精神,GeekOnline 致力于成为一个创意与价值兼备、兴趣和温度并存的技术社区。 这一个开发者们的...
  • 上一篇文章《从一个例子开始分析AIDL原理》分析了通过AIDL来完成跨进程通信的过程,文章最后抛出了一个问题: aidl语法中参数列表中的定向tag: in、out 和 inout 是什么含义?(阅读这篇文章需要有一定aidl基础,如果...
  • 第一天的随笔

    2017-02-09 10:16:00
    技术方面的话,目前跟着公司项目组做软件开发,具体方向服务器通信安全和Linux C,将来可能会做私有。 随着一开始参加工作的满腔热情渐渐平静下来,开始有点渐渐地变得心浮气躁了,烦心的事也很多,大城市为...
  • 学的是通信类专业,自己对计算机软件比较感兴趣,没事喜欢写点小程序自乐,但是在学校感觉两年来并没有学到什么东西,大学老师上课大多时候给人的感觉就是要么照本宣科、要么光给你放个PPT,一节课下来就是几十页书...
  • 项目之原型法

    2015-10-10 14:24:48
    和BOSS去出差,BOSS说,项目开始,很难知道对方真正想要...项目关于船舶中零件数据CRUD、3D图形,通信等等,结合对方老式的C++库来做,这现在我对四个月前接手的这个项目的认知,想来四个月前我真的在里雾里。
  • Kotlin协程,现在已经成为了面试甚至工作中一个非常火的东西。 本人在刚开始了解Kotlin协程的时候,断断续续看了网上不少文章,用长篇大论把Kotlin协程描述的非常玄乎,但是看完后还是依然里雾里,所以决定来写...
  • 微前端的核心价值

    2020-12-05 16:41:05
    原因是什么呢?很简单,不可控。我的产品的上限由平台决定而不是我自己的 coding 能力决定,这就很要命了。尤其是一些核心模块,后面我想做一些个性性的改造可能都支持不了。但是如果有了微...
  • 但是要记住学习算法最关键的还是解题思路和方法,用什么语言实现其次的,如果你时间比较多我建议你用 Java 语言再实现一遍。 《labuladong的算法小抄》 非常推荐!这一本很新的书,写书前作者在 Github 开源...

空空如也

空空如也

1 2
收藏数 36
精华内容 14
关键字:

云通信是什么东西