layer

alpha冲刺——第六天

人走茶凉 提交于 2020-05-04 13:11:51
作业概况 这个作业属于哪个课程 <班级的链接> 这个作业要求在哪里 <作业要求的链接> 团队名称 Daily 6+1 这个作业的目标 alpha冲刺 作业正文 汇总正文 其他参考文献 ... 每日汇报 学号 今日进展 存在问题 明日安排 091700403 帖子界面的搜索功能,标签的DAO层和转发功能的实现 举报的时候是否应该允许用户进行多次举报? 标签剩余的部分,做完用户的举报功能。 110700516 删除之后的时间轴动画效果。vue-layer的导入和增加和删除的自定义弹框效果。增加了自定义按钮的弹出动画。 vuex在刷新之后会初始化数据 继续学习vuex的数据交换方法。 221701104 负责的登录、个人主页、帖子界面、详情和管理员管理界面UI已经基本完成,使用Mockjs进行测试。 继续使用Mockjs的数据进行传参测试,继续对UI进行美化改造。 221701105 注册和登录的控制测,写完了单元测试和XML的配置。冻结用户和删除帖子的功能已经完成。 单元测试的注释因为拼写和大小写错误而无法运行。 进行单元测试,准备服务器和云服务的配置。 221701116 寻找IP对应地区名,根据ID获得地区名称,新增帖子的时候已经可以方便帖子的气泡变化。 编写对评论的评论或者回复。 221701132 axio的使用,对百度地图API进行调用。 百度地图的API的调用还没有使用。

SkipList和java中ConcurrentSkipListMap的实现

荒凉一梦 提交于 2020-05-04 07:35:41
SkipList和java中ConcurrentSkipListMap的实现 简介 一开始听说SkipList我是一脸懵逼的,啥?还有SkipList?这个是什么玩意。 后面经过我的不断搜索和学习,终于明白了SkipList原来是一种数据结构,而java中的ConcurrentSkipListMap和ConcurrentSkipListSet就是这种结构的实现。 接下来就让我们一步一步的揭开SkipList和ConcurrentSkipListMap的面纱吧。 SkipList 先看下维基百科中SkipList的定义: SkipList是一种层级结构。最底层的是排序过的最原始的linked list。 往上是一层一层的层级结构,每个底层节点按照一定的概率出现在上一层list中。这个概率叫做p,通常p取1/2或者1/4。 先设定一个函数f,可以随机产生0和1这两个数,并且这两个数出现的几率是一样的,那么这时候的p就是1/2。 对每个节点,我们这样操作: 我们运行一次f,当f=1时,我们将该节点插入到上层layer的list中去。当f=0时,不插入。 举个例子,上图中的list中有10个排序过的节点,第一个节点默认每层都有。对于第二个节点,运行f=0,不插入。对于第三个节点,运行f=1,将第三个节点插入layer 1,以此类推,最后得到的layer 1 list中的节点有:1,3,4

iOS-电池图标【结合贝塞尔曲线控制电量显示】

这一生的挚爱 提交于 2020-05-04 07:17:13
基于UIView类:WKJBatteryView WKJBatteryView.h #import <UIKit/UIKit.h> @interface WKJBatteryView : UIView /* * value:0 - 100 */ - ( void )setBatteryValue:(NSInteger)value; @end WKJBatteryView.m #import " WKJBatteryView.h " @interface WKJBatteryView() /// 电池宽度 @property (nonatomic,assign) CGFloat b_width; /// 电池高度 @property (nonatomic,assign) CGFloat b_height; /// 电池外线宽 @property (nonatomic,assign) CGFloat b_lineW; @property (nonatomic,strong) UIView * batteryView; @end @implementation WKJBatteryView - (instancetype)initWithFrame:(CGRect)frame{ self = [super initWithFrame:frame]; if (self) { [self

蓝牙协议分析(5)_BLE广播通信相关的技术分析

