小程序搭建流程有哪五步骤seo百度发包工具

bicheng/2026/1/18 23:46:56/文章来源:
小程序搭建流程有哪五步骤,seo百度发包工具,上海学网站建设,网站运营外包公司业务场景 业务开发过程中#xff0c;我们经常会需要判断远程终端是否在线#xff0c;当终端离线的时候我们需要发送消息告知相应的系统#xff0c; 环形队列 1.创建一个index从0到30的环形队列#xff08;本质是个数组#xff09; 2.环上每一个slot是一个Set#xf…业务场景 业务开发过程中我们经常会需要判断远程终端是否在线当终端离线的时候我们需要发送消息告知相应的系统 环形队列   1.创建一个index从0到30的环形队列本质是个数组 2.环上每一个slot是一个Set任务集合 3.同时还有一个Mapuid, index记录uid落在环上的哪个slot里 4.启动一个timer每隔1s在上述环形队列中移动一格0-1-2-3…-29-30-0… 5.有一个Current Index指针来标识刚检测过的slot 6.接收到设备心跳后将寻找到原来uid的位置然后移动到当前指针的后一位并删除原来slot里的uid 7.这样就可以快速获取超时的设备uid 环形队列实现 package com.zngx.admin.circle;import java.util.HashMap; import java.util.HashSet; import java.util.Map; import java.util.Set; import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.ReentrantLock;/*** Author : zhiying* Date : 2022-11-22 15:17* Desc : 环形队列 - 设备离线判定* 1、预设一个长度为10000的数组按实际业务定义长度* 2、每个数组存放一个Set集合* 3、维护一个游标cur从0到9999递增到达9999时重置为0启动一个线程执行* 4、维护一个map记录所有设备ID存放的数组位置方便查找* 5、监听到设备心跳时先将原来的数据从指定位置的集合中删除通过计算当前游标位置和keepAlive寻找合适的位置将设备ID放入* 6、当游标指向某个位置a时a位置的集合中的所有设备全部判定为离线并清空该位置的集合**/public class CircleQueueT {//线程安全锁Lock lock new ReentrantLock();//初始环形队列大小private int capacity 10000;//当前环形队列所在节点private volatile int currentIndex 0;//数据所在节点private MapT,Integer dataIndex new HashMap();//环形队列private SetT[] array;public CircleQueue(){array new HashSet[capacity];}public CircleQueue(int capacity){this.capacity capacity;array new HashSet[capacity];}/*** 向环形队列中添加元素* param t* param offset 偏移量基于游标*/public void add(T t, int offset){int index currentIndex offset;if(index capacity){index index - capacity;}try {lock.lock();//判断数据是否存在if(dataIndex.containsKey(t)){SetT old array[dataIndex.get(t)];old.remove(t);}//获取当前节点的队列SetT set array[index];if(null set){set new HashSet();array[index] set;}set.add(t);//更新新的节点位置dataIndex.put(t,index);}catch (Exception e){e.printStackTrace();}finally {lock.unlock();}}/*** 下移一格到9999重新置为0*/public void next(){int cur currentIndex 1;if(cur capacity){cur cur - capacity;}currentIndex cur;System.out.println(当前游标位置 currentIndex);}/*** 获取当前游标指向的元素集合* return*/public SetT getAndDeleteData(){SetT set null;try {lock.lock();set array[currentIndex];return set;}finally {// 将集合中所有的元素移除array[currentIndex] new HashSet();if(set ! null set.size()0){set.forEach(t - {dataIndex.remove(t);});}lock.unlock();}}public int getIndex(T t){if(dataIndex.containsKey(t)){return dataIndex.get(t);}return -1;} }测试代码  Testpublic void circleTest(){CircleQueueString circleQueue new CircleQueue();for (int i0;i1000;i){String uuid String.valueOf(i1);int offset (int) Math.round(Math.random()*10);circleQueue.add(uuid, offset);}checkTimeout(circleQueue);insertDataRandom(circleQueue);try {Thread.sleep(600000);}catch (Exception e){e.printStackTrace();}}private void checkTimeout(CircleQueueString circleQueue){service.scheduleAtFixedRate(new Runnable() {Overridepublic void run() {SetString set circleQueue.getAndDeleteData();if(set null || set.isEmpty()) {System.out.println(本次没有设备离线);}else{System.out.println(这些设备离线啦 Joiner.on(,).join(set));}circleQueue.next();}},2,1, TimeUnit.SECONDS);}private void insertDataRandom(CircleQueueString circleQueue){service.scheduleAtFixedRate(new Runnable() {Overridepublic void run() {String deviceId String.valueOf(Math.round(Math.random()*100000));int offset (int) Math.round(Math.random()*10);circleQueue.add(deviceId, offset);System.out.println(插入设备[deviceId], offset 秒后离线);}},3,3, TimeUnit.SECONDS);} 测试结果 148aed53-a083-40a6-82d3-ede14e5e39c9初始时间1585571543739 当前位置:0数据大小:0 当前位置:1数据大小:0 当前位置:2数据大小:0 当前位置:3数据大小:0 当前位置:4数据大小:0 148aed53-a083-40a6-82d3-ede14e5e39c9不移动位置29 当前位置:5数据大小:0 当前位置:6数据大小:0 当前位置:7数据大小:0 当前位置:8数据大小:0 当前位置:9数据大小:0 当前位置:10数据大小:0 当前位置:11数据大小:0 当前位置:12数据大小:0 当前位置:13数据大小:0 当前位置:14数据大小:0 148aed53-a083-40a6-82d3-ede14e5e39c9不移动位置29 当前位置:15数据大小:0 当前位置:16数据大小:0 当前位置:17数据大小:0 当前位置:18数据大小:0 当前位置:19数据大小:0 当前位置:20数据大小:0 当前位置:21数据大小:0 当前位置:22数据大小:0 当前位置:23数据大小:0 当前位置:24数据大小:0 148aed53-a083-40a6-82d3-ede14e5e39c9不移动位置29 当前位置:25数据大小:0 当前位置:26数据大小:0 当前位置:27数据大小:0 当前位置:28数据大小:0 148aed53-a083-40a6-82d3-ede14e5e39c9过期 超时时间30005

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/89048.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

