1194129822

1194129822

V2EX 第 341017 号会员,加入于 2018-08-14 12:00:20 +08:00
今日活跃度排名 10138
根据 1194129822 的设置,主题列表被隐藏
二手交易 相关的信息,包括已关闭的交易,不会被隐藏
1194129822 最近回复了
6 小时 15 分钟前
回复了 HarrisonLee 创建的主题 奇思妙想 学 Java 还不如学 C++
那你看看 linux 之父怎么评价 C++的,你想转就转咯。你以为学了 C++就懂了 OS ,网络协议,数据库吗
2 天前
回复了 sazima 创建的主题 程序员 Python 开发转 Java 开发,好转吗
在 V 站不是明知故问吗? V 站食物链顶级语言 golang ,Java 在最底层,不如 Python 。据说 golang 简单,不倦,工资高。
16 天前
回复了 qwerzl 创建的主题 Python Pycon 新项目: Pyscript
@westoy 你去查一下 js 为什么叫 js ,js 的商标都是 sun 的,如果不是微软的垄断,今天浏览器运行的应该是 java 。当然还有乔帮主用 h5 杀了后来者 flash ,这都是后话了。这个世界从来都不是技术主导的世界。
kotlin 很多功能,java 高版本也有了。stream 惰性计算比 kotlin 增强集合其实更好,只是 api 可能没那么友好。感觉 kotlin 好用的语法糖也就闭包和扩展了,let ,apply ,with 这些高阶函数挺好用的。
35 天前
回复了 xingyuc 创建的主题 微信 小程序账户突然封了,还不接受申诉
@Chism 何不食肉糜?你知道开发 App 的成本多高吗?除了头部公司,谁还开发 App ?
37 天前
回复了 ojh 创建的主题 问与答 关于异步非阻塞中的非阻塞的疑惑
NIO 也有阻塞模式,所以这里概念的确很杂。AIO 概念上就是非阻塞的,但是背压问题,linux 没有实现。
37 天前
回复了 ojh 创建的主题 问与答 关于异步非阻塞中的非阻塞的疑惑
异步是异步(线程),阻塞是阻塞( IO ,锁等),这两个不是一个概念的东西。异步可以阻塞,只是在 JS 里,没有阻塞的概念。我记得不错的话,Java11 的 HttpClient 依然使用的是阻塞 IO, 底层线程池是 ForkJoinPool.commonPool(),这个线程池只有 nCpu-1 个线程,适合做的是内存计算问题。而且是 Stream ,CompletableFuture ,CHM 所用到的线程池。所以 Java11 HttpClient 虽然 API 设计很好,其实在服务端生产价值有限。非阻塞的 HttpClient ,如 Spring WebFlux 的 WebClient ,一个线程发出几千个请求不是问题。
37 天前
回复了 ojh 创建的主题 问与答 关于异步非阻塞中的非阻塞的疑惑
单线程没法实现异步。异步就相当于无限缓冲区的生产者消费者模式,所以才有流量控制,背压。这里面设计多线程,io ,网络协议问题太复杂。JS 的单线程异步,实际上是执行引擎的单线程,并不是没有 io 线程。
阻塞不阻塞是针对 IO 和网络协议的,OIO 是阻塞的,NIO ( epoll 、),AIO ( IOCP )则不(全)是阻塞的。如果 httpclient 使用的 NIO ,则不会阻塞线程,一个线程可以创建几万连接都可以,一个连接也可以发出很多请求,但是 http 线头阻塞( HOL )问题,一个 HTTP 连接发出的请求要顺序返回,所以一般一个连接就发送一个请求,所以从协议看 http 是一个同步的协议。
netty 非阻塞就是 epoll 模型,epoll 通过线程的 loop ( selector 线程)来检查是否有 io 就绪事件。你现在这些困惑就是对这块系统知识不了解而已,你学一下多线程,netty 自然就能有答案了。而异步的 Servlet 让连接和处理的线程分开了,和这里并不是一个概念。
所有不在 Netty eventloop 线程处理 OIO ( JDBC )当然就不会有阻塞。异步 Servlet 变得和 eventloop 有点相似,让连接和业务分开了,但是处理 OIO(JDBC)之类还是会阻塞业务线程的。
所以全链路异步基本很难实现的,现实是消费者速度永远更不上生产者,也不能有无限缓冲区,所以才有了线程池的拒绝策略。异步并不能提高处理速度,应该说其实降低了一点速度,但是提高了资源的利用率。
关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1823 人在线   最高记录 5497   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 10ms · UTC 17:09 · PVG 01:09 · LAX 10:09 · JFK 13:09
Developed with CodeLauncher
♥ Do have faith in what you're doing.