喜你入骨 提交于 2020-05-04 06:15:40
1. 前言 大家都知道,相比传统蓝牙,蓝牙低功耗(BLE)最大的突破就是加大了对广播通信(Advertising)的支持和利用。关于广播通信,通过“玩转BLE(1)_Eddystone beacon”和“玩转BLE(2)_使用bluepy扫描BLE的广播数据”两篇文章的介绍,我们已经有了一个整体的认识。本文将依此为基础,从技术的角度,分析和理解BLE协议中有关广播通信的定义和实现。 注1:之前的蓝牙协议分析文章(如“蓝牙协议分析(3)_蓝牙低功耗(BLE)协议栈介绍”),偏向于从横向、从大而全的角度,介绍蓝牙协议,以便让大家有一个整体的认识。 而从本文开始,我们会收敛到一个个的功能点上,以功能为出发点,从纵向的角度,游走于蓝牙协议的各个层次中,以加深对蓝牙协议的理解,进而达到融会贯通的目的。 2. 概述 2.1 使用场景 在BLE协议中,广播通信主要有两类使用场景: 1)单一方向的、无连接的数据通信,数据发送者在广播信道上广播数据,数据接收者扫描、接收数据。 2)连接的建立。 后续的分析,将围绕这两个使用场景展开。 2.2 协议层次 在BLE协议中,和广播通信相关的协议层次比较简单,主要包括: GAP-------->HCI-------->LL LL(Link Layer)位于最底层,负责广播通信有关功能的定义和实现,包括物理通道的选择、相关的链路状态的定义、PDU的定义

蓝牙协议分析(10)_BLE安全机制之LE Encryption

