首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏呆呆熊的技术路

    计数器、滑动窗口、漏桶、令牌算法比较和伪代码实现

    想法很直接,就是想在一定时间内把请求限制在一定范围内,保证系统不被冲垮,同时尽可能提升系统的吞吐量 限流常用的方式 计数器、滑动窗口、漏桶、令牌 计数器 计数器是限流里最简单的,简单来说,比如 我限制1 到了2018-02-27 16:24:00,把计数器归零! 周而复始! ? 但这种会有问题!比如我在前58s都不请求,而在最后一秒请求60次!这样的效果跟木有啥区别.. (); if ($res) { //执行正常业务 } else { //拦截掉 } } } 滑动窗口 滑动窗口其实就是 细分之后的计数器! ? 这样假设, 先把一分钟划分成6段! 也就是10s一个段!在第一段里,假如请求61次,那么直接触发了规则!肯定就过不去了!如果只请求了1次!则是正常的!

    3.1K21发布于 2020-06-09
  • 来自专栏林德熙的博客

    dotnet 如何从 Gtk 3 的窗口到对应的 X11 窗口

    本文将告诉大家如何在 Gtk3 的 Gtk.Window 或 Gdk.Window 里面获取到对应的 X11 窗口 XID 号 记录本文是因为我在这里踩了很多坑,核心问题就是 GTK 有很多个版本,我开始找的全是使用 _window_get_xid 方法即可正确的从 gdk 窗口获取到对应的 X11 窗口的 XID 值 为了方便使用 gdk_x11_window_get_xid 方法,以下照 GtkSharp 进行一些代码定义 = gdk_x11_window_get_xid(gdkWindow.Handle); Console.WriteLine($"X11 窗口 0x{x11:x2}"); } 通过以上代码输出的 X11 窗口的 XID 号,可以同步在命令行输入进 xwininfo 命令里面。 比如我这里输出的是 X11 窗口 0x5600003 的值 打开另一个命令行,输入以下命令,将 XID 传入 xwininfo 命令,即可看到显示的窗口标题和当前运行的窗口是相同的 我核心踩坑就是搜到的是

    70710编辑于 2024-05-16
  • 来自专栏小锋学长生活大爆炸

    【技巧】关闭Win11拖动窗口自动出现的贴靠窗口分栏

    这个功能真的很烦,一拖动窗口就会自动出现,像这样: 今天就把它关了! 1、进入“设置 - 多任务处理”  2、狠狠点击,“关”了它  这样再拖动,就不会出现了。

    18.8K50编辑于 2023-07-05
  • 来自专栏林德熙的博客

    dotnet 后台线程发送 X11 窗口消息

    本文将告诉大家如何在 dotnet 里面的后台线程向自己进程内的窗口发送消息 核心是通过 XSendEvent 发送消息,发送消息想要有反应需要另开 XOpenDisplay 获取 display 对象 finally { XCloseDisplay(display1); } } }); 以上的 handle 是一个 X11 窗口指针,代码如下 var display = XOpenDisplay(IntPtr.Zero); var screen = XDefaultScreen(display); var handle origin ee9c8da351838b0ec3b8ab577a6c9904e024517d 获取代码之后,进入 DikalehebeekaJaqunicobo 文件夹,即可获取到源代码 更多 X11 , handle, false, 0, ref @event); XFlush(display); } }); 这里由于需要进行多线程共用一个 display 对象,根据 X11

    54410编辑于 2024-05-16
  • 来自专栏怪兽怪秀

    Keil系列教程11_工程窗口图标说明

    一、写在前面 很多朋友看到如下工程窗口的图标(如:带有 “叹号”、“星号”、“钥匙”、“禁止驶入” 标志),就会产生疑问:这些图标到底是啥意思呢? 其实,这些不同标志的图标是代表着不同的含义,目前Keil工程窗口中的图标大约有二十种。 许多初学的朋友看到这些异样的图标就会产生疑惑,下面章节我就详细讲述一下这些图标的含义。 二、图标介绍 Keil工程窗口中的图标大约有二十种,但这二十种图标可以分为四大类: 1.Project: 工程图标 2.Group: 文件夹(组)图标 3.File: 文件图标 4.SWC(Software 3.2 Group组(文件夹)图标 未展开组图标: 也就是不能看见该组下面文件,请结合工程窗口理解。 已展开组图标: 和未展开组图标对应。 下面让大家看一下这类图标的大概含义(来自Keil帮助文件内容): 四、特殊标记图标 上章节只是 概述了工程窗口四大类图标的含义 ,其实本文重点在于这一章节的“特殊标记图标”。

    2K30编辑于 2022-12-29
  • 来自专栏林德熙的博客

    dotnet X11 设置窗口鼠标触摸命中穿透

    本文记录如何在 X11 应用里面,使用 XShapeCombineRegion 方法配置一个 X11 窗口支持和 Win32 窗口一样的命中测试穿透功能,即对应 Win32 的 WS_EX_TRANSPARENT 的鼠标、触摸等的点击等动作的穿透功能,可以实现在窗口中挖空一块范围直接穿透到后面的窗口 在 X11 窗口中,想要实现让窗口不可命中,即所有的鼠标、触摸等的事件穿透到后面的窗口上,可以采用 libXext.so childWindowHandle 是一个 X11 窗口 var region = XFixesCreateRegion(display, 0, 0); XFixesSetWindowShapeRegion ..ctor(X11Info x11Info, IntPtr mainWindowHandle) at UnoInk.X11Ink.X11InkProvider.Start(Window unoWindow - V2EX 2021-08-21窗口管理器杂谈 - 简书 更多 X11 开发请参阅 博客导航 关于在 Windows 系统下的 WPF 窗口点击穿透,请参阅 WPF 制作支持点击穿透的高性能的透明背景异形窗口

    81610编辑于 2024-05-22
  • 来自专栏用户4866861的专栏

    单光子计数器,时间相关光子计数器,单光子光电计数器

    SYN5648型时间相关单光子计数器(TCSPC)产品概述SYN5648型时间相关单光子计数器(TCSPC)是由西安同步电子科技有限公司精心设计、自行研发生产的一款专用的高精密时间间隔计数测量仪器。

    1.8K20编辑于 2023-04-07
  • 来自专栏轩辕镜像

    在 Windows 11 上关闭弹出窗口最正确方法

    在您工作或尝试专注于某段内容时,弹出窗口和中断可能会很烦人。 虽然移动设备只有一个 DND 切换开关,但Windows呢?您可以在 Windows 11 上停止弹出窗口吗? 本文将告诉你关于弹出式窗口的一切。 我们可以在 Windows 11 上停止弹出窗口吗? 尽管可以消除 Windows 11 中的大部分弹窗,但某些确认弹窗和安全通知是无法绕过的。 此外,没有一种可靠的方法可以通过单击摆脱所有弹出窗口。在 Windows 11 上,若要消除弹出窗口,需要针对特定类型的弹出窗口进行关闭。 幸运的是,我们编制了一份列表,列出您需要关闭以消除 Windows 11 上的弹出窗口的所有通知和警报.这是你可以做到的。 在 Windows 11 上停止弹出窗口的 8 种方法(分步教程) 要停止 Windows 11 上的弹出窗口,您可以选择关闭通知、启用焦点模式或禁用警报。这些方法中的每一种都有其优点和缺点。

    10.9K10编辑于 2024-09-29
  • 来自专栏林德熙的博客

    dotnet C# 设置 X11 应用窗口背景透明

    本文将告诉大家如何在 X11 里面设置窗口透明 不同于在 WPF 里面可以使用 AllowsTransparency 简单方便的设置透明,在 X11 里面设置窗口透明的方法比较绕。 透明窗口示例应用代码 按照 X11 的基础使用方法,先获取 Display 和 Screen 和 RootWindow 对象/指针,代码如下 var display = XOpenDisplay(0) ,开启窗口特效 如果开启之后依然没有透明窗口背景效果,则请调查一下是否 UOS 里默认的 KWin 窗口合成管理器损坏或被替换为其他的窗口合成管理器,查看当前的窗口合成管理器可使用以下命令 sudo apt-get install inxi inxi -Gxx | grep compositor 如能输出 compositor: kwin_x11 之类的,则证明依然使用的是 kwin 窗口合成管理器。 ; using BlankX11App.X11; using static BlankX11App.X11.XLib; using static BlankX11App.X11.GlxConsts;

    78410编辑于 2024-03-29
  • 来自专栏林德熙的博客

    dotnet 后台线程设置 X11 窗口最小化

    本文将告诉大家如何在 dotnet 里面的后台线程设置 X11 窗口的最小化 核心设置 X11 窗口最小化的方法是 XIconifyWindow 方法,核心问题是在后台线程需要自己使用 XOpenDisplay 但实际测试发现通过如下代码方式,将需要在一定的时机下才能生效,比如鼠标在窗口内晃动,或者重新激活窗口才能生效 _ = Task.Run(async () => { while (true) Gravity.NorthWestGravity, win_gravity = Gravity.NorthWestGravity, //override_redirect = true, // 设置窗口的 override_redirect属性为True,以避免窗口管理器的干预 colormap = XCreateColormap(display, rootWindow, visual, 0),

    54410编辑于 2024-05-16
  • 来自专栏林德熙的博客

    X11 使用 XSetWMNormalHints 固定窗口所在的屏幕

    我计划使用 X11 创建两个窗口,分别让这两个窗口在两个屏幕上。 在不做任何处理的情况下,会受到 X 窗口管理器的影响,导致全部都在鼠标最后一次命中的屏幕上显示窗口 我的需求是双屏双窗口,即一个屏幕显示一个窗口。 简单起见,我将固定写魔数,而不是真的根据屏幕而来 我将设置第 1 个窗口,显示在 0,0 坐标。设置第 2 个窗口,显示在 1920,0 坐标。 预期行为就是第 1 个窗口显示在副屏 DisplayPort-0 上,第 2 个窗口显示在主屏 DisplayPort-1 上 其实现代码如下 public TestX11Window(int 窗口的 X 坐标确实被设置到 1920 上,且通过实际的屏幕显示内容也可以看到两个窗口被分别显示到两个显示器屏幕上 如果没有调用 XSetWMNormalHints 设置,则窗口显示过程中,收到的 ConfigureNotify

    30310编辑于 2025-08-06
  • 来自专栏又见苍岚

    Windows 11 拖拽窗口延时问题解决方案

    莫名其妙更新到 Win 11 体验版后出现严重的拖拽窗口延时,深恶痛绝。本文记录解决方案。 现象 升级 Win 11 更新 KB5004745 补丁后拖拽窗口延时极高 拖一下窗口之后2分钟只能看着鼠标自己在那动,啥都干不了 主要是资源管理器的窗口,其他的一般不会 问题原因 Win11

    1.1K10编辑于 2022-08-05
  • 来自专栏DDD

    计数器算法

    《微服务-熔断机制》中提到了计数器,这篇详细学习一下计数器算法 之前的有次面试,碰到了计数器的的题目 Q:线上服务,设计一个拦截器,一个IP如果短时间内请求次数过多,就屏蔽 A:使用map,key为ip 计数器计数器法是限流算法里最简单也是最容易实现的一种算法。比如我们规定,对于A接口来说,我们1分钟的访问次数不能超过100个。 每一个格子都有自己独立的计数器counter,比如当一个请求 在0:35秒的时候到达,那么0:30~0:39对应的counter就会加1。 那么滑动窗口怎么解决刚才的临界问题的呢? 我再来回顾一下刚才的计数器算法,我们可以发现,计数器算法其实就是滑动窗口算法。只是它没有对时间窗口做进一步地划分,所以只有1格。 总结 计数器 VS 滑动窗口 计数器算法是最简单的算法,可以看成是滑动窗口的低精度实现。滑动窗口由于需要存储多份的计数器(每一个格子存一份),所以滑动窗口在实现上需要更多的存储空间。

    1.8K31发布于 2021-03-23
  • 来自专栏Java架构师必看

    MySQL计数器、每日计数器表设计与调优

    计数器 如果应用在表中保存计数器,则在更新计数器时可能碰到并发问题。计数器表在Web应用中很常见。可以用这种表缓存一个用户的朋友数、文件下载次数等。 创建一张独立的表存储计数器通常是个好主意,这样可使计数器表小且快。使用独立的表可以帮助避免查询缓存失效,并且可以使用本节展示的一些更高级的技巧。 应该让事情变得尽可能简单,假设有一个计数器表,只有行数据,记录网站的点击次数: CREATE TABLE hit_counter ( cnt INT UNSIGNED NOT NULL ) 要获得更高的并发更新性能,也可以将计数器保存在多行中,每次随机选择一行进行更新。 另外一个常见的需求是每隔一段时间开始一个新的计数器(例如,每天一个)。

    2.9K20发布于 2021-05-14
  • 来自专栏软件测试经验与教训

    LR windows 计数器

    object(对象) Counters(计数器名称) Description(描述) 参考值 Memory Available Mbytes 可用物理内存数。 需要关注该计数器的趋势变化。 Processor Time超过90%,那么很可能存在处理器瓶颈 Thread ContextSwitches/sec 实例化inetinfo和dllhost进程,如果要增加线程字节池的大小,应该监视这三个计数器

    1.6K60发布于 2018-05-15
  • 来自专栏程序员

    VHDL实现计数器

    10进制同步计数器 LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY cnt10 IS cnt<=cnt+1; END IF; END IF; END PROCESS; co<=temp1; data<=cnt; END cnt10_behavior; 16进制异步计数器

    2.3K10发布于 2019-05-25
  • 来自专栏林德熙的博客

    dotnet X11 窗口之间发送鼠标消息 模拟鼠标输入

    本文记录我阅读 Avalonia 代码过程中所学习到的在 X11窗口之间发送鼠标消息,可以跨进程给其他进程的窗口发送鼠标消息,通过此方式可以实现模拟鼠标输入 直接使用 XSendEvent 给指定窗口发送消息即可 比如有两个窗口,可以通过此方式让窗口 2 收到鼠标消息时,自动转发给窗口 1 上,核心代码如下 var handle = XCreateWindow(display, rootWindow, 0, 0, 其实在这里我不确定 X11窗口 IntPtr 是否称为指针是合适的。 但行为上看起来和 Windows 下的句柄非常类似 如以下的测试代码,启动自身作为新的进程,然后传入当前进程的窗口,让另一个进程获取当前进程的窗口,接着测试在另一个进程将鼠标消息发送到当前进程上 var ec8242cfe08a0eb23ba637c655083fceb0a8edb3 获取代码之后,进入 DikalehebeekaJaqunicobo 文件夹,即可获取到源代码 通过以上测试可以发现 X11

    66510编辑于 2024-05-16
  • 来自专栏林德熙的博客

    dotnet 设置 X11 建立窗口之间的父子关系

    在 X11 里面有和 Win32 类似的窗口之间的关系机制,如 Owner-Owned 关系,以及 Parent-Child 关系。 被拥有的窗口永远显示在拥有它的那个窗口的前面。 当所有者窗口最小化时,它所拥有的窗口也会被隐藏。 当所有者窗口被销毁时,它所拥有的窗口也会被销毁。 告诉消息循环需要处理业务逻辑 // 发送 ClientMessage 是一个合理的方式,根据官方文档说明,可以看到这是没有明确定义的 // https://www.x.org/releases/X11R7.5 | SetWindowValuemask.ColorMap | SetWindowValuemask.OverrideRedirect // [dotnet C# X11 开发笔记](https://blog.lindexi.com/post/dotnet-C-X11-%E5%BC%80%E5%8F%91%E7%AC%94%E8%AE%B0.html )

    68710编辑于 2024-05-17
  • 来自专栏用户7873631的专栏

    详解:21 计数器

    写,代表终止了哈 counter-increment意思:累加,也就是说每次加几,不写默认+0 content意思:内容,也就是说文字 counter意思:用来显示计数器的结果的啊 记住:counter { counter-increment: section;/*懂了每次加0*/ content: "第"counter(section)"章";/*获取计数器数据把

    1.2K10发布于 2020-10-28
  • 来自专栏林德熙的博客

    dotnet 在 UNO 里获取 X11 窗口指针的方法

    此时我需要获取到 UNO 应用的窗口的 X11 窗口指针,如此即可调用 X11 平台相关逻辑对 UNO 窗口执行一些交互 本文以下的方法需要用到反射 通过阅读 UNO 的源代码,可以看到 Window 在 X11 平台下是 Uno.WinUI.Runtime.Skia.X11.X11Window 类型。 里面的 Window 属性即可获取到 X11 窗口指针 反射的代码如下 var type = MainWindow.GetType(); var nativeWindowPropertyInfo ; // Uno.WinUI.Runtime.Skia.X11.X11Window var x11WindowType = x11Window.GetType(); ; Console.WriteLine($"Uno 窗口句柄 {x11WindowIntPtr}"); 通过以上方式即可获取到 X11 窗口指针 但是必须说明的是,使用反射获取,也许在后续版本将会失效

    36110编辑于 2024-05-23
领券