Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Scenario: already existing webserver #15

Open
tillda opened this issue May 28, 2014 · 4 comments
Open

Scenario: already existing webserver #15

tillda opened this issue May 28, 2014 · 4 comments

Comments

@tillda
Copy link

tillda commented May 28, 2014

I want to ask about this scenario: I have already existing webserver at localhost:3000. I start it manually from command line. I don't want to change this. Is there a way to simply create a .ka domain for that webserver and server it's requests exactly as they are from the new .ka domain? The webserver serves dynamic, generated content. To say it the other way I don't want Katon to launch the process(es) or watch filesystem.

It would be a really nice simplification if katon would allow cli command like:
katon link foofoo.ka localhost:3000
katon link barbar.ka localhost:3001
No process starting, no folders, no watching etc.

@typicode
Copy link
Owner

typicode commented Jun 2, 2014

Hi,

It's not possible for the moment to do that with Katon.
However you can achieve it using Pow proxy or something like Dnsmask.

To understand better your need, may I ask what kind of server are you using? And why don't you want katon to start it for you?

@tillda
Copy link
Author

tillda commented Jun 2, 2014

Various. Usually either Node's Express, but inside my dev stack that I don't want to change now (i start express from gulpfile), or something in Clojure, which works differently than node apps (for example I can't restart it this way because of slow JVM start).

@typicode
Copy link
Owner

typicode commented Jun 4, 2014

Ok, that's interesting.
I'm not decided yet if this feature will be implemented or not.

However, I'd like to make it easier to work with katon and other technology.

There's also another thing, katon watches the filesystem only for program started with the command node. So this means that katon link 'gulp server' or katon link other_command only starts the process and that's all. I'm not sure if it's clear in the README.

I'm not a Clojure expert, but when your code changes does Clojure reloads it or do you have to stop it using ctrl-c?

@tillda
Copy link
Author

tillda commented Jun 5, 2014

In Clojure it is totally different. You basically code against "live" virtual machine that is running in the background and by sending commands to it you change its state. There are many reasons why it works like that and they are not important for our discussion because even if it would work the "old" way it still takes about 15-20 seconds to load Clojure standard library to the JVM. So all the stuff there almost never works by restarting the process. Usually all this "management" stuff is directly in the app you are programming.

However, the bottom line is not that it is needed for Clojure, but that combining various unrelated features together is great UNTIL one (or more) of the parts doesn't fit one's scenario. By splitting the features into separately usable components it may be require more work to set it up upfront, but in the end it is more flexible and scalable with project's complexity.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants