草庐IT

WM_APP_MY_THREAD_UPDATE

全部标签

java - Google App Engine 和 dos.xml

我的理解是,真正减轻DDoS攻击的唯一方法是自动化将IP地址/范围列入黑名单的过程。GoogleAppEngine(GAE)允许您配置和上传dos.xml文件,并在任何给定时间指定要列入黑名单的IP地址/范围。显然,如果我的网络应用受到精心策划的DDoS攻击,攻击我的IP地址/范围将不断变化。GAE允许我多久更新一次dos.xml?更改需要多长时间才能生效?我问是因为我正在设计一个AutoBlacklister系统来检查它认为是攻击者的IP地址,并将动态更新dos.xml。如果有超过100个攻击者(GAE将您限制为100个地址/范围),那么只有前100个“最严重的攻击者”会出现在列表中

java - Objectify List<Ref<T>> 未由 Google App Engine 端点序列化

您好,有两个相关的实体:客户和汽车。每个客户可以拥有多辆汽车这是实体的汇总View:publicclassCustomer{//InnerclassesforpartialloadspublicstaticclassNoCars{}@IdprotectedStringid;privateStringfullName;@Load(unless=NoCars.class)privateList>cars;}publicclassCar{@IdprivateLongid;privateStringmakeAndModel;privateStringplateNumber;}这是一种从数据存储

java - 'Thread termination due to failure'指的是什么?

ExecutorService的javadoc有时会提到线程“由于失败”而终止的情况。但是,目前尚不清楚这指的是哪种故障。例如,singlethreadexecutor文档说ifthissinglethreadterminatesduetoafailureduringexecutionpriortoshutdown,anewonewilltakeitsplaceifneededtoexecutesubsequenttasks我本来以为这种情况可能发生在Exception的情况下,也可能是RuntimeException,但似乎并不是这样。运行以下代码似乎给出了相同的线程名称和线程ID。

java - 低负载下 App Engine 一致的延迟峰值

我注意到我的应用在AppEngine上运行时出现周期性但一致的延迟峰值。起初我以为网络可能很慢,但应用程序统计数据证实情况并非如此。我已经能够使用旧版本和新版本的SDK重现延迟峰值,目前我正在使用以下版本:应用引擎SDK:1.9.42Google云端点:1.9.42客观化:5.1.13Appstats(调试网络延迟)所以应用程序的使用率非常低,在过去30天里,我通常每秒请求0.04个以下:大部分工作也是通过一个实例完成的:大多数操作的延迟都在一秒以下,但数量惊人的请求会花费10到30倍的时间。所以我认为这一定只是网络延迟,但运行速度较慢的每个appstat都证明了这一点。数据存储和网络

Java Thread.sleep 最短时间

这个问题在这里已经有了答案:HowaccurateisThread.sleep?(3个答案)关闭5年前。TimeUnit.sleep(longtimeout)文档这样描述它的论点:timeout-theminimumtimetosleep.但是,我发现—至少在带有Java8update141的Windows764位上—线程hibernate的时间通常少于:publicstaticvoidmain(String[]args)throwsInterruptedException{finallongfrom=TimeUnit.MILLISECONDS.toNanos(100);finallo

java - 单例对象工厂 : is this code thread-safe?

我有一个用于许多单例实现的通用接口(interface)。接口(interface)定义了可以抛出检查异常的初始化方法。我需要一个工厂来按需返回缓存的单例实现,想知道以下方法是否线程安全?UPDATE1:请不要建议任何第三部分库,因为由于可能的许可问题,这将需要获得法律许可:-)更新2:此代码可能会在EJB环境中使用,因此最好不要产生额外的线程或使用类似的东西。interfaceSingleton{voidinit()throwsSingletonException;}publicclassSingletonFactory{privatestaticConcurrentMap>CACH

java - Google App Engine 奇怪的延迟

我改进了很多我的代码,现在所有的API都运行得非常快,我还添加了memcache并且我有一个很好的命中率..但有时我会遇到毫无意义的延误。我在此处附上最重要的appstats屏幕截图:运行90毫秒的RPC总共需要20多秒;这怎么可能?我应该在哪里寻找这些延迟的根源?我真的被卡住了,因为我不明白RPC之间发生了什么,我不知道我还能做些什么来获得更多信息。只是想一想:每个HTTP调用都由同一个GAE实例处理,对吗?因为我的实例花了很多时间来预热..但我不认为这是相关的顺便说一句:我正在用Java编写代码。 最佳答案 通常,appstat

java - 与缓存相关的 HTTP header 在 App Engine 上的 Servlet 响应中被覆盖

我在AppEngine上有一个服务于图像的servlet。servlet正确设置HTTPheader值以指示应缓存图像。但是AppEngine覆盖了这些header,导致图像未被缓存。请注意,相同的代码以前可以工作,但现在有一段时间不工作了。App引擎文档指出,如果Cache-Control、Expires和Varyheader由servlet设置,它们将保持不变:https://developers.google.com/appengine/docs/java/runtime#Responses这是我的示例代码:response.setContentType("image/jpeg"

java - 在 Windows 上监听 "open file with my java application"事件

标题很乱,不知道怎么用几句话来解释:我有一个读取*.example文件的java应用程序。由于install4j,我还添加了一个文件关联,因此当用户双击任何扩展名为*.example的文件时,我的应用程序就会启动install4j似乎在args[]中发送文件路径,因此打开该文件并在我的应用程序中显示它应该很容易。但是如果应用已经在运行会怎样?我只能允许应用程序的一个实例,那么我怎么知道用户正在打开一个文件?我找到了这个:http://resources.ej-technologies.com/install4j/help/api/com/install4j/api/launcher/S

java - CloudBees 和 App Cells、实例和池

我试图理解以下两者之间的区别:一个app-cell一个应用实例;和一个应用程序池例如,我如何知道何时适合为我的应用添加更多应用单元?或者添加更多实例?或者将它们的某个子集配置到一个池中?提前致谢! 最佳答案 大多数情况下,应用程序单元是衡量内存以及IO和CPU的“公平份额”的单位。1个单元是128meg-ish-因此8个单元将是它的8倍(不仅包括内存等)。应用程序实例是在服务器上运行的JVM(因此,如果您有3个实例,如果它是Java应用程序,则为3个JVM)——但它们是具有相同“大小”的JVM的3个实例——因此一个单元实际上是尺寸的