手机触屏网站模板百度云如何做网站

🎈 作者:互联网-小啊宇 🎈 简介: CSDN 运维领域创作者、阿里云专家博主。目前从事 Kubernetes运维相关工作,擅长Linux系统运维、开源监控软件维护、Kubernetes容器技术、CI/CD持续集成、自动化运维、开源软件部署维护…

单页网站建设教程德阳如何做百度的网站

无意之间发现个django的后台管理框架,仔细与xadmin对比了一下,无论是功能上还是便携性上都与xadmin特别相似,但个人感觉Tyadmin略胜一筹,因为外观上要比xadmin要美观,而且相比起来速度也快,部署甚至也和简单…

什么网站内链建设网站建设作业指导书

随着网络技术的不断发展,爬虫技术也越来越成熟,爬虫伪装技术也随之得到了广泛应用。在爬虫伪装技术中,如何伪装成正常的浏览器行为,让目标网站无法辨别出爬虫的存在,是爬虫伪装技术的核心。下面,我将从以下…

网站UI怎么做常德网站建设公司

Spark笔记——技术点汇总 目录 概况 手工搭建集群 引言 安装Scala 配置文件 启动与测试 应用部署 部署架构 应用程序部署 核心原理 RDD概念 RDD核心组成 RDD依赖关系 DAG图 RDD故障恢复机制 Standalone模式的Spark架构 YARN模式的Spark架构 应用程序资源构建…

网站中的公司地址怎么做建设项目验收网站

转载于:https://www.cnblogs.com/dyufei/p/6612032.html

上海涛飞专业网站建设网站建设项目设计报告

0.前言 先推荐一部电影《美国派》三部曲,成长题材系列的电影,也反映了对某避讳话题的理性看待,理所当然。 再推荐一个开发套件,NVIDIA Jetson系列开发套件,目前我在用的是Xavier NX和Orin Nano。为什么推荐呢&#xff…

南昌做网站建设公司广州建站费用

