Java DNS缓存策略
DNS(Domain Name System,域名系统)服务器管理域名和IP的对应关系。
一次域名查询是非常耗时的操作,可能经过多台DNS服务器才能查找到指定的域名。
Java 内置提供了DNS缓存服务,重用已有的查询结果。默认将永久保留访问过的域名。
通过调用“Security.setProperty”设置缓存策略相关的配置属性。
配置属性 | 默认值 | 说明 |
networkaddress.cache.ttl | -1 | 域名查找成功时,缓存时间。为-1时,缓存永不过期。单位:秒 |
networkaddress.cache.negative.ttl | 10 | 域名查找失败时,缓存时间。 |
以上两个属性不能在命令行使用“-Dk=v”的方式设置。因此,ES中通过添加前缀“es.”的方式设置。
private static void overrideDnsCachePolicyProperties() { for (final String property : new String[] {"networkaddress.cache.ttl", "networkaddress.cache.negative.ttl" }) { final String overrideProperty = "es." + property; final String overrideValue = System.getProperty(overrideProperty); if (overrideValue != null) { try { // round-trip the property to an integer and back to a string to ensure that it parses properly Security.setProperty(property, Integer.toString(Integer.valueOf(overrideValue))); } catch (final NumberFormatException e) { throw new IllegalArgumentException( "failed to parse [" + overrideProperty + "] with value [" + overrideValue + "]", e); } } } }
提问1:为什么不通过配置文件中设置?
不一致问题,即配置文件在程序运行过程中可能被修改,但是程序中使用的还是原来的值。
Java SecurityManager
安全管理器用来检查操作是否有权执行。
一个Java常驻进程,如果限制IO读写、执行外部命令。被攻破时,将产生很大的安全隐患。
相关推荐
Android支持OpenGL ES,这是一种专为嵌入式系统设计的图形库,游戏源码中可能包含了OpenGL ES的调用来创建3D或2D图形。 4. **物理引擎**:为了模拟真实的物理效果,如碰撞检测和重力,游戏可能使用了Box2D或其他...
这份名为“安卓Android源码——四款小游戏源码分析.zip”的压缩包显然包含了四个不同的小游戏的源代码,为学习者提供了宝贵的实践经验。下面,我们将深入探讨这些游戏可能涵盖的关键知识点。 首先,基础的Android...
《安卓Android源码分析——以CatchThePigeon项目为例》 在移动开发领域,安卓Android作为主流操作系统,其源码对于开发者来说是探索、学习和优化应用的关键资源。本篇将深入剖析一个名为"CatchThePigeon"的安卓项目...
本压缩包"安卓Android源码——游戏源码.zip"包含了游戏的源代码,是学习Android游戏开发的重要资料。 首先,Android游戏源码通常由多个组件构成,包括Activity、Service、BroadcastReceiver、ContentProvider等核心...
首先,源码中必定包含了游戏的主程序结构,这通常是一个`MainActivity`类,它是游戏的入口点。在`MainActivity`中,会设置游戏界面、初始化游戏状态、处理用户输入以及管理游戏生命周期。开发者可以通过查看这个类来...
总之,这份“安卓Android源码——安卓Android电子麦克风”压缩包提供了一个研究Android系统如何处理麦克风输入的入口。通过对源码的分析和学习,开发者可以更好地理解Android的音频处理机制,提升应用在音频相关功能...
通过对“MagicTower”项目的源码分析,我们可以学习到安卓开发的核心概念和技术,这对于提升个人技能、解决实际问题以及创新开发有着极大的帮助。在实践中不断探索和理解源码,将使我们成为更优秀的安卓开发者。
《安卓Android源码——Replicaisland》 Replicaisland是Android平台上的一款经典小游戏,它的源码公开,为开发者提供了深入理解Android游戏开发的宝贵资源。通过分析这个项目,我们可以学习到Android应用和游戏的...
《iOS应用源码解析——ParticleDemo深度探索》 在iOS应用开发中,源码学习是提升技术能力的重要途径。今天我们将深入探讨一个名为"ParticleDemo"的iOS应用源码,通过对这个项目的剖析,来理解iOS应用的核心机制以及...
【Android游戏源码——忍者快跑】是一个用于学习和研究Android游戏开发的开源项目,主要涉及的技术点包括Android应用程序架构、游戏逻辑实现、图形渲染、用户交互以及资源管理等。下面将对这些核心知识点进行详细...
这篇文档将深入解析《Android 仿ES界面文件浏览器源码》这一项目,它是一个用于毕业设计的学习资源。这个源码示例旨在帮助学生和开发者理解如何在Android平台上创建一个类似于知名文件管理器ES File Explorer的界面...
《安卓Andriod源码深度解析——以Gallery3D为例》 在Android系统中,Gallery3D是一款经典的图片浏览应用,其源码是开发者深入理解Android系统和图像处理的重要参考资料。通过对Grallery3D源码的分析,我们可以深入...
- `fabrantes-rockonnggl-b8c8297`看起来像是项目的Git仓库分支名称,可能包含具体的源码文件,包括Activity(应用入口)、Service(后台服务)、Fragment(界面模块)、Renderer(渲染类)等,以及相关的XML布局...
【描述】虽然描述简单,但我们可以推测,"IOS应用源码——nskboy-glpaint-c870d5b.zip"中的"glpaint"可能是一个类似于苹果官方的"Paintbrush"应用,允许用户在屏幕上进行绘画操作,利用OpenGL ES进行图形渲染。...
【Android源码解析——捕鱼达人应用开发】 在Android平台,开发者可以使用Java或Kotlin语言进行应用程序的开发。本主题将深入探讨“捕鱼达人”这一流行游戏的源代码,为那些对Android游戏开发感兴趣的程序员提供...
在本压缩包“Android源码——指南针程序.zip”中,包含的是一个基于Android平台的指南针应用程序的源代码。这个程序旨在模拟真实的指南针功能,帮助用户确定方向。通过分析其内容,我们可以深入理解Android应用程序...
"安卓Android源码——Mi_Compass.zip" 提供的可能是小米(Mi)公司开发的指南针应用的源代码。这个压缩包可能包含了一系列的Java、XML和其他相关文件,用于构建一个能够显示方向、定位和提供地理信息的Mi Compass...
这个“IOS应用源码——通过OpenGL加载图像 DrawPixels.zip”是针对iOS平台的一个示例项目,它展示了如何使用OpenGL ES(嵌入式系统的OpenGL版本)来加载和显示图像。下面我们将深入探讨这个项目中涉及的关键知识点。...
通过分析这个源码,开发者可以了解到如何在Android中实现游戏循环,如何处理用户输入,以及如何有效地更新和渲染游戏画面。此外,源码可能还包含了一些优化技巧,如使用线程分离来保证游戏的流畅性,以及利用缓存和...
本资源"安卓Android源码——(游戏视图与系统组件)"聚焦于游戏视图和系统组件,旨在帮助开发者深入理解这两方面的核心概念。 游戏视图在安卓中是通过`SurfaceView`或`TextureView`来实现的,它们提供了高性能的图形...