自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

翻译 非阻塞代码似乎不是更好的选择

我没有得出一个明确的答案,尽管编写非阻塞代码似乎不是更好的选择——它不应该更快或具有更高的吞吐量,尽管传统观点认为应该如此。因此,抛开理论问题,我决定做一个基准测试。代码非常简单——它将一个46kb的文件读入内存,然后将其写入响应。这是最简单的场景,仍然是关闭web应用程序的常规用例——从数据库中读取内容,对其执行一些逻辑,然后向客户端写入一个视图(如果数据库在另一个服务器上,这是磁盘I/O对网络I/O,但我们现在忽略它)有5种截然不同的场景:使用BIO connector的Servlet,使用NI

2022-05-23 00:19:00 86

原创 机器学习是一个神秘的术语

机器学习”是一个神秘的术语。大多数开发者在日常工作中根本不需要它,我们所知道的关于它的唯一细节来自于5年前的某个大学课程(已经被遗忘)。我不是机器学习专家,但我碰巧在一家做这方面工作的公司工作,所以我开始学习基础知识。我从来没有编写过实际的机器学习任务,但有一个很好的概述。但是什么是机器学习呢?它指导计算机理解大量的数据(# big data hashtag–check)。在哪些方面?将新条目分类到现有类别中——这是垃圾邮件吗,这是关于体育或政治的新闻文章吗,这个符号是字母“a”,还是“b”,还是“

2022-05-10 19:29:22 208

原创 程序启动时验证您的配置文件路径

你还记得那次你花了一整天试图修复一个问题,却发现你输入了错误的配置设置吗?是的。而且不止一次。避免这一点并不简单,因为不仅是你,你所使用的框架也应该小心。但是让我概述一下我的建议。总是在应用程序启动时验证您的配置。这涉及三件事:首先,检查您的配置值是否正确。测试数据库连接URL、文件路径、数量和时间段。如果一个目录丢失,一个数据库不可访问,或者您已经指定了一个非数字值,而该值应该是一个数字或一段时间,您应该立即知道,而不是应用程序已经使用了一段时间。其次,确保设置了所有必需的参数。如果需要某

2022-05-05 19:44:26 159

原创 数都被保留fan访问

泛型在编译过程中被删除”是常识(好吧,类型参数和实参实际上是被删除的)。这是。但是错误的是,在<..>正如许多开发人员所假设的那样,符号被删除了。参见下面的代码: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25

2022-04-26 15:36:48 103

原创 executor任务时,这个用例并不罕见

当你想取消一个正在运行的executor任务时,这个用例并不罕见。例如,您想要停止正在进行的下载,或者您想要取消正在进行的文件复制。所以你有: 1 2 3 4 5 6 7 8 9 10 11 ExecutorService executor = Executors.newSingleThreadExecutor(); Future<?> future = executor.s

2022-04-23 19:33:03 99

原创 of检查它的类型是否合适

当你想取消一个正在运行的executor任务时,这个用例并不罕见。例如,您想要停止正在进行的下载,或者您想要取消正在进行的文件复制。所以你有: 1 2 3 4 5 6 7 8 9 10 11 ExecutorService executor = Executors.newSingleThreadExecutor(); Future<?> future = executor.s

2022-04-12 11:08:44 366

原创 once必须在多个可用性区域

使用AWS时,为了获得高可用性设置,once必须在多个可用性区域(AZ ≈数据中心)中拥有实例。如果一个AZ死亡(这是可能发生的),您的应用程序应该继续服务请求。在多个AZ中设置应用程序节点很简单(如果它们被恰当地编写成无状态的),但是对于数据库、消息队列和所有有状态的东西来说就比较复杂了。所以我们来看看如何配置RabbitMQ。第一步不仅与RabbitMQ相关,还与任何持久数据解决方案相关。首先(无论是使用CloudFormation还是手动设置),您必须:喝一杯VPC。没有VPC也许是可能的

2022-03-04 15:00:57 1670

原创 查找给定类的对象kar

您很可能需要覆盖hashCode(),equals(..)和toString()–我不会详细说明什么时候和为什么,但是你需要这样做(好的,只是提醒一下–总是一起实现hashCode和equals,如果你要在hashmap或arraylist中查找给定类的对象,你很可能需要实现这些方法)。你有很多选择去做:手动实现这些方法——这对于toString()来说还可以,但对于hashCode()和equals(..)。除非您非常确定您想要一个定制的、考虑周全的散列函数,否则您应该依赖另一种更实用的机制 使用.

2022-02-24 15:32:13 249

原创 Java 8引入级简单不是返回NULL

Java 8引入级。简单地说,不是返回NULL,然后检查NULL,而是返回Optional实例,该实例可以有值集,也可以没有值集。这样你就不会失败NullPointerException.我不会讨论Optional类型将完全消除NPEs(它不会)。相反,我将从不同的角度来讨论-API设计。除了Java的可选性之外,我还将展示番石榴的可选性和Scala的可选性Option比较它们。正如约书亚·布洛赫所建议的那样,API应该尽可能小,但不要变小。API的概念权重应该最小化,如果您想知道是否在API中包含

2022-02-23 23:29:21 291

原创 很久额没登录了啊哈啊哈

回来了,重新整理文章,然后在发布,之前那个号忘记密码找不回了= =很艰难收

2022-02-23 21:26:09 142

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除