小编Pet*_*ter的帖子

Java:延迟排队的队列

大家好,

我有一个系统(源)需要在某些对象发生变化时异步通知另一个系统(目标).扭曲是源系统可能在短时间内多次突变单个对象(更新非常"突发"),在这种情况下,理想的情况是仅通知目标系统一次,并且最终状态为宾语.

我的想法是在ThreadPoolExecutor前面使用某种延时的重复数据删除队列.这个队列会:

  1. 将项目保留在队列中的时间最短(理想情况下配置为仅比典型突发突发的持续时间长的smidgin)

  2. 如果重复(由对象的标识符定义)入队,则替换现有对象.但是,该项目应该保留在队列中的原始位置(以避免任何一个项目永久地碰到队列的后面 - 在某些时候我们需要发送通知,即使另一个项目将暂时出现).

我在java.util中没有看到任何完全相同的东西,而我在这方面的google-fu似乎特别弱.

有没有人以前实现过这个,知道一个行为方式的BlockingQueue实现,或者有关于如何实现一个的提示?

提前致谢!

彼得

PS.我知道ESB会做这种事情,但在这种情况下,这是一种过于重要的方法 - 理想情况下,我根本不想在源系统中添加任何新的库依赖项.

java queue concurrency timedelay deduplication

6
推荐指数
1
解决办法
2341
查看次数

这是一个有效的JSON响应吗?

G'day大师,

我正在调用一个企业应用程序的REST API,它将保持无名,并返回JSON,如下所示:

throw 'allowIllegalResourceCall is false.';
{
  "data": ... loads of valid JSON stuff here ...
}
Run Code Online (Sandbox Code Playgroud)

这实际上是有效的JSON吗?如果(我怀疑)它不是,那么这些恶作剧是否有任何令人信服的理由?

我从应用程序供应商处收到的响应是,这是出于安全目的而做的,但我很难理解这是如何提高安全性的,如果有的话.

提前致谢!

彼得

security rest json

5
推荐指数
1
解决办法
2094
查看次数

标签 统计

concurrency ×1

deduplication ×1

java ×1

json ×1

queue ×1

rest ×1

security ×1

timedelay ×1