谁去过顽皮,谁去过尼斯? 圣诞老人为您提供Java 11建议!

有没有想过圣诞老人如何为世界各地的孩子们送上节日礼物? 有20亿个孩子,每个孩子都有自己的愿望清单,他会在24小时内完成。 这意味着每个孩子平均需要43微秒,他需要检查每个孩子是否顽皮或好。

您无需再怀疑了。 我会透露这个秘密。 他正在使用Java 11和具有超快执行速度的现代流ORM。

Java 11建议

尽管Santa的后备数据库既旧又慢,但他仍可以使用标准Java流和JVM内存技术来分析数据(微秒)。 圣诞老人的数据库包含两个表。 Child持有每一个孩子的世界, HolidayGift指定可用于生产圣诞老人的车间的所有项目。 一个孩子只能有一个愿望,例如哈希规则。

以流查看数据库

Speedment是一种基于流的现代ORM,它能够将关系数据库表视为标准Java流。 众所周知,只有好孩子才能得到礼物,因此区分顽皮的孩子和善良的孩子很重要。 使用以下代码可以轻松完成此操作:

var niceChildren = children.stream().filter(Child.NICE.isTrue()).sorted(Child.COUNTRY.comparator()) .collect(Collectors.toList());

该流将产生一长串列表,其中仅包含一直很好的孩子。 为了使圣诞老人能够优化其送货路线,该列表按居住国家/地区排序。

参加儿童和假期礼物

该列表似乎不完整。 圣诞老人如何跟踪向谁送的礼物? 现在
HolidayGiftHolidayGift上用场。 由于有些孩子向圣诞老人提供了他们的愿望清单,因此我们现在可以将两个表合并在一起,以构成一个包含所有好孩子及其礼物的完整列表。 包括没有任何希望的孩子是很重要的(他们会得到随机的礼物),因此我们加入了左联盟。

var join = joinComponent.from(ChildManager.IDENTIFIER).where(Child.NICE.isTrue()).leftJoinOn(HolidayGift.GIFT_ID).equal(Child.GIFT_ID).build(Tuples::of);

Speedment正在使用构建器模式创建Join<T>对象,然后可以反复使用该对象以创建具有类型元素的流
T 。 在这种情况下,它用于HolidayGift ChildHolidayGift 。 该gift_id仅包括gift_id并且匹配在gift_id字段中包含相同值的gift_id

这是圣诞老人交付所有包裹的方式:

join.stream().parallel() .forEach(SleighUtil::deliver);

可以看出,圣诞老人可以轻松运送所有由驯鹿携带的带有平行雪橇的包裹。

这将使流呈现为有效的SQL查询,但不幸的是,它还不足以及时完成。

使用JVM中的内存加速

现在到有趣的部分。 Santa正在激活Speedment中的JVM内存中加速组件,称为DataStore。 这可以通过以下方式完成:

var santasWorkshop = new ApplicationBuilder().withPassword("north-pole")// Activate DataStore.withBundle(DataStoreBundle.class).build();// Load a snapshot of the database into off-heap memorysantasWorkshop.get(DataStoreComponent.class).ifPresent(DataStoreComponent::load);

此启动配置是对应用程序唯一需要的调整。 以上所有流构造均保持不变。 启动应用程序时,数据库的快照被拉入JVM,并以堆外方式存储。 由于数据是堆外存储的,因此不会影响垃圾回收,并且数据量仅受可用RAM的限制。 由于圣诞老人正在使用云服务,因此无法阻止它加载TB的数据,并且可以轻松扩展其RAM。 现在,该应用程序将更快地运行一个数量级,Santa能够及时交付所有软件包。

使用In-JVM-Memory加速运行您自己的项目

如果您想亲自尝试数据库应用程序的速度,可以在此处找到一个Initializer。 只需输入所需的数据库类型(Oracle,MySQL,MariaDB,PostgreSQL,Microsoft SQL Server,DB2或AS400),您就会得到一个POM和一个为您自动生成的应用程序模板。

如果您需要更多帮助来设置项目,请查看Speedment
GitHub页面或浏览用户指南 。

s

感谢Julia Gustafsson和Carina Dreifeldt共同撰写本文。

翻译自: https://www.javacodegeeks.com/2018/12/naughty-nice-santa-gives-java-11-advice.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/345076.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

