Stella981 Stella981
3年前
Qt的多线程编程注意事项
QT总的来说是一个易学易用的库,但是QT的多线程使用确实容易犯错,尤其是结合上异步的网络访问,谁用谁知道。我觉得核心是一句话,QThread要当作线程控制块用,不要以为派生一个QThread的子类,里面的东西都跑在新的线程里了,只有run()里的是这样。下面这篇文章我觉得讲的很好,深入解析QT的线程用法,文章有点长,但是值得一读。原文在htt
捉虫大师 捉虫大师
3年前
Sentinel-Go 源码系列(二)|初始化流程和责任链设计模式
上节中我们知道了SentinelGo大概能做什么事情,最简单的例子如何跑起来其实我早就写好了本系列的第二篇,但迟迟没有发布,感觉光初始化流程显得有些单一,于是又补充了责任链模式,二合一,内容显得丰富一些。初始化流程初始化做了什么SentinelGo初始化时主要做了以下2件事情:通过各种方式(文件、环境变量等)载入全局配置启动异步的定时任务或服务
Stella981 Stella981
3年前
RabbitMQ实战:界面管理和监控
本系列是「RabbitMQ实战:高效部署分布式消息队列」书籍的总结笔记。上一篇总结了可能出现的异常场景,并对RabbitMQ提供的可用性保证进行了分析,在出现服务器宕机后,仍然可以正常服务。另外,需要尽快恢复异常的服务器,重新加入集群,推送未消费的消息,通过监控可第一时间接收到错误并进行处理。另外,我们想主动了解消息堆积和消费的情况,以及服务器节
Stella981 Stella981
3年前
Netty精粹之设计更快的ThreadLocal
Netty是一款优秀的开源的NIO框架,其异步的、基于IO事件驱动的设计以及简易使用的API使得用户快速构建基于NIO的高性能高可靠性的网络服务器成为可能。Netty除了使用Reactor设计模式加上精心设计的线程模型之外,对于线程创建的具体细节也进行了重新设计,由于Netty的应用场景主要面向高并发高负载的场景下,这也是Netty能够大显身手的场景,因此,
Stella981 Stella981
3年前
Notification使用详解之二:可更新进度的通知
上次和大家分享了关于Notification的基础应用,包括简单的通知和自定义视图的通知。今天和大家分享一下如何实现一个可更新进度的通知。我们将会模拟一个下载任务,先启动一个线程负责模拟下载工作,在这个过程中更新进度信息,然后下载线程把最新的进度信息以消息的形式,发送到UI线程的消息队列中,最后UI线程负责根据最新的进度信息来更新进度通知的UI界面。
Wesley13 Wesley13
3年前
JSON 格式详 (转载)
简单地说,JSON可以将JavaScript对象中表示的一组数据转换为字符串,然后就可以在函数之间轻松地传递这个字符串,或者在异步应用程序中将字符串从Web客户机传递给服务器端程序。这个字符串看起来有点儿古怪,但是JavaScript很容易解释它,而且JSON可以表示比"名称/值对"更复杂的结构。例如,可以表示数组和复杂的对象,而不仅仅
Stella981 Stella981
3年前
Linux Centos下MySQL主从Replication同步配置(一主一从)
MySQL主从复制概念MySQL主从复制是指数据可以从一个MySQL数据库服务器主节点复制到一个或多个从节点。MySQL默认采用异步复制方式,这样从节点不用一直访问主服务器来更新自己的数据,数据的更新可以在远程连接上进行,从节点可以复制主数据库中的所有数据库或者特定的数据库,或者特定的表。 !(https://img2018.cnblogs.c
Stella981 Stella981
3年前
Play Scala 开发技巧
在系统开发中,我们经常需要保护一些安全性较高的接口,限制这些接口每秒处理的请求数量。例如对于一个计算密集型接口,假设压测值是100rps,如果实际情况长期高于这个值,则会引起滚雪球效应,最终导致系统崩溃。下面我们一起来看看如何在Play中实现一个完全异步非阻塞的请求限速?本文代码已提交至 playcommunity(https://www.os
Stella981 Stella981
3年前
Kafka生产者发送消息的三种方式
Kafka是一种分布式的基于发布/订阅的消息系统,它的高吞吐量、灵活的offset是其它消息系统所没有的。Kafka发送消息主要有三种方式:1.发送并忘记2.同步发送3.异步发送回调函数下面以单节点的方式分别用三种方法发送1w条消息测试:方式一:发送并忘记(不关心消息是否正常到达,对返回结果不做任何判断处理)发送并忘记的方式本质上也
Wesley13 Wesley13
3年前
ActiveMQ
1前言前一篇介绍了JMS有两种通信模型,一种是点对点通信,另一种是发布/订阅模型,本篇将会继续探讨这两种模型。本篇文章需要按照严谨的实验顺序才能获得相同的结果,这是因为消息持久化和持久订阅这两个特性的原因,在文章结尾和下一篇文章会做解答。\\所有的实验在启动之前都必须到管理后台删除相关的队列或者topic,否则数据也可能不同\\在A