问题标签 [middleware]

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 投票
5 回答
4114 浏览

java - 中间件 API 的最佳实践是什么?

我们正在开发 C++ 和 Java 的中间件 SDK,供游戏开发人员、动画软件开发人员、Avatar 开发人员等用作库/DLL 以增强他们的产品。

我想知道的是:开发这些类型的 API 是否有标准的“最佳实践”?

我在考虑可用性、可读性、效率等方面。

0 投票
2 回答
3876 浏览

api - 用于非基于 Web 的应用程序的 REST 类型 API,这是个好主意吗?

我们正在开发 C++ 和 Java 的中间件 SDK,供游戏开发人员、动画软件开发人员、Avatar 开发人员等用作库/DLL 以增强他们的产品。

在使用对特定函数的特定调用创建典型 API 之后,我正在考虑通过使用 REST 类型 API(GET、PUT、POST、DELETE)或 CRUD 类型(CREATE、READ、UPDATE、DELETE)接口来简化 API。

这与客户端-服务器类型 REST API 的工作方式类似,其中只有 4 个可能的 API 调用,但这些调用可以采用灵活的参数。

这似乎具有使 API 稳定的好处,因为不会添加新调用并且不会删除旧调用。因此,此 API 的使用者不必担心必须重新编译和更改他们的代码以适应我们中间件的任何更新。

开销是中间件控制器中有一个额外的重定向层来路由 API 调用,开发人员需要知道每个 REST 调用可用的参数(当然提供)。

到目前为止,我还没有看到这个系统在 Web 类型的客户端服务器应用程序之外使用,所以我的问题是:这是一个可行的想法吗?

我正在考虑它的效率以及例如游戏开发人员是否会发现它易于使用。

0 投票
5 回答
2284 浏览

python - python wsgi应用程序的调试/监控中间件

我正在搜索一个 wsgi 中间件,我可以围绕一个 wsgi 应用程序进行扭曲,它可以让我监控传入和传出的 http 请求和标头字段。

类似于 Firefox 实时标头之类的东西,但用于服务器端。

0 投票
3 回答
2471 浏览

.net - .NET企业应用平台(同JBoss转Java)

作为一名 .NET 开发人员,我想问是否存在 JBoss 替代方案以“更适合 .NET 开发”作为企业应用程序平台。

请不要提出任何建议,比如“让 JBoss 暴露 WebServices”……

0 投票
3 回答
954 浏览

sql-server - 文档/图像数据库存储库设计问题

问题:

我应该编写我的应用程序以直接访问数据库图像存储库还是编写一个中间件来处理文档请求。

背景:

我有一个自定义文档图像和工作流应用程序,目前存储大约 1500 万个文档/文档图像(90%+ 单页,4 组 tiff,其余 PDF、Word 和 Excel 文档)。图像存储库是一个商业的第 3 方应用程序,它非常昂贵并且坦率地说开销太大。我只需要一个系统来存储和检索文档图像。

我正在考虑将映像直接移动到 SQL Server 2005 数据库中。索引信息非常有限 - 基本上是 2 个索引字段。这是一个人寿保险单管理系统,因此我使用保单编号和系统范围的唯一 ID 编号对图像进行索引。还有其他索引值,但它们与图像数据分开存储和维护。这些索引值使我能够查找单个图像检索的唯一 id 值。

数据库服务器是一个双四核 windows 2003 机器,带有托管数据库文件的 SAN 驱动器。当前的图像存储库大小约为 650GB。我还没有进行任何测试来查看转换后的数据库会有多大。我并不是真的在询问数据库设计——我正在与我们的 DBA 在这方面进行合作。如果情况发生变化,我会回来的:-)

当前要替换的系统显然是一个中间件应用程序,但它是一个非常重量级的系统,分布在 3 个 windows 服务器上。如果我走这条路,那将是一个单一的服务器系统。

我主要关心的是可扩展性和性能 - 非常重视性能。我有大约 100 个用户,未来几年的使用增长可能会很慢。大多数用户主要是阅读用户——他们不经常向系统添加图像。我们有一个部门负责扫描和以其他方式将图像添加到存储库。我们还有一些其他应用程序接收文档(通过 ftp),它们会在收到文档时自动将它们插入到存储库中,或者将完整的索引信息或作为用户查看和索引的“批次”。

大多数(90%+)的文档/图像非常小,< 100K,可能< 50K,所以我相信将图像存储在数据库文件中将是最有效的,而不是获取 SQL 2008 并使用文件流。

0 投票
5 回答
1101 浏览

agile - 如何在 BizTalk 中仍然使用 DDD、TDD?

我刚开始在工作中接触 BizTalk,并希望继续使用我学到的关于 DDD、TDD 等的所有知识。这是否可能,或者我在创建管道和编排之类的东西时总是必须使用类似 Visio 的编辑器?

0 投票
3 回答
3256 浏览

python - 如何在 Appengine 的 webapp 框架中添加中间件?

我正在使用 appengine webapp 框架(链接)。是否可以添加 Django 中间件?我找不到任何例子。我目前正在尝试让 FirePython 中间件工作(链接)。

0 投票
3 回答
351 浏览

.net - 敏捷开发和 ESB

我正在努力将我们的企业技术范式转变为敏捷开发。这是一个艰难的过程,但我们快到了!:)

我们有用于数据库管理的遗留系统(以前是 Access,现在移植到 .NET 和 MS SQL),我们正在为我们的未来愿景开发一个框架。我们希望尽可能多地迁移到网络。但我们希望将当前系统与“即将推出”的系统集成。我们不会重叠任务和功能。

我的愿景是将我们用户的所有联系信息移动到不同的数据库,将这些“配置文件”链接回 MS SQL 以获取他们的历史和会计信息。我们会将所有会计系统保留在桌面应用程序上,但我们将添加更多功能,这些功能将严重依赖于 Web,尤其是 Ruby on Rails。

我想问题是:为什么是 ESB?有没有一种方法可以创建 SOA,而无需对复杂的 ESB 系统进行狂热的操作。无论如何,整个想法是亲吻。是否可以以允许桌面/Web/移动作为接口的方式创建 SOA,将功能保留在业务逻辑上(当然,某些功能必须在接口上实现,但要保持在最低限度)。ESB 甚至符合敏捷哲学吗?我阅读和研究它们的次数越多,我就越不这么认为!:/

感谢您的输入!如果您需要我澄清,请提出几个问题,我会尽力做到这一点!:)

0 投票
3 回答
4112 浏览

django - Flup 中未处理的异常

我正面临着 Flup 提出的可怕的“未处理异常”。可悲的是它是在网络服务器(lighttpd+flup)级别而不是在应用程序级别(Django)提出的。因此,不会就问题所在提出 500 封电子邮件。

我们整个团队都在努力清理代码库,以防有任何模棱两可的导入和类似的情况,只是为了消除由于模棱两可的导入而引发错误的机会。我们清理了代码中的许多内容。还是一样的例外。

坦率地说,我对 Flup 的错误处理感到非常沮丧。它什么也没告诉你。最糟糕的是,它向用户显示相同的“未处理异常”。我如何通过这个?

我检查了 lighttpd 日志。我所看到的只是“接口错误/连接已关闭”。它仅在我的应用程序在 FCGI 模式下运行时发生。所以问题在于flup实际上是如何处理我的代码(应用程序)的。我如何通过这个?

我检查了flup的替代方案,但Django明确地依赖flup(这是另一个限制,让我感到困惑)(参考:django_src/django/core/servers/fastcgi.py line:100 / 131)

我如何调试(至少)这种情况并解决问题?请帮帮我。该应用程序已关闭 3 天。

0 投票
2 回答
1366 浏览

python - WSGI 字节范围服务

我正在研究在 WSGI 服务器/应用程序中支持HTTP/1.1 字节服务:

  • 恢复部分下载
  • 多部分下载
  • 更好的流媒体

WSGI PEP 333提到 WSGI 服务器可以实现对字节服务的处理(来自RFC 2616第 14.35.2 节定义了 Accept-Range/Range/Content-Range 响应/请求/响应标头),如果宣布该功能,应用程序应该实现它:

如果客户端请求,服务器可以传输应用程序响应的字节范围,而应用程序本身不支持字节范围。但是,如果需要,应用程序应再次执行此功能。

我已经执行了一些谷歌搜索,但几乎没有关于哪些可用的 WSGI 服务器/中间件/应用程序实现字节范围的信息?有没有人在该领域有经验并且可以提示我进一步挖掘的地方?

编辑:任何人都可以发表评论,我如何增强问题以找到答案?