1.控制并发线程数的Semaphore Semaphore(信号量)是用来控制同时访问特定资源的线程数量,它通过协调各个线程,保证合理的使用公共资源。 线程可以通过acquire()方法来获取信号量的许可,当信号量中没有可用的许可的时候,线程阻塞,直到有可用的许可为止。线程可以通过release() ...
分类:
其他好文 时间:
2021-06-18 19:20:53
阅读次数:
0
前言 昨天大概理了下思路,觉得目前最合适的事,就是手写一个rpc框架,因为只有创造、创作,才让我觉得生活更有激情,而且做具体的事,也会让生活更充实、更真实,会让你不那么迷茫。 如果有同样感受的小伙伴,可以试着找一些具体的事来做一做,这样你也就不再那么浮躁了。 好了,废话少说,我们直接正文。 手写RP ...
分类:
其他好文 时间:
2021-06-17 17:16:52
阅读次数:
0
在黄金系列中,我们介绍了并发中一些问题,比如死锁、活锁、线程饥饿等问题。在并发编程中,这些问题无疑都是需要解决的。所以,在铂金系列文章中,我们会从并发中的问题出发,探索Java所提供的锁的能力以及它们是如何解决这些问题的。
作为铂金系列文章的第一篇,我们将从Lock接口开始介绍,因为它是Java中锁... ...
分类:
编程语言 时间:
2021-06-16 18:08:25
阅读次数:
0
1、解决DOS攻击生产案例:根据web日志或者或者网络连接数,监控当某个IP 并发连接数或者短时内PV达到100,即调用防火墙命令封掉对应的IP,监控频 率每隔5分钟。防火墙命令为:iptables -A INPUT -s IP -j REJECT 根据并发链接数 编写脚本: root@gitlab ...
分类:
其他好文 时间:
2021-06-16 17:47:42
阅读次数:
0
蓝牙通信开发流程 为了让两个设备上的两个应用程序之间建立连接,你必须同时实现服务端和客户端机制。 服务端:使用的是 BluetoothServerSocket 类,并且调用的是 listenUsingRfcommWithServiceRecord(string,UUID) 方法来获得一个Blueto ...
分类:
移动开发 时间:
2021-06-16 17:45:58
阅读次数:
0
一、Python中RPC框架 自带的:SimpleXMLRPCServer(数据包大,速度慢) 第三方:ZeroRPC(底层使用ZeroMQ和MessagePack,速度快,响应时间短,并发高),grpc(谷歌推出支持夸语言) 二、SimpleSMLRPCServer使用 服务端 from xmlr ...
分类:
其他好文 时间:
2021-06-16 17:43:15
阅读次数:
0
1. 编程模型 接收方: <1> 创建DatagramSocket类型的对象,并提供端口号 <2> 创建DatagramPacket类型的对象,并提供缓冲区 <3> 通过Socket接收数据内容,存放到Packet中,调用receive方法 <4> 关闭Socket 发送方: <1> 创建Datag ...
分类:
编程语言 时间:
2021-06-15 18:31:17
阅读次数:
0
概述 流经网络的数据总是具有相同的类型:字节,这些字节如何传输主要取决于我们所说的网络传输。用户并不关心传输的细节,只在乎字节是否被可靠地发送和接收 如果使用 Java 网络编程,你会发现,某些时候当你需要支持高并发连接,随后你尝试将阻塞传输切换为非阻塞传输,那么你会因为这两种 API 的截然不同而 ...
分类:
Web程序 时间:
2021-06-13 10:28:04
阅读次数:
0
一、JVM 二、Java集合 三、Java多线程并发 四、Java基础 五、Spring原理 六、微服务 七、Netty与RPC 八、网络 九、日志 十、RabbitMQ 十一、MongoDB 十二、设计模式 十三、负载均衡 十四、数据 十五、Java算法 十六、数据结构 十七、Hadoop 十八、 ...
分类:
编程语言 时间:
2021-06-13 10:00:32
阅读次数:
0
欢迎来到《并发王者课》,本文是该系列文章中的第12篇。
在上篇文章中,我们介绍了死锁的概念及其原因,本文将为你介绍的是几种常见的死锁预防策略。 ...
分类:
编程语言 时间:
2021-06-13 09:50:48
阅读次数:
0