问题标签 [lamina-clojure]

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 投票
2 回答
430 浏览

clojure - Lamina 撤消虹吸管 - Clojure

我正在使用Lamina来实现基本的 pubsub 模式。

当客户端订阅一个主题时,我channel为它创建一个新主题(如果它不存在),然后siphon将它添加到客户端的channel. 但是,我不知道如何扭转这个让客户退订。我一直在搜索文档和谷歌搜索,但找不到任何东西。

我如何撤消所做siphon的操作?

0 投票
1 回答
548 浏览

node.js - 使用 Aleph/Lamina 异步访问 MongoDB

我一直在阅读有关 Clojure 的文章,我正在考虑将它作为 Node.js 的替代品(我已将其用于另一个项目)。最有前途的库似乎是 Aleph/Lamina,不幸的是,它没有 Node.js 那么多的示例。我的问题是:

  1. 如何使用一系列异步操作处理请求,例如从 MongoDB 读取文档、进行一些计算、保存新文档并在响应中发送?我无法从 Lamina wiki 页面中的示例中编写它。这听起来像是一个很常见的用例,我很惊讶没有找到任何显示它的代码。如果您能给我看一些示例代码,那就太好了。

  2. 这种设置是否足以用于重负载服务器(例如每秒数万个请求)?我无法为每个新请求创建一个线程,所以我需要类似于 Node 方法的东西。

  3. 有没有中型或大型公司使用这些的例子?

  4. 有没有更好的 Clojure 替代 Node(除了 Aleph/Lamina)?也许 Clojurescript 以 Node 为目标?我的客户端不是用 Javascript 编写的,因此在客户端和服务器中使用相同的语言对我来说并不是一个优势。

谢谢!

0 投票
3 回答
1896 浏览

web-services - Clojure 中 Web 服务的异步作业队列

目前,我正在尝试使用 RESTful API 构建一个 Web 服务,以处理一些长时间运行的任务(作业)。

这个想法是用户通过执行 POST 提交作业,该 POST 返回一些用于检查作业状态的 URL,其中还包含结果的 url。一旦作业完成(即某些值被写入数据库),结果 URL 将返回适当的信息(而不是没有结果)并且作业 url 将指示完成状态。

不幸的是,计算非常密集,因此一次只能运行一个,因此需要对作业进行排队。

在伪中需要这样的东西

我研究了允许异步处理的Lamina,但它似乎不适合我的需要。

我的问题是如何使作业队列出队并在前一个任务完成后执行其任务,而不在队列为空时终止,即永久处理传入的作业。

0 投票
1 回答
216 浏览

clojure - Lamina 批处理队列

我正在尝试编写一个接受请求的 Web 服务,将它们放入队列中,然后分 2 批处理它们。响应可以立即发送,我正在尝试按如下方式使用 Lamina(尽管不确定这是正确的选择)...

但这不起作用...... :(我已经阅读了所有的 Lamina 文档,但不知道如何使用这些渠道。任何人都可以确认 Lamina 是否支持这种行为并就可能的解决方案提供建议?

0 投票
3 回答
798 浏览

events - 拉米纳 vs 风暴

我正在设计一个原型实时监视器,用于处理相当大量(>30G/天)的流式数字数据。我想用 Clojure 写这个,因为这种语言似乎很适合这种“观察者 + 状态机”系统,这可能最终会成为。

我为框架找到的两个主要候选者是 Lamina 和 Storm。还有 Riemann 和 Pulse,但前者似乎更像是一个完整的解决方案而不是一个框架,我宁愿不承诺最终设计;Pulse 的 repo 看起来有点无人维护?

我想知道的是;这两个项目针对什么样的数据和工作流程进行了优化?Storm 似乎更成熟,但 Lamina 似乎更可组合和“Clojureic”(我的背景是 Python,所以我倾向于高度评价它)。

我从网上阅读中发现:

  • Storm 似乎专注于大数据(流),核心是带有 Clojure DSL 的纯 Java。它似乎为许多现有数据源预先构建了处理程序。

  • Lamina 更像是一个轻量级的、可重用的组件,它执行 Clojure 对抽象进行编码的事情,这意味着它可以被重用为其他事件系统的基础。数据源需要在代码中处理。

  • 两者都有一组有用的聚合/拆分/计算库函数开箱即用。Lamina 的 graphviz 集成是一个不错的选择。

0 投票
1 回答
218 浏览

clojure - 如何将 lamina / aleph 安装到 Clojure?

目前,我在 Java 1.6.0_45 上使用 Leiningen 2.1.3

Clojure 1.5.1 连接 LightTable IDE 0.4.11

我想安装lamina,但是看着 Installation-

[叶片“0.5.0-rc3”]

对我来说没有意义,因为我还很新。

请建议如何安装,以及图书馆管理系统的一些好资源。

谢谢!

0 投票
3 回答
3832 浏览

clojure - Clojure 使用 Lamina 的函数式反应式编程 (FRP):简单的时钟代码?

我正在使用Lamina来实现函数式反应式编程 (FRP)。

作为初学者,我尝试编写一个非常简单的时钟,以了解库的基础知识。

根据 Lamina 0.5.0-rc4 API 文档,有 lamina.time API:http: //ideolalia.com/lamina/lamina.time.html#var-now

我想实现一个非常简单的时钟,其中:

  • 每秒的间隔作为 Observable 时间 Streaming Collection/List/Seq (我还不太明白其中的区别)(编辑:现在我知道它在 Lamina上称为Channels )

  • 现在作为 Observable Streaming 数据

  • Println Now on every second (subscribe or for-each Observable time Collection)

欢迎任何反馈。谢谢。

编辑:我退出了。

经过一番研究,我得出结论,编写 FRP 代码的最佳方式是带有 RxJs 的 ClojureScript(来自 MS 的 ReactiveExtention)。

在我的相关问题中查看 ClojureScript + RxJs + node.js 的示例代码: ClojureScript on node.js, code

0 投票
2 回答
764 浏览

clojure - Clojure core.async 和 Lamina

core.async 是 Lamina 的替代品还是打算成为 Lamina 的替代品?

如果不是,是否存在明显的情况,其中一种优于另一种?

0 投票
0 回答
65 浏览

php - 我试图在视图中访问 null 类型的数组,但找不到错误的来源

我必须在数据库中注册一个用户,当我点击注册按钮时,会出现一个错误:

尝试访问 null 类型值的数组偏移量(查看:C:\laragon\www\digital-valley-psico\resources\views\guest\pages\register-student.blade.php)

当我查看浏览器的网络选项卡时,GET 请求失败

我正在使用 Laravel 5.4 和 PHP 7.4

错误

路线:

控制器 :

会话.php