-
Notifications
You must be signed in to change notification settings - Fork 32
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
The Ocsimiragen battle plan. #54
Comments
|
I agree that it will be difficult to have 100% compatibility with pcre. We experienced this already once when syntax of back references changed However, I agree we must switch to RE. Le Tue Dec 16 2014 at 21:51:49, Rudi Grinberg notifications@github.com a
|
To get Eliom working on Mirage,
And about the cohttp branch,
|
On 18/12/2014 10:47, Vincent Balat wrote:
Irmin. Vincent |
About |
On 18/12/2014 15:22, Sebastien Mondet wrote:
+1 ! dbm and sqlite should be replaced by some OCaml-only key value Vincent |
@balat Thanks. I will add these points. @smondet I disagree that it should be the same database as the one used in the eliom website. The session store needs to be a (fast) k/v store. SQL databases don't usually do a very good job at that (and that's not their role either). Persistence is useful in this case (do not loose session after a reboot of the server). Irmin could work, but I think it's overkill for that. We don't need history and fancy merging feature as the one provided by Irmin. The ability to do concurrent access is also desirable. |
I agree session storage is important, I just say it should be optional :) |
I'm not sure it can be optional, considering how it's used right now. @balat ? |
It's difficult to make it optional. I think the only way would be to create a fake ocsipersist module. But I'm quite sceptical about including this in the official release. @smondet do you never use persistent references or sessions ? |
I would say that session storage is essential. You don't want to force your users to relogin just because you restarted your server... Anyway, can anyone recommend a pure OCaml persistent kv-store? Googling returns some results (like Bitcask), but I'm not sure how mature these projects are. |
Not every website has “users” :) Also, Eliom can be used to build local GUIs that run in headless browsers. Also, we should be able to keep session info in a "non-local" database. For example if you have 20 webservers serving the same application (like mirage unikernels with no R/W filesystem at all). |
I agree with the last point, but that should be possible with a new ocsipersist interface. |
I moved ocsipersist out of ocsigenserver. Let's move the discussion specific to ocsipersist to ocsigen/ocsipersist#2. |
I have rebased the cohttp branch (new branch "cohttp"). |
Partially. The work on the cohttp branch was stalled, partially because I'm not working on it anymore, partially because the it is actually quite difficult ... We haven't given up on the whole thing, though. :) |
@Drup, sorry; I've deleted my comment because I found yours at mirage/mirage#569 (comment) :-) Didn't expect you to answer so quickly. Anyway, thanks for letting me know. |
Several people have expressed desire to help on this one, and web server internals are not really my forte, so every help is appreciated!
As I see it, here is what remains to do. I will break each task by subtasks.
awake
parameter in Extensions homogenization #43.I think that's all.
Some interfaces in the cohttp were merged as part of other PRs and the smaller the final patchset, the easier it will be to review and spot issues. I will try to work on merging the non-cohttp stuff.
cc @avsm @dinosaure @rgrinberg @vbmithr @balat @vouillon
The text was updated successfully, but these errors were encountered: