问题标签 [real-time]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
2979 浏览

java - rrdtool 的替代品?

我正在寻找rrdtool的替代品

它需要快速、可靠、能够处理大量数据并具有 Java 接口。我正在调查的一种可能性是KDB+还有其他想法吗?

0 投票
2 回答
1888 浏览

java - 用于检查实时 Java 应用程序的实时代码覆盖率查看器工具?

我一直在寻找旨在检查实时 Java 应用程序的代码覆盖率查看器,主要是在 Tomcat 等应用程序容器内运行的 webapps。当然,有很多不错的工具可以获取单元测试覆盖率的自动报告,但我的目标更像是实时了解不熟悉的 Java 应用程序在特定用户交互中的作用。

Eclipse Java 调试器(使用 JPDA 进行远程调试)非常有用,但前提是您已经熟悉应用程序的体系结构。理论上,我可以使用一些覆盖工具并将其设置为每两秒自动刷新静态 HTML 覆盖报告,但这远非最佳。

对于 Adob​​e Flex,FlexCover 正是我想要的,它提供了一个几乎实时可视化覆盖范围的覆盖查看器工具,而且设置起来相对简单,至少对于了解这些内容的人来说是这样。那么有没有类似的易于设置的 GUI 工具,免费或非免费的,适用于 Java 吗?

0 投票
9 回答
2716 浏览

java - Java 实时性能

我正在处理需要对图像进行非常高级操作的 Java 项目。事实上,我正在使用 OpenCV 进行大部分操作,并且我正在使用 JNI 来包装我需要的 OpenCV 函数。我对 OpenCV 提供的性能非常满意,编写 OpenCV 代码的人应该对代码给予极大的赞誉。与我对 Java 开发人员编写的代码的体验形成鲜明对比。

我开始对我的编程语言的选择持乐观态度,我的项目的第一次工作迭代运行良好,但它的性能远不接近实时(每 2 秒获得大约 1 帧。)我已经对我的代码和它帮助很大。我已经能够将帧速率提高到大约每秒 10-20 帧,这很棒,但我发现要进行任何进一步的优化,我必须重写 Java 代码来做同样的事情,但 10 -20 倍更高效。

我对 Java 的开发人员很少关注性能感到震惊,尤其是在为与媒体相关的类编写类时。我已经下载了 OpenJDK,并且正在探索我正在使用的功能。例如,在 Raster 类下有一个名为 getPixels(...) 的函数,它获取图像的像素。我期待这个函数在源代码中是一个高度优化的函数,通过多次调用 System.arrayCopy 来进一步优化性能。相反,我发现的是非常“优雅”的代码,它们调用 5-6 个不同的类和 10-20 个不同的方法,只是为了完成我可以在一行中做的事情:

上面的代码将图像转换为灰度并获取浮点像素数据,大约需要 1-10 毫秒。如果我想对 Java 内置函数做同样的事情,转换为灰度本身需要 200-300 毫秒,然后抓取浮动像素大约需要 50-100 毫秒。这对于实时性能来说是不可接受的。请注意,为了加快速度,我大量使用了 Java 开发人员回避的位运算符。

我知道他们需要处理一般情况,但即便如此,他们至少不能提供优化选项,或者至少警告这段代码的执行速度有多慢。

我的问题是,在开发的这个后期(我已经进行了第一次迭代,而不是我正在研究实时执行更多的第二次)我是否应该硬着头皮切换到我可以很好的 C/C++更多地调整事情,或者我应该坚持使用 Java 并希望事情变得更加实时友好,这样我就不必重写已经实现的 Java 代码来获得加速。

我真的开始厌恶 Java 的“优雅”和缓慢。那里的课程数量似乎有点过头了。

0 投票
1 回答
292 浏览

real-time - 简单的网络聊天,多条战线

我正在寻找解决此问题的方法:

我需要为具有多个前端的网站创建简单的几乎类似实时的网络聊天。网络聊天不需要任何图标,只需昵称时间和消息。

网站在.net 上运行。

想要聊天的用户必须登录系统。对其已经处理的用户进行身份验证。这不是问题,其他人只能观看对话。

我在想,因为它在多个方面运行,所以应该使用 DB 或每秒向该 WS 发出请求的 WS 等等。从这里我不知道我迷路了......我在想ajax应该将收到的lastmassage id回发到Web服务,并且Web服务会向用户发送自上次收到消息以来的所有最新帖子。这应该每秒完成一次,它看起来像它的实时聊天,这将是一个服务器负载的地狱。

你们有什么感想?和建议有什么想法吗?和工作解决方案?

谢谢你

0 投票
3 回答
4033 浏览

c# - C# Charting - 合理的大数据集和实时性

我正在寻找一个 C# WinForms 图表组件,无论是商业的还是开源的,它可以处理相对较大的数据集,并且在图表呈现和更新方面具有合理的可扩展性。要显示的数据集数量约为 30。每个数据集每秒更新 15 到 20 次。为此将需要折线图组件。

0 投票
3 回答
570 浏览

architecture - 游戏开发中的实时进程通信

如果您制作的游戏架构将系统组件(IE、渲染、物理、逻辑、输入、脚本等)拆分为不同的线程,您如何处理需要实时通信的情况?

例如,如果一个脚本想要在屏幕上绘制一个盒子,理想情况下它会在渲染组件发出“FrameDrawn”事件时执行此操作,以便在每帧绘制结束时将盒子绘制在屏幕顶部. 如果脚本组件和渲染组件位于彼此不同的线程上,这怎么可能?

0 投票
11 回答
1487 浏览

c# - 将实时数据存储到 1000 个文件中

我有一个程序可以接收 1000 个主题的实时数据。它平均每秒接收 5000 条消息。每条消息由两个字符串、一个主题和一个消息值组成。我想将这些字符串与指示消息到达时间的时间戳一起保存。

我在“Core 2”硬件上使用 32 位 Windows XP 并使用 C# 进行编程。

我想将这些数据保存到 1000 个文件中——每个主题一个。我知道很多人会想告诉我将数据保存到数据库中,但我不想走那条路。

我考虑了几种方法:

1) 打开 1000 个文件,并在数据到达时写入每个文件。我对此有两个担忧。不知道能不能同时打开1000个文件,也不知道这对磁盘碎片有什么影响。

2) 写入一个文件,然后——不知何故——稍后处理它以产生 1000 个文件。

3) 将其全部保存在 RAM 中直到一天结束,然后一次写入一个文件。我认为如果我有足够的内存,这会很好用,尽管我可能需要移动到 64 位才能超过 2 GB 的限制。

你会如何处理这个问题?

0 投票
4 回答
3934 浏览

java - Java 是否有现成的时钟同步解决方案?

我们有一个大型的高性能软件系统,它由多个交互的 Java 进程(不是 EJB)组成。每个进程可以在同一台机器上,也可以在不同的机器上。

某些事件在一个进程中生成,然后以不同的方式传播到其他进程以进行进一步处理等等。

出于基准测试的目的,我们需要创建每个事件何时通过“检查点”的日志,最终将这些日志组合起来以获得每个事件如何通过系统传播以及延迟多少的时间线(当然,进程切换和 IPC 添加延迟,没关系)。

当然,问题在于时钟同步。所以这是我的问题:

1)如果所有进程都在同一台机器上,是否保证 currentTimeMilis 在调用时是准确的?ITP的错误有一定的界限吗?

2)如果某些进程可能在不同的机器上,是否有用于时钟同步的现成解决方案(也是免费或开源的)?我最好寻找一种可以绕过操作系统(Windows 或 Linux)并直接从 Java 工作的解决方案。我还理想地寻找可以以微秒精度运行的东西。我考虑过 NTP,但我不确定它是否可以通过 Java 而不是通过操作系统获得,而且我不确定它的复杂性。

3)有没有办法确定在特定配置(或我最终使用的任何解决方案)中使用 NTP 的误差范围,以便我可以在计算延迟时给出误差范围?

谢谢!

0 投票
7 回答
1065 浏览

.net - 如何使用 .NET 进行全双工编程?

在看过 Google Wave 演示之后,我想将“实时”功能整合到我的 Web 应用程序中,一个用户将能够看到另一个用户正在输入的文本......

除了基于框架如何处理线程的.NET中内置的软实时功能......

还有什么我需要的吗?是否有任何实时 Web 应用程序的模式或架构参考?我应该读什么?

谢谢!

0 投票
1 回答
456 浏览

.net - SQL Compact 到 SQL Express 实时合并/同步

我有一个应用程序当前使用 SQL Compact Edition 作为其用于捕获实时数据的数据库。我的一些用户希望编写自己的应用程序来查询和报告这些数据,同时我的应用程序正在捕获这些数据。但是,SQL Compact 版本在我的应用程序的进程内运行,因此不允许外部进程连接到它。

我正在考虑使用一种方法将这些数据实时复制到用户提供的外部数据库服务(SQL Express 或标准 SQL Server),然后他们可以在我的应用程序继续写入 SQL 时使用这些服务来查询/报告袖珍的。

关于最佳方法的任何建议?我已经阅读了一些关于 Sync Framework 的内容,但它似乎更针对批量同步,而我需要(相对)接近实时同步。

我很好奇其他人是否遇到过类似的情况以及他们是如何解决这个问题的。任何建议将不胜感激。