This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2017-04-12
Channels
- # bangalore-clj (4)
- # beginners (77)
- # boot (71)
- # cider (10)
- # clara (1)
- # cljs-dev (52)
- # cljsjs (28)
- # cljsrn (1)
- # clojure (390)
- # clojure-dev (5)
- # clojure-india (1)
- # clojure-italy (5)
- # clojure-nl (24)
- # clojure-poland (4)
- # clojure-russia (123)
- # clojure-spec (71)
- # clojure-taiwan (2)
- # clojure-uk (8)
- # clojurescript (236)
- # core-matrix (6)
- # cursive (19)
- # datomic (16)
- # defnpodcast (2)
- # editors (1)
- # emacs (36)
- # garden (2)
- # hoplon (5)
- # jobs (1)
- # jobs-discuss (10)
- # juxt (47)
- # luminus (4)
- # lumo (6)
- # off-topic (207)
- # om (1)
- # onyx (20)
- # pedestal (40)
- # perun (2)
- # re-frame (8)
- # reagent (48)
- # ring (2)
- # ring-swagger (2)
- # specter (13)
- # unrepl (89)
- # vim (6)
Have you guys ever surveyed kafka-fast client? I know these days you just use the java API directly but if you have any experience report with kafka-fast it could be nice. https://github.com/gerritjvv/kafka-fast
Hello. I'm trying to understand onyx clustring. Where does peer's actualy run? It's on my application jvm? On zookeeper jvm?
If I want to send all peers to a "slave machine" and keep my "main" app without peers, who to?
@souenzzo I walk through the coordination architecture in depth here: https://www.youtube.com/watch?v=KVByn_kp2fQ There’s also the architecture section of the user guide: http://www.onyxplatform.org/docs/user-guide/latest/#low-level-design
Peers are processes that run inside their own JVM.
You don’t “send” peers to anywhere. You send jobs to ZooKeeper, and peers fetch jobs from ZK in turn.
So I can create a "peer-app" with just "onyx" dep. In this I will (peer/start-peer 100 peer-config env-config)
And in my "main-app", with tons of deps, I will (onyx.api/submit-job peer-config job)
@souenzzo You create a Leiningen application with Onyx as a dependency, as well as anything else your app needs. Write a main that starts a number of virtual peers. That will start N pools of processing threads per JVM. Stand up as many instances of that across different machines as you’d like. They’ll all know how to talk to each other through ZooKeeper.
Use onyx.api/submit-job
to submit work to the cluster.
There is no jar-level transferring in Onyx.
Right I will main-app
and main-peer
. But now: I have a job that "never finish" (datomic). When I make a deploy, I want to "update" this job, so I will manually send a "kill" to this job before stop aplication (in deploy stop), right??
@souenzzo Your application and Onyx are independent. They’re running on different processes, presumably on different machines. onyx.api/kill-job
will bring a job down. onyx.api/submit-job
to bring a new one back up.
@souenzzo to give you a bit of an idea, i’ve written a ‘streamer’ tool for myself, which handles these kind of tasks
so the submitting / killing of a job, and the actual running of the job, are two completely independent things
@lmergen Yep, that’s exactly how it’s meant to be used. We defer management and deployment to other tools to gain more flexibility.