岁酱吖の 提交于 2020-05-04 04:51:43
1. 前言 前面文章介绍了两种BLE的安全机制:白名单 [4] 和LL privacy [3] 。说实话,在这危机四伏的年代,这两种“捂着脸讲话(其它人不知道是谁在讲话,因而不能插话、不能假传圣旨,但讲话的内容却听得一清二楚)”的方法,实在是小儿科。对于物联网的应用场景来说,要做到安全,就必须对传输的数据进行加密,这就是LE Encryption要完成的事情(当然,只针对面向连接的数据),具体请参考本文的介绍。 2. 基本概念 从字面理解,Encryption是一个名词,意思是“加密术”,因此LE Encryption就是“BLE所使用的加密技术”的意思。了解加密概念的同学应该都知道,通信过程中的加密无非就是如下简单的流程: 数据发送方在需要发送数据的时候,按照一定的加密算法,将数据加密; 数据接收方在接收到数据的时候,按照等同的解密算法,将数据解密。 因此,对LE Encryption来说,需要考虑的事情无非就两条: 1)加密/解密的事情,需要在协议的哪个层次去做? 2)使用什么样的加密/解密算法? 对问题1来说,很好回答:无论是从安全的角度,还是从通信效率的角度,都应该由链路层(LL,Link Layer [1] )在发送/接收数据的时候,完成加密/解密动作(具体可参考)。而问题2呢,到底要使用什么的算法,这是蓝牙标准化组织的事情,我们在本文只需要了解最终的结论即可(具体可参考

高可用实现KeepAlived原理简介

元气小坏坏 提交于 2020-05-04 03:48:24
一、简介     目前主流实现web网站及数据库服务高可用软件包括:keepalived、heartbeat、corosync,cman;高可用简称HA;     官方站点: https://www.keepalived.org/   1、keepalived主要功能     对RealServer进行健康状态检查, 支持3层、4层、7层协议进行健康检查;并支持VRRP冗余协议 , 所以keepalived两个功能是监控检查,VRRP冗 余协议;   2、keepalived的作用      检查web服务器的状态,如果有一台web服务器/mysql服务器宕机或故障,keepalived将故障节点从系统中剔除,当故障恢复的时候自动加入服务器集群中,非常智能化,只需要手动修复坏的节点即可。   3、keepalived的laye r3、4、7层分别是IP层、传输层、应用层的实现原理 如下:     1)、layer3:keepalived定期向集群中服务器发送ICMP的包,如果发现哪台ping不通,便报告这台服务器失效,并将其剔除集群;(判断标准为IP是否有效)     2)、layer4:主要以TCP端口(也可以是udp)状态来决定服务器工作是否正常,如web服务器的80端口如果没有工作,则将其剔除集群(判断标准为端口)     3)、layer7:应用层

kubernetes haproxy+keepalive实现master集群高可用

做~自己de王妃 提交于 2020-05-04 03:46:00
##前言 master的HA,实际是apiserver的HA。Master的其他组件controller-manager、scheduler都是可以通过etcd做选举(--leader-elect),而APIServer设计的就是可扩展性,所以做到APIServer很容易,只要前面加一个负载均衡轮训转发请求即可。下面简单描述下haproxy和keepalive。 注意⚠️便于大家使用,所以先码部署,有兴趣的可以看下后面的原理。 ###一、实操篇 ####1. haproxy部署 #####1.1. 安装haproxy yum -y install haproxy 生产环境可以用二进制包部署 #####1.2. 修改配置文件 cp /etc/haproxy/haproxy.cfg /etc/haproxy/haproxy.cfg-back vim /etc/haproxy/haproxy.cfg global log 127.0.0.1 local2 chroot /var/lib/haproxy pidfile /var/run/haproxy.pid maxconn 4000 user haproxy group haproxy daemon stats socket /var/lib/haproxy/stats defaults mode tcp log global

openlayers3 基础(常见方法,类及实现)

痴心易碎 提交于 2020-05-04 02:13:44
    ol3接口大全 1.ol.Map类:(地图容器类)     实现: ol.Map(参数)   参数说明:1.1 target,说明地图所在的html元素、         如果没有指定,必须调用ol.Map类的setTarget()方法以便绘制地图;       1.2 layers,指定加载的图层。         如果未定义,则将呈现不包含图层的地图(图层是按提供的顺序呈现的,         如果想要矢量图层显示在瓦片图层顶部,则必须位于瓦片图层之后)。       1.3 view, 设置地图的显示视图。         如果在构建时未指定,则必须通过ol.Map()类的setView()方法指定,否则不会提取图层源。 常见方法说明: render():请求地图渲染(下一帧动画)。         getEventPixel(event):获取相对于浏览器窗口的地图像素位置。         event:(event)事件。         getView():获取地图视图。返回值为{ol.View}类。         addLayer(layer):将地图图层添加到地图容器中。         layer:(ol.layer.Base)地图图层。         removeLayer(layer):将图层从地图容器中移除。         layer:(ol

蓝牙BLE: 蓝牙(BLE)协议栈

断了今生、忘了曾经 提交于 2020-05-04 00:19:15
蓝牙协议是通信协议的一种,一般而言,我们把某个协议的实现代码称为协议栈(protocol stack), BLE协议栈就是实现低功耗蓝牙协议的代码 ,理解和掌握BLE协议是实现BLE协议栈的前提。当前的蓝牙协议分为基础率/增强数据率(BR/EDR)和低耗能(LE)两种技术类型,本文将重点介绍BLE(Bluetooth Low Energy)。 1、BLE低功耗蓝牙协议栈框架 要实现一个BLE应用,首先需要一个支持BLE射频的芯片,然后还需要提供一个与此芯片配套的BLE协议栈,最后在协议栈上开发自己的应用。可以看出BLE协议栈是连接芯片和应用的桥梁,是实现整个BLE应用的关键。那BLE协议栈具体包含哪些功能呢?简单来说,BLE协议栈 主要用来对你的应用数据进行层层封包,以生成一个满足BLE协议的空中数据包,也就是说,把应用数据包裹在一系列的帧头(header)和帧尾(tail)中 。 蓝牙协议规定了两个层次的协议,分别为蓝牙核心协议(Bluetooth Core)和蓝牙应用层协议(Bluetooth Application)。蓝牙核心协议关注对蓝牙核心技术的描述和规范,它只提供基础的机制,并不关心如何使用这些机制;蓝牙应用层协议,是在蓝牙核心协议的基础上,根据具体的应用需求,百花齐放,定义出各种各样的策略,如FTP、文件传输、局域网等等。 而蓝牙核心协议(Bluetooth Core

深入浅出讲解低功耗蓝牙(BLE)协议栈

落爺英雄遲暮 提交于 2020-05-03 23:45:55
详解BLE连接建立过程 https://www.cnblogs.com/iini/p/8972635.html 详解BLE 空中包格式—兼BLE Link layer协议解析 https://www.cnblogs.com/iini/p/8977806.html 开发你的第一个BLE应用程序—Blinky https://www.cnblogs.com/iini/p/8996025.html 手把手教你开发BLE数据透传应用程序、 https://www.cnblogs.com/iini/p/9095622.html 如何实现蓝牙空中升级BLE OTA https://www.cnblogs.com/iini/p/9314246.html 手把手教你开发BLE数据透传应用程序 https://www.cnblogs.com/iini/p/9095622.html 三种蓝牙架构实现方案(蓝牙协议栈方案) https://www.cnblogs.com/iini/p/8834970.html 深入浅出低功耗蓝牙(BLE)协议栈 https://www.cnblogs.com/iini/p/8969828.html 蓝牙协议是通信协议的一种,一般而言,我们把某个协议的实现代码称为协议栈(protocol stack),BLE协议栈就是实现低功耗蓝牙协议的代码