捉虫大师 捉虫大师
3年前
一种极致性能的缓冲队列
本文已收录https://github.com/lkxiaolou/lkxiaolou欢迎star。背景在多线程下的生产者消费者模型中,需求满足如下情况:对生产者生产投递数据的性能要求非常高多个生产者,单个(多个也可以,本文只介绍单个的情况)消费者当消费者跟不上生产者速度时,可容忍少部分数据丢失生产者是单条单条地生产数据举个日志采集的例子,日志在不同的
Wesley13 Wesley13
3年前
JAVA线程池ThreadPoolExecutor与阻塞队列BlockingQueue .
从Java5开始,Java提供了自己的线程池。每次只执行指定数量的线程,java.util.concurrent.ThreadPoolExecutor就是这样的线程池。以下是我的学习过程。首先是构造函数签名如下:\java\viewplain(http://my.oschina.net/u/1398304/admin/)
Stella981 Stella981
3年前
Redis基本操作——队列 List(原理篇)
Redis基本操作——List(原理篇)  学习过数据结构的同学,一定对链表(LinkedList)十分的熟悉。相信我们自己也曾经使用过这种数据结构。  链表分为很多种:单向链表,双向链表,循环链表,块状链表\1(https://www.oschina.net/action/GoToLink?url
Stella981 Stella981
3年前
Python3 中 的 绝对导入 与 相对导入
背景:在学习tf的时候,看到了from__future__importabsolute_import,所以登记学习一下。概览:一般模块导入规则:importxxx时搜索文件的优先级如下:1.在当前目录下搜索该模块2.在环境变量PYTHONPATH中指定的路径列表中依次搜索3.
Stella981 Stella981
3年前
RabbitMQ通过HTTP API获取队列消息内容
RabbitMQ通过HTTPAPI获取队列消息内容背景为配合公司数据中台建设,我们对公司内部使用的mysqlbinlog数据分发中间件(现已开源:https://gitee.com/kekingcn/kekingbinlogdistributor(https://gitee.co
Stella981 Stella981
3年前
JS微任务 宏任务,Promise、setTimeout、setImmediate运行顺序实测
结论如下1.虽然理论上应当先运行Promise,再运行setTimeout。但是由于历史版本或使用polyfill,使得Promise未必优先运行。2.setImmediate未必比setTimeout早运行3.在最新浏览器中Promise会早于事件冒泡运行,在设计框架时应考虑这一情况以下是实测情况\
Stella981 Stella981
3年前
Cloud Native 是未来开发应用的趋势
目前,越来越多的企业已经在大规模开始拥抱云,在云环境开发应用、部署应用、发布应用。CloudNative(云原生)是以云架构为优先的应用开发模式。那么,为什么说CloudNative是未来开发应用的趋势呢?本文一一解答。什么是CloudNativeCloudNative(国内译为“云原生”),最早是
Stella981 Stella981
3年前
Log4j格式化符号%详解
符号说明%d:输出日志时间时的当前时间,默认格式为ISO8601,可以在其后指定格式,如:%d{yyyyMMddHH:mm:ss.SSS}。%p(或%level):输出日志信息的优先级,即ALL,TRACE,DEBUG,INFO,WARN,ERROR,FATAL,OFF。%r:输出自应用程序启动到输出该lo
API 小达人 API 小达人
1年前
改变数字经济的 10 大 API 趋势
根据谷歌2021年API经济状况报告,“公司报告称他们2021年主要优先事项包括关注API安全与治理(50%)、API增长和管理(41%)、投资建立开发者社区(38%)、通过API货币化产生收入(31%),使更多服务和数据公开可用(31%),以及增加对API操作和监控的投资(20%)”
绣鸾 绣鸾
1年前
Canary Mail for Mac(电子邮件客户端) v4.30中文版
是一款备受赞誉的智能邮件软件,它不仅提供了一整套强大的功能,如编写邮件、设置任务优先级、阻止垃圾邮件等等,而且与其他类似软件相比,保护用户隐私的措施更加可靠。具体来说,CanaryMAIl具有以下特点:AI功能:CanaryMAIl通过AI辅助写邮件,能让