JAVA
文章平均质量分 73
编程宝库
关注软件工程实践,百度架构师。
展开
-
Java将增加虚拟线程,挑战Go协程
我们知道 Go 语言最大亮点之一就是原生支持并发,这得益于 Go 语言的协程机制。一个 go 语句就可以发起一个协程 (goroutin)。协程本质上是一种用户态线程,它不需要操作系统来进行调度,而是由用户程序自行管理和调度。它寄存于线程中,系统开销极小,可以显著的提高性能和并发能力。使用协程的优点是运行效率高、编程简单、结构清晰。目前,原生支持协程的语言不是很多。Oracle 本周提交的一份JDK增强建议(JEP)草案要求将虚拟线程作为Java标准版的一部分进行预览。虚拟线程类似于 Go 语言的协程原创 2021-11-19 09:21:03 · 468 阅读 · 0 评论 -
Oracle JDK下载登录 无需注册Oracle账号
我们在下载Oracle JDK的时候,Oracle要求在下载JDK前,你必须同意 Oracle 许可协议,然后使用 Oracle 账号登录后方可下载,整个下载过程非常繁琐。为了省却这些繁杂的手续,有些网站提供了共享Oracle账号,可以直接使用,所有账号都已经实际验证。Oracle JDK下载 免注册账号地址:http://java.sousou88.com/spec/tool_account.html...原创 2020-12-22 13:28:16 · 3634 阅读 · 3 评论 -
Java内存模型分析
本文首发于个人公众号:卯时卯刻,文章地址为:Java内存模型深入分析0x01 内存模型产生的历史背景曾经,计算机的世界远没有现在复杂,那时候的cpu只有单核,我们写的程序也只会在单核上按代码顺序依次执行,根本不用考虑太多。后来,随着技术的发展,cpu的执行速度和内存的读写速度差异越来越大,人们很快发现,如果还是按照代码顺序依次执行的话,cpu会花费大量时间来等待内存操作的完成,这造成了cpu的巨大浪费。为了弥补cpu和内存之间的速度差异,计算机世界的工程师们在cpu和内存之间引入了缓存,虽然转载 2020-12-07 17:04:19 · 165 阅读 · 0 评论 -
JDK下载应该选择哪个版本?教你选择最好的JDK版本
我们在使用Java编程的时候,通常绕不开Java JDK使用。所以,我们下载Java JDK的时候,就会面临着诸多选择。不仅要在多家知名厂商实现的JDK中做出选择,还要在特定JDK中选择哪个迭代版本。这对于多年使用Java进行开发的“老”程序员,自然不是问题,因为他们都会固定的使用某个特定的成熟版本,一般不会轻易改变。但是对于新开发者来讲,就会无从下手,实在不知道选择哪个厂商的发布的JDK,也不知道该选择哪个版本。是使用Oracle JDK,OpenJDK还是AdoptJDK?是使用JDK15,JDK8还是转载 2020-11-23 13:45:45 · 32658 阅读 · 1 评论 -
JDK下载哪家快?推荐3个国内java jdk镜像站
我们在日常进行Java开发中,可能都会遇到下载JDK,但是Oracle官方的下载条件非常苛刻,需要手动同意license。历史版本需要手动登录,所以有时候不得不先进行注册,然后才能下载。更麻烦的是下载地址位于国外,下载速度慢。其它OpenJDK分发版中,AdoptOpenJDK算是半官方了,有良好的API,直接下载就可以,但是它是从GitHub上下载的,S3的速度又很慢,所以下载速度也不快,有时候还会404。其实国内已经有了相关的镜像网站,不仅内容全,而且速度快。我这里收集了常用的3个镜像站:1、清原创 2020-11-16 14:26:42 · 81210 阅读 · 9 评论 -
怎么实现在海量分库分表数据中进行分页查询
有些头部电商的数据规模达到一定程度之后,比如淘宝或者美团的日订单量可能有几千万。在这样数据规模下,数据库面临很大的压力。通常,当数据库达到一定规模后需要对数据进行切分,对数据库或者表进行切分,有的需要纵向切分,有的需要横向切分。伴随着库表切分之后,对于数据库的查询就增加很大的难度,比如我们常会遇到分页查询。通常我们把分表使用的字段称作shardingkey,比如订单表按照用户ID,那么如果查询条件中不带用户ID查询怎么做分页?一、唯一主键一般我们数据库的主键都是自增的,那么分表之后主键冲突的问题就是转载 2020-11-09 17:32:45 · 693 阅读 · 0 评论 -
Java才是世界上最好的语言,完全可以替代C++
高频交易高频交易是指从那些人们无法利用的极为短暂的市场变化中寻求获利的计算机化交易,比如,某种证券买入价和卖出价差价的微小变化,或者某只股票在不同交易所之间的微小价差。在高频交易中,自动化应用程序每天处理几亿个市场信号,在全球各地的交易所发送上千万个订单。为了保持业务竞争力,响应时间必须始终保持在微秒级,尤其是在黑天鹅异常事件等高峰期。高频交易系统的典型系统结构一般是这样:金融交易信号将转换成内部市场数据格式(交易使用TCP、UDP等各种协议)和多种格式(如二进制、SBE、JSON、FIX等)。然后原创 2020-11-05 22:37:55 · 1479 阅读 · 0 评论