这篇文章会分享小厂如何做包体积优化相关主题,涉及内容包括:1) Android包体积优化的一种可能是比较标准的推进做法,2) 大致流程的心路历程和思考方式,3) 如何去总结和分享你们进行过的包体积优化项目。本文不仅仅是一篇分享&#…

源码论坛网站网页设计页面

Redis入门:五大数据类型 文章目录 Redis入门:五大数据类型一.概述二.Redis的基本了解三.Redis五大数据类型1.String (字符串)2.List(列表)3.Set集合(元素唯一不重复)4.Hash集合5.zSet(有序集合) 一.概述 什么是Redis Redis(Remote Dictiona…

国家精品课程建设工作网站中交路桥建设有限公司地址

绝对时间:相对于1970年1月1日0时0分0秒 相对时间:相对于当前时间,如sleep(3);相对于当前,过3s.

网站建设如何找本地客户网站设置怎么调

进程根据状态可以分为三种进程,守护进程,僵尸进程,孤儿进程。今天我们着重来分析下守护进程。 1.daemon? (1)概念 守护进程 (daemon) 是一类在后台运行的特殊进程,用于执行特定的系统任务。很多守护进程…

网站开发 技术难点重庆专门做网站的公司

一、IMU传感器是什么: 惯性测量单元IMU(Inertial Measurement Unit)是一种使用【加速度计】和【陀螺仪】来测量【物体三轴姿态角(空间姿态)】的装置;IMU在坐标系的每个坐标轴上,均安装有1个陀螺…

高端定制网站南昌网站建设索q.479185700

✨界面展示 登录 注册 垃圾检测 用户管理 404 Not Found页面 403 拒绝访问页面 黑暗模式 深蓝模式 灰色模式 色弱模式 ✨技术特性 深度学习 YOLOv5🚀:高效、准确的目标检测算法,实时识别检测图像和视频中的各种对象PyTorch:机器…

自己做的网站怎么接入数据库家居公司网站建设方案ppt

一、问题的提出大家看到这个标题,一定会觉得非常简单,不错,对于高手们来说,这确实不值一提,但是,对于广大非高手的兄弟,还是有必要了解一下。以前,我对广播地址的认识也是模模糊糊&a…

教育培训网站源码网站后台管理系统数据库

一般操作流程(视频设备):1. 打开设备文件。 int fdopen("/dev/video0",O_RDWR);2. 取得设备的capability,看看设备具有什么功能,比如是否具有视频输入,或者音频输入输出等。VIDIOC_QUERYCAP,struct v4l2_capability3. 选择视频输入…

空中客车网站建设需求wordpress赞

目录 常用的 element-ui el-input 输入框 1. 过滤字母e, 2. 只能输入正整数 3. 只允许输入数字和小数 / 数字和空格 4. 只允许输入正整数且不能以0开头 4. 允许输入小数点后几位 5. 设置范围,最大值,最小值 6. form 表单中校验输入框只能…

如何写一份企业网站建设方案pageadmin好用吗

自动复盘 2023-10-13 凡所有相,皆是虚妄。若见诸相非相,即见如来。 k 线图是最好的老师,每天持续发布板块的rps排名,追踪板块,板块来开仓,板块去清仓,丢弃自以为是的想法,板块去留让…

dell网站的网站设计特色wordpress 使用 中文路径

参与这个类活动,我会坚持完成它的。目前MindSpore文档里面的内容还看的不是很懂,希望自己在能不断进步。 第一天学到的内容—— 昇腾应用使能:华为各大产品线基于MindSpore提供的AI平台或服务能力MindSpore:支持端、边、云独立的…

东莞 企业网站建设营销策划咨询公司

一、函数 1.1 函数的定义 函数是脚本的别名 作用:函数可以避免代码重复,可读性强,可以简化脚本。 格式:函数名(){脚本} 1.2 如何使用函数 1.定义 2.调用 函数一定要先定义再使用 例子&#xff1a…

章丘公司做网站iis 7.0 搭建网站

作者:袭周、十眠 让我们从一个十分常见的业务场景说起。 移动互联网时代,许许多多的业务都有着流量的周期性变化,无论是直播、游戏、点单系统、电商平台等等,都会存在着流量的高峰与波谷。如果采用固定的计算资源部署服务&#…