php时间格式函数,PHP函数之日期时间函数date()使用详解_php基础_脚本

$ttime();echo date("Y-m-d H:i:s",$t);第一个参数的格式分别表示:a - "am" 或是 "pm"A - "AM" 或是 "PM"d - 几日&#xff0c;二位数字&#xff0c;若不足二位则前面补零; 如: "01" 至 "31"D - 星期几…

【渝粤题库】广东开放大学 物业财税管理基础 形成性考核

选择题 题目&#xff1a;企业将资金以购买债券、提供借款或商业信用等形式出借给其他单位&#xff0c;这是一种&#xff08; &#xff09;的财务关系。 题目&#xff1a;&#xff08; &#xff09;是指买卖双方成交后&#xff0c;在双方约定的未来某一特定的时日才交割的交易市…

【渝粤题库】广东开放大学 统计基础 形成性考核

选择题 题目&#xff1a; 对某城市工业企业未安装设备进行普查&#xff0c;总体单位是&#xff08; &#xff09;。 选择一项&#xff1a; 题目&#xff1a; 某地"国内生产总值”这一统计指标属于&#xff08; &#xff09;。 选择一项&#xff1a; 题目&…

java无符号 uuid,java实现无符号数转换、字符串补齐、md5、uuid、随机数示例

package com.hongyuan.test;import java.security.messagedigest;import java.security.nosuchalgorithmexception;import java.util.random;import java.util.uuid;/** 杂项(无符号数转换&#xff0c;字符串补齐&#xff0c;md5,uuid,随机数)*/public class sundrytest {//转成…

【渝粤题库】广东开放大学 质量管理 形成性考核

​&#x1f449;关注我,看答案&#x1f448; 选择题 题目&#xff1a;可以通过哪些形式登陆学校的课程平台进行学习&#xff1f; 题目&#xff1a;以下关于课程勋章的说法&#xff0c;哪些是“正确”的&#xff1f; 题目&#xff1a;在“疑难解答区”发帖时&#xff0c;哪种类型…

play框架配置 拦截器_如何使用Play框架为https配置SSL证书

play框架配置 拦截器我花了几个小时试图使它起作用&#xff0c;最后&#xff0c;问题是我自己没有使用keytool生成CSR&#xff08;证书请求&#xff09;。 当我尝试通过https访问Play时&#xff0c;我一直收到此错误&#xff1a; javax.net.ssl.SSLPeerUnverifiedException&a…

【渝粤题库】陕西师范大学100141大学英语(三)作业 (专升本、高起本)

交际与对话 针对每个对话中未完成的部分有4个选项&#xff0c;请从A、B、C、D四个选项中选出正确选项。 a. What do you think of the speech given by Professor Smith? b. . But I’m not particularly interested in the topic. A. Let me think about it. B. Not bad. C.…

webmin升级php,Webmin php-lib.pl修改

我已经将PHP版本更新到5.5.26。使用PHP 5.4&#xff0c;我使用FCGI的Apache配置是&#xff1a;AddHandler fcgid-script .phpAddHandler fcgid-script .php5使用新版本的PHP我需要把其他配置工作&#xff1a;SetHandler fcgid-script没关系&#xff0c;它的工作。我的问题是与W…

【渝粤题库】陕西师范大学151211 税法与纳税会计 作业(专升本)

《税务与纳税会计》作业 一、单选题 以下关于纳税主体的表述中正确的是&#xff08; &#xff09;。 A. 纳税会计纳税主体和财务会计中的“会计主体”相同 B. 会计主体都是纳税主体 C. 纳税主体不一定是会计主体 D. 纳税主体一定是会计主体 下列项目中属于纳税人权利的是&…

java代码上传exel,excle上传服务器并解析!求excel上传到服务器的java代码

如何将数据上传给服务器医嘱以形式发送过来&#xff1f; 办法有很多&#xff0c;最简单的&#xff0c;就是在机器里&#xff0c;建立2个数据库A,B&#xff0c;假如A是外务器。 在数据库中&#xff0c;以A数据库做发布&#xff0c;让B数据库订阅&#xff0c;弄好以后&#xff0c…

Java中的Fork / Join框架的简要概述

Fork / Join框架是使用并发分治法解决问题的框架。 引入它们是为了补充现有的并发API。 在介绍它们之前&#xff0c;现有的ExecutorService实现是运行异步任务的流行选择&#xff0c;但是当任务同质且独立时&#xff0c;它们会发挥最佳作用。 运行依赖的任务并使用这些实现来组…

【渝粤题库】陕西师范大学163106旅游心理学 作业【专升本】

陕西师范大学 内 部 题 库 教育 &#xff08;yuyueshool&#xff09; 编制 陕西师范大学 内 部 题 库 教育 &#xff08;yuyueshool&#xff09; 编制 《旅游心理学》作业 一、单选题 1、旅游心理学是心理学的一个分支学科,这句话正确与否&#xff1f;&#xff08; &#x…

【渝粤题库】陕西师范大学164204 供应链与物流管理 作业

《供应链与物流管理》作业 一、单选题 1、是围绕核心企业&#xff0c;通过对信息流、物流、资金流的控制&#xff0c;从采购原材料开始&#xff0c;制成中间产品以及最终产品&#xff0c;最后由销售网络把产品送到消费者手中的将供应商、制造商、分销商、零售商、直到最终用户…

matlab 球坐标绘图,MATLAB绘制地图

1使用向量绘制地图1.1绘制全球海岸线向量数据可以表示一个地图。这种向量存在的形式是一系列的经纬度或投影坐标对&#xff0c;它们代表一个点集、一个线条或者多边形。例如&#xff0c;描绘出行政区域边界的点、公路系统、城市的中心或者以上三个集合放在一起&#xff0c;都可…

【渝粤题库】陕西师范大学165210 国际人力资源管理 作业(专升本)

一、【单项选择题】 1.以下属于道林观点的是&#xff08; &#xff09; A.更多的事物 B.更复杂的管理 C.考虑更多的人力资源因素 D.存在高瞻远瞩的考虑、较大的范围与活动等差异 2.管理人员母国化策略属于&#xff08; &#xff09; A.本国中心模式 B.多中心模式 C.全能模式 D.…

【渝粤题库】陕西师范大学200371 拓扑学 作业 (专升本、高起本)

《拓扑学》作业 单项选择 1&#xff0e;关于笛卡儿积&#xff0c;下面等式成立的是 &#xff08;A&#xff09; &#xff08;B&#xff09; &#xff08;C&#xff09; &#xff08;D&#xff09;当且仅当 2&#xff0e;设是映射&#xff0c;&#xff0c;&#xff0c;则下面结论…

php符号教程,PHP教程:网站开发编程中的特殊符号处理_php

1 php中单引号与双引号的区别在PHP中&#xff0c;通常一个字符串被定义在一对引号中&#xff0c;如&#xff1a;I am a string in single quoteshttp://www.gaodaima.com/48558.htmlPHP教程:网站开发编程中的特殊符号处理_php"I am a string in double quotes"PHP语法…

java 鲜为人知的知识点_鲜为人知的Java 8功能:广义目标类型推断

java 鲜为人知的知识点遍历Java 8的功能列表 &#xff0c; 广义目标类型推断使我震惊&#xff0c;因为它是一个特别有趣&#xff0c;鲜为人知的瑰宝。 看起来Java语言设计人员将减轻过去使用泛型&#xff08;Java 5-7&#xff09;时遇到的某些痛苦。 让我们看看他们的例子&…

【渝粤题库】陕西师范大学200701 数字逻辑

《数字逻辑》作业 一、单项选择题 1&#xff0e; 八进制数的十六进制数是 。 A. B. C. D. 2&#xff0e; 用0&#xff0c;1两个符号对100个信息进行编码&#xff0c;则至少需要 。 A. 8位 B. 7位 C. 9位 D. 6位 3&#xff0e;逻辑函数 A. B. C. D. 4&#xff0e;逻辑函数的最小…

【渝粤题库】陕西师范大学201301 《经济法学》作业(高起本、专升本)

《经济法学》作业 一、名词解释 经济法律关系主体 消费者 经济职责 行政垄断 产品责任 经济法的地位 产品质量责任、 经济法律关系主体 经济职责 行政垄断 经济法律关系的客体 经营者 政府指导价 公平交易权 瑕疵 经济法 经济法律关系 消费者权利 不正当竞争 经济法责任 二、…