• Quartz.NET集成UI版

    Quartz.NETQuartz.NET是NET的开源作业调度系统。Quartz.NET是一个功能齐全的开源作业调度系统,可用于从最小的应用程序到大型企业系统。Quartz.NET目前支持NETFramework和NETCore。Quartz.NET中文文档完善文档地址Quartz.NET集成UI版目前开源作业调度系统还有Hangfire可以选择。其他开源作者制作的带UI的Quartz.NET系统…
  • Linux等待队列(Wait Queue)

    1.Linux等待队列概述Linux内核的等待队列(WaitQueue)是重要的数据结构,与进程调度机制紧密相关联,可以用来同步对系统资源的访问、异步事件通知、跨进程通信等。在Linux中,等待队列以循环链表为基础结构,包括两种数据结构:等待队列头(waitqueuehead)和等待队列元素(waitqueue),整个等待队列由等待队列头进行管理。下文将用内核源码(基于Linuxkernel5.2…
  • Spring源码系列(四)--spring-aop是如何设计的

    简介spring-aop用于生成动态代理类(底层是使用JDK动态代理或cglib来生成代理类),搭配spring-bean一起使用,可以使AOP更加解耦、方便。在实际项目中,spring-aop被广泛用来实现日志、权限、事务、异常等的统一管理。上一篇博客(Spring源码系列(三)--spring-aop的基础组件、架构和使用)简单讲了spring-aop的基础组件、架构和使用方法,本文将开始研究…
  • python+pymysql访问mysql数据库

    今天跟大家分享两种场景的python连接MySQL方法;场景一:连接远程MySQL 首先,安装pymysql;在命令行执行pipinstallpymysql指令。 然后,导入pymysql;  importpymysql 具体实现步骤的代码及注释如下:#创建远程数据库连接conn=pymysql.connect(user='数据库用户名',#数据库用户名host='数据库IP',#数据库IPpor…
  • Linux嵌入式开发基础学习-第二节

    第二节:软件基础知识嵌入式系统的基础是硬件,软件是嵌入式系统的灵魂。软件是由程序和文档构成的,程序是一组按照特定结构组织的指令和数据集合。软件可以分成系统软件和应用软件,以及介于二者之间的中间件软件。系统软件是使用计算机提供的基本功能,面向通用领域;应用软件是针对某种特殊需求设计的,一般来说具有专门的功能。软件的另一个组成部分是文档,常见的软件文档有开发文档和用户文档,开发文档面向开发人员,用户文…
  • Linux嵌入式开发基础学习-第一节

    第一节:计算机组成原理  计算机由硬件系统和软件系统两大部分组成,按照功能又可以划分为指令系统、存储系统、输入输出系统等,从存储结构划分,可以分为冯诺依曼结构和哈佛结构。  冯·诺伊曼结构是以数学家JohnVonNeumann的名字命名,该结构把计算机分成了运算器、控制器、存储器、输入设备和输出设备五个部分,工作流程是从存储器取出指令,由运算器运算指令,控制…
  • Solon详解(六)- Solon的校验扩展框架使用与扩展

    Solon详解系列文章:Solon详解(一)-快速入门Solon详解(二)-Solon的核心Solon详解(三)-Solon的web开发Solon详解(四)-Solon的事务传播机制Solon详解(五)-Solon扩展机制之SolonPluginSolon详解(六)-Solon的校验扩展框架使用与扩展在业务的实现过程中,尤其是对外接口开发,我们需要对请求进行大量的验证并返回错误状态码和描述。lom…
  • Kubernetes 服务部署最佳实践(一) ——如何更好地设置 Request 与 Limit

    如何为容器配置Request与Limit?这是一个即常见又棘手的问题,这个根据服务类型,需求与场景的不同而不同,没有固定的答案,这里结合生产经验总结了一些最佳实践,可以作为参考。所有容器都应该设置requestrequest的值并不是指给容器实际分配的资源大小,它仅仅是给调度器看的,调度器会"观察"每个节点可以用于分配的资源有多少,也知道每个节点已经被分配了多少资源。被分配资源的大小就是节点上所有…
  • String字符串的最大长度是多少?

    在学习和开发过程中,我们经常会讨论short,int和long这些基本数据类型的取值范围,但是对于String类型我们好像很少注意它的“取值范围”。那么对于String类型,它到底有没有长度限制呢?其实String类型的对象,他们是有长度限制的,String对象并不能“存储”无限长度的字符串。关于String的长度限制要从编译时限制和运行时限制两方面考虑。编译期限制有JVM虚拟机相关知识的同学肯定…
  • 「面向 offer 学算法」笔面试大杀器 -- 单调栈

    目录前言单调栈初入茅庐小试牛刀打怪升级出师试炼前言单调栈是一种比较简单的数据结构。虽然简单,但在某些题目中能发挥很好的作用。最近很多大厂的笔试、面试中都出现了单调栈的题目,而还有不少小伙伴连单调栈是什么都不了解,因此老汪专门写了这篇文章,希望对你们有所帮助。老规矩,先上一道题给大家看看单调栈能解决什么样的问题,这题是2020年猿辅导(K12教育的独角兽,研发岗白菜价40W起步,不加班高福利,想要内…
  • 使用zabbix监控sql server的发布订阅

    (一)背景个人在使用sqlserver时,用到了sqlserver的发布订阅来做主从同步,类似MySQL的异步复制。在发布订阅环境搭建完成后,最重要的就是如何监控复制的状态了,sqlserver提供了复制监视器来方便我们监控复制状态、复制延迟等信息,总体来说,非常好用,复制监视器的界面如下,能够很清楚的看到哪些失败了,哪些有延迟。然而,在运维过程中发现,我们不可能一直盯着复制监视器,甚至每天看一次…
  • 详解 Python 的二元算术运算,为什么说减法只是语法糖?

    原题|UnravellingbinaryarithmeticoperationsinPython作者|BrettCannon译者|豌豆花下猫(“Python猫”公众号作者)声明|本翻译是出于交流学习的目的,基于CCBY-NC-SA4.0授权协议。为便于阅读,内容略有改动。大家对我解读属性访问的博客文章反应热烈,这启发了我再写一篇关于Python有多少语法实际上只是语法糖的文章。在本文中,我想谈谈二…
  • JS数组去重的实现

    其实数组去重的实现就分为两大类利用语法自身键不可重复性利用循环(递归)和数组方法使用不同的api来处理。注意️:下列封装成方法的要在函数开始增加类型检测,为了让去重的实现代码更加简单易懂,封装时我会省略类型检测functionnoRepeat(){if(!Array.isArray(arr)){console.log('typeerror!')return}//XXX执行代码}利用键不可重复性Se…
  • Kubernetes 存活、就绪探针

    在设计关键任务、高可用应用程序时,弹性是要考虑的最重要因素之一。当应用程序可以快速从故障中恢复时,它便具有弹性。云原生应用程序通常设计为使用微服务架构,其中每个组件都位于容器中。为了确保Kubernetes托管的应用程序高可用,在设计集群时需要遵循一些特定的模式,其中有“健康探测模式”。应用高可观察性原则(HOP)可确保您的应用程序收到的每个请求都能及时找到响应。TheHighObservabil…